ページナビのテキスト

閲覧数: 48(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その後

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

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

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

カテゴリーを制限する
blank

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

検索精度を高める
blank

検索ネタを連発するのはElasticsearchやElasticPressがバージョンアップした時の  続きを読む

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

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

Elasticsearch 5.6.5
blank

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

スポンサーリンク

コメントを残す

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