ページナビのテキスト

閲覧数: 39(0)

記事ページの下部に前後の記事(投稿)へのリンクが表示される仕様なのだが、「カテゴリーに制限」をかけている関係上、単純に前後へのリンクとする訳にいかず、多少の制御を入れている。具体的には、非ログイン状態では、表示中の記事が属するカテゴリーの前後へのリンクとしている。リンクの表示内容は「前後の記事タイトル」と「過去の投稿」「新しい投稿」というテキストの予定であった。改修する時、単純にログイン状態かどうかを判定し、非ログインの場合にはカテゴリー制限を入れるコードにしたところ、今になってリンクの「過去の投稿」「新しい投稿」というテキストが表示されていなかった事が判明してしまった。ということで修正した。

例によって、元のコードから。

// Previous/next post navigation.
the_post_navigation( array(
    'next_text' => '<span class="meta-nav" aria-hidden="true">'
        . esc_html__( 'Next', 'fotografie' ) . '</span> ' . '<span class="screen-reader-text">'
        . esc_html__( 'Next post:', 'fotografie' ) . '</span> '
        . '<span class="post-title">%title</span>',
    'prev_text' => '<span class="meta-nav" aria-hidden="true">'
        . esc_html__( 'Previous', 'fotografie' ) . '</span> ' . '<span class="screen-reader-text">' 
        . esc_html__( 'Previous post:', 'fotografie' ) . '</span> ' 
        . '<span class="post-title">%title</span>',
) );

get_template_part( 'components/post/content', 'comments' );

書き方をガラッと変えて、以下のようなコードでやりたいことを実現している。前半はページナビの構築、後半はログイン状態の確認、その結果で引数の中身が追加されるかどうか、という方式へ変更した。

// Previous/next post navigation.
$args = wp_parse_args( $args, array(
    'next_text' => '<span class="meta-nav" aria-hidden="true">'
        . esc_html__( 'Next', 'fotografie' ) . '</span> '
        . '<span class="screen-reader-text">' . esc_html__( 'Next post:', 'fotografie' ) . '</span> '
        . '<span class="post-title">%title</span>',
    'prev_text' => '<span class="meta-nav" aria-hidden="true">'
        . esc_html__( 'Previous', 'fotografie' ) . '</span> '
        . '<span class="screen-reader-text">' . esc_html__( 'Previous post:', 'fotografie' ) . '</span> '
        . '<span class="post-title">%title</span>',
) );
if ( !is_user_logged_in() ) :
    $args = wp_parse_args( $args, array(
        'in_same_term'       => true,
        'excluded_terms'     => '1,5,6,7,8,9,10',
        'taxonomy'           => 'category',
        'screen_reader_text' => __( 'Post navigation' ),
) );
endif;
the_post_navigation($args);

get_template_part( 'components/post/content', 'comments' );
カテゴリーIT閑話, 公開タグ, , ,
Sticky Headerその後
blank

Sticky Headerをやりたくて、その名もずばり「Sticky Header」と言うプラグイン  続きを読む

カテゴリー制限
blank

カテゴリー制限はこのサイトでは過去に何度も出題された「頻出過去問題」です。初期の頃は「Allow C  続きを読む

カテゴリー制限をかける
blank

一般公開とログイン後公開と非公開、この3パターンをカテゴリー制限で実現するプラグインとして、「Hom  続きを読む

検索結果のカテゴリー制限
blank

検索ネタを連発しておりますが、、、今回はテーマとプラグインどっちで修正するかという課題に挑戦しました  続きを読む

Elasticsearch 5.6.5
blank

少し古い記事の「検索に悩む」で紹介した「Elasticsearch」ですがWordPressやMed  続きを読む

カテゴリーを制限する
blank

過去に何度も書いた「カテゴリー制限」の話、元はと言えば初期に書かれた「非公開」の記事が原因です。トッ  続きを読む

スポンサーリンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください