特定のカテゴリーの記事を非表示にする

トップページで記事の一覧を表示する際に特定のカテゴリーの記事を表示しないようにする方法です。

query_postsを使って取得する記事をフィルターにかければよいと思ったので最初に

<?php query_posts( 'cat=-19&showposts=10' ); ?>

これ↑をループが始まる前に記入しました。

しかし、これだとページを送っても永遠に先頭からの件数しか取得しないので、トップページの表示のまま(アドレス自体は送れてることになっている)でした…

調べていた所フォーラムで同じような質問の投稿を見つけました。
ページでページングを利用したい

”query_posts() 関数を使っているとすると、そこにページ番号が入っていないと、常に1ページ目を取得しようとしてしまいます。”

引数に paged=$paged を追加する必要があるとの事です。

$paged = get_query_var('paged');
wp(".....&paged=$paged");

下記のようにループが始まる前に記入したところ、ページが通常のように送れるようになりました!

<?php
$paged = get_query_var('paged');
query_posts("cat=-19&posts_per_page=10&paged=$paged");
?>

<?php if(have_posts()): ?>
<?php while(have_posts()):the_post(); ?> 

上記の表示をメインページでのみ行う方法です↓
特定のページにのみに表示や処理を行う

Related Article

No Comments & Tracbacks

Leave a Comment

Emailは公開されません。*は必須項目です。


*


Categorys

Tags

CSS3 ダッシュボード ヘッダー トラブル コードサンプル スライドショー コンテンツ jQueryプラグイン 素材 引っ越し php お知らせ Facebook JavaScript CSS カテゴリー IE 投稿タイプ seo Photoshop Shareボタン HTML5 レスポンシブ サイドバー ナビゲーション タクソノミー WPセキュリティ Git カスタムメニュー Macアプリ PHPリファレンス SVG query_posts API WP使い方 iTunes データベース コメント function RSS 条件分岐 get_posts() スマートフォン Sass/Compass マルチサイト機能