マルチサイトの関連記事から特定のタームIDを除外したい
-
いつもお世話になっております。
表題の件に関しまして、
カテゴリーターム名を取得してマルチサイト上のタイトルにターム名が含む記事を取得しています。
$term_titleと$term_idは別のソースにより取得済みです。この「$term_id」使って、$term_idが所属する記事を除外したいのですが
可能でしょうか。ご教授頂けると幸いでございます。
<?php // ネットワーク関連記事 //$term_titleの関連記事を取得 //$term_id を除外したい $network_site_not_ids = ''; $network_site_not_ids = sanitize_text_field(get_field('network-site-not-id','option')); $network_site_not_ids = mb_convert_kana($network_site_not_ids, 'a', 'utf-8');//全角英数を半角英数に変換 //$network_site_not_ids = mb_ereg_replace('[^0-9]', '', $network_site_not_ids);//特定の文字以外削除 $args = array( //「1」が立つと有効、「0」だと無効 'public' => 1,//属性が「公開」のサイトのみ 'archived' => 0,//アーカイブサイト 'mature' => 0,//成人向けサイト 'spam' => 0,//スパムサイト 'deleted' => 0, //削除済みサイト 'site__not_in' => array( /*get_current_blog_id(),*/$network_site_not_ids), //削除済みサイト ); $sites = get_sites($args); if($sites ): foreach( $sites as $child_site ): $child_site_id = $child_site->blog_id;// ["blog_id"]; $blog_id_arr[] = $child_site_id; endforeach; endif; $sql = ''; $tmp = $blog_id_arr; //$limit_pub = '-1 month';//表示日数の設定(マイナスを付ける事) //$limit_mod = '-2 week';//表示日数の設定(マイナスを付ける事) foreach($blog_id_arr as $b_id){ next($tmp); switch_to_blog($b_id); $sql .= <<<HERE (SELECT *, $b_id as blog_id FROM $wpdb->posts WHERE (post_type = 'post' ) AND post_status = 'publish' AND post_title like ('%$term_title%') /*AND (post_date > date_add( now(), interval $limit_pub ) OR post_modified > date_add( now(), interval $limit_mod ) )*/ ) HERE; if(current($tmp) !== false){ $sql .= "UNION\n"; } restore_current_blog(); }//END foreach($blog_id_arr as $b_id) $sql .= <<<HERE ORDER BY RAND() LIMIT 10 HERE; //$rows = $wpdb->get_results($wpdb->prepare($query, '%今日の%')); $posts = $wpdb->get_results($sql); //記事一覧 foreach ($posts as $post): switch_to_blog($post->blog_id); setup_postdata($post); //サイト名取得 $current_sites = get_blog_details(); $site_path = $current_sites -> path; $site_name = $current_sites -> blogname; $site_child_name = esc_html(get_bloginfo('name'));//サイト名 //記事の情報を取得 include($private_theme_url . 'parts/single/default-content.php');//投稿の標準コンテンツ読み込み $post_list_network_one = ' <li class="nt-archive-post">'.PHP_EOL. ' <a href="'.$post_permalink_url.'" target="_blank">'.PHP_EOL. ' <span class="span-site-name">'.$site_name.'</span>'.PHP_EOL. ' <span class="span-post-name">'.$post_title.'</span>'.PHP_EOL. ' </a>'.PHP_EOL. ' </li><!-- END .nt-archive-post -->'.PHP_EOL. PHP_EOL; $post_list_network_single[] = $post_list_network_one; if($post_list_network_single): $network_post_out = ' <aside class="archive-relation-block limit1">'.PHP_EOL. ' <h4 class="">「'.$term_title.'」関連サイトオススメ記事</h4>'.PHP_EOL. ' <ul class="">'.PHP_EOL. implode('', $post_list_network_single ). ' </u>'.PHP_EOL. ' </aside><!-- END archive-relation-block -->'.PHP_EOL. PHP_EOL; endif;//$post_list_network_one endforeach; wp_reset_postdata($post); wp_reset_query(); restore_current_blog(); //endif; switch_to_blog( $current_blog_id );//メインサイトに戻す //END ネットワーク関連記事 ?>
- トピック「マルチサイトの関連記事から特定のタームIDを除外したい」には新たに返信することはできません。