wp 特定のカテゴリを除いた記事一覧
2013/06/18
wordpressで特定のカテゴリを除いた記事一覧を取得したい。
have_posts()を使わずに記述を変更する。
最初にテンプレート(index.php)に記載されているような内容。
<?php
// 既定の投稿記事一覧を取得し、表示
if (have_posts()) :
while (have_posts()) :
the_post();
?>
<div>記事の内容を記載する。</div>
<?php endwhile; endif; ?>
// 既定の投稿記事一覧を取得し、表示
if (have_posts()) :
while (have_posts()) :
the_post();
?>
<div>記事の内容を記載する。</div>
<?php endwhile; endif; ?>
上記を下記のような感じにする。
<?php
// カテゴリを除いた一覧
$catOutObj = get_category_by_slug("○○○");
$myposts = get_posts("numberposts=5&category=-" . $catOutObj->term_id);
foreach($myposts as $post) :
setup_postdata($post);
?>
<div>記事の内容を記載する。</div>
<?php endforeach; ?>
// カテゴリを除いた一覧
$catOutObj = get_category_by_slug("○○○");
$myposts = get_posts("numberposts=5&category=-" . $catOutObj->term_id);
foreach($myposts as $post) :
setup_postdata($post);
?>
<div>記事の内容を記載する。</div>
<?php endforeach; ?>
get_postsの中にある「category」にカテゴリIDを記載する。
カテゴリIDにマイナスをつけると指定したカテゴリを除いた結果になる。