サポート » 使い方全般 » yearパラメーター付URLで意図しないリライトが発生する

  • 解決済 hitaka

    (@hitaka)


    【前提条件】
    パーマリンク設定:/%category%/%year%%monthnum%%day%_%post_id%.html
    ※FV Top Level Categoriesプラグインを利用

    年月アーカイブを作成するため、下記コードを記述。(簡易化しています)

    $query = array('year' => '2012', 'monthnum' => '7');
    $uri = 'http://localhost/hoge/'; //hogeはカテゴリースラッグ
    $list .= '<li><a href="'.esc_html(add_query_arg($query,$uri)).'">'
    		.$year.'年'.$month.'月'.'</a></li>';
    echo $list;

    上記の結果、下記(1)のURLが出力されます。

    http://localhost/hoge/?year=2012&monthnum=7 ・・・(1)

    上記のURLをクリックすると、下記(2)のURLにリライトされます。

    http://localhost/2012/7/ ・・・(2)

    ※なお、monthnumパラメータのみの場合はリライトされない。
     yearパラメータを含むとリライトされる。

    この場合、前述の(1)のURLのまま、または後述の(3)のURLにリライト
    されるような方法をご存知の方がいましたらご教示ください。

    http://localhost/hoge/2012/7/ ・・・(3)

    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター jim912

    (@jim912)

    hitakaさん

    以下をテーマのfunctions.phpに追加で、リダイレクトをカットできます。

    function disable_year_redirect_canonical( $redirect_url ) {
    	if ( is_category() && ( is_year() || is_month() ) ) {
    		$redirect_url = false;
    	}
    	return $redirect_url;
    }
    add_filter( 'redirect_canonical', 'disable_year_redirect_canonical' );

    トピック投稿者 hitaka

    (@hitaka)

    jim912さん

    いつもご回答ありがとうございます。

    ご教示いただいた内容で対応できました。

    また、リライト周りはカスタマイズしたいところがあったので、
    今回の件をヒントに進められそうです。

    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「yearパラメーター付URLで意図しないリライトが発生する」には新たに返信することはできません。