WordPress как на ладони
WordCamp Saint Petersburg 2018 wordpress jino

Как получить записи не прикрепленные к таксономии?

У меня есть тип записей city и таксономия country. А также есть подозрение, что некоторые записи не находятся ни в одном термине этой таксономии.

Как можно быстро проверить и найти те посты, которые не содержаться в моей таксономии country?

2
Фигурант
2 месяца назад
  • 0
    Kama5192
    // Получим все записи city не прикрепленные к указанной таксономии country
    $taxonomy  = 'country';
    $post_type = 'city';
    $args = [
    	'post_type' => $post_type,
    	'posts_per_page' => -1,
    	'tax_query' => [
    		[
    			'taxonomy' => $taxonomy,
    			'terms'    => get_terms( $taxonomy, [ 'fields' => 'ids' ] ),
    			'operator' => 'NOT IN'
    		]
    	]
    ];
    
    $query = new WP_Query( $args );
    foreach( $query->posts as $post ){
    	// делаем что нужно
    	// прикрепляем к той же таксономии, к термину 263
    	wp_set_object_terms( $post->ID, 263, $taxonomy );
    }
    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация