WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

WP_query и апостроф

$line[0]="Santa's Wild Ride";
$query = new WP_Query(array('post_type'=>'it_games',
				'tax_query' => array(
					array(
						'taxonomy' => 'game_name',
						'field'    => 'name',
						'terms'    => stripslashes_deep($line[0])
					)
				)
	));
$id=0;
if($query->have_posts()) $id=$query->post->ID;
echo $id;

Если термин таксономии содержит символы: ‘, (, ) посты не находит, хотя они есть, я вижу в панели.
С остальными терминами работает.

Когда я привязываю пост к такому термину - операция проходит успешно. И в базе этот термин с апострофом появляется.

Я как-то не правильно стрипаю слешы? Или апостроф придется убрать? Есть ли способ оставить его в таксе? Так же со скобками.

0
GoodGod
7.3 года назад
  • 0
    Kama9616

    stripslashes_deep() тут ничего не дает. Скорее наоборот можно попробовать добавить слэши: addslashes($line[0]).

    GoodGod 7.3 года назад

    Вот оно че оказалось:
    https://wordpress.org/support/topic/wp_query-does-not-fetch-posts/

    Ну и stripslashes соответственно убрал.

    Kama 7.3 года назад

    Так, и что, этот фильтр помог?

    // fix tax_query bug that double escapes name terms
    add_filter('pre_term_name', function( $term ) { return stripslashes( $term ); }, 40 );

    Опасный он какой-то...

    GoodGod 7.3 года назад

    Да помог.
    Я даже не пытаюсь сейчас изучать ядро. Так что принял как есть и фиг с ним.

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация