サポート » テーマ » テーマ「tanzaku」トップページに特定カテゴリ表示させた場合のページ推移

  • 解決済 Spica

    (@spica)


    環境
    tanzaku 1.1.1(Author HomepageWordPress.org
    ※ ダッシュボードから管理するプラグインは、オフの状態で確認

    PHP 5.2.5
    MySQL 5.1.17

    Safari 5 / Firefox3.6 / Chrome6(Mac OSX 10.5.8)
    IE 8(Win XP/Vista)

    内容
    トップページに特定のカテゴリー『catA』のみを表示させるため、index.phpの<?php get_header(); ?>に続き以下のコードを追加しました。

    <?php global $wp_query;
    query_posts(
    	array_merge(
    		array('category_name' => 'catA'),
    		$wp_query->query
    	)
    );?>

    結果、希望通りの表示を得ることが出来たのですが、ページ推移で1点上手く行かないところがあります。

    ◯ example.com/(catA属ポスト表示)→ example.com/page/2(catA属ポスト表示)
    ◯ example.com/catA → example.com/catA/page/2(catA属ポスト表示)
    ◯ example.com/catB → example.com/catB/page/2(catB属ポスト表示)
    ◯ example.com/archives/ポストID(catA属)→ example.com/page/2(catA属ポスト表示)
    × example.com/archives/ポストID(catB属)→ example.com/page/2(Not Found 条件に合う投稿はありませんでした)

    この点を修正するには、どの様にすれば宜しいでしょうか?
    ※ /page/2への移動はテーマ標準装備のページナビゲーションによるものです

    なお、functions.php内の関連コードは

    /*
     * echo paginate links using internal function "paginate_links()".
     *
     * see: http://www.yuriko.net/arc/2008/07/26/navigation/
     */
    function paginate_links2($is_top_single=false) {
    	global $wp_rewrite;
    	global $wp_query;
    	global $paged;
    	$paginate_base = ($is_top_single) ? trailingslashit( get_option('siteurl') ) : get_pagenum_link(1); /* mod */
    	if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) {
    		$paginate_format = '';
    		$paginate_base = add_query_arg('paged', '%#%', $paginate_base); /* mod */
    	} else {
    		$paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .
    			user_trailingslashit('page/%#%/', 'paged');
    		$paginate_base .= '%_%';
    	}
    	echo paginate_links( array(
    		'base' => $paginate_base,
    		'format' => $paginate_format,
    		'total' => $wp_query->max_num_pages,
    		'mid_size' => 5,
    		'current' => ($paged ? $paged : 1),
    		'prev_text' => '«',
    		'next_text' => '»',
    	));
    }

    かと思います。どうぞ宜しくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • tanzakuで特定のカテゴリを表示させる簡単な方法は

    ①Advanced Category Excluderをインストール

    ②有効化するとACEという表示が管理画面に現れる

    ③「ACE」→「categories」とクリックする

    ④表示させたいカテゴリ以外にチェックを入れる

    これでtanzakuのトップページに特定カテゴリ表示させた場合のページ推移はOKでした

    トピック投稿者 Spica

    (@spica)

    ご返答ありがとうございます!
    こちらのプラグインにて運用してみたいと思います。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「テーマ「tanzaku」トップページに特定カテゴリ表示させた場合のページ推移」には新たに返信することはできません。