WordPress Twenty Fourteen Ver.3.8.7の投稿ナビ「次の投稿」「前の投稿」を非表示にする方法についてのメモです。スタイルシートに追記する取り急ぎの方法から、PHPファイルに追記してしっかりと非表示にする方法まで3通りの方法メモしました。
【 環境 】WordPress : Twenty Fourteen
スポンサーリンク
[adSense]
1.スタイルシートを編集して非表示にする
「とにかく時間をかけたくない」という場合は、スタイルシートstyle.cssに以下を追記するだけで簡単に非表示にできます。
/*** 「次の投稿」「前の投稿」を非表示 ***/ .nav-links { display: none; }
2.テーマテンプレートのPHPファイルを編集して非表示にする
「template-tags.php」ファイルを編集して非表示にする方法です。
wp-content/themes/twentyfourteen/inc/template-tags.php の
83行目以降
<nav class="navigation post-navigation" role="navigation"> <h1 class="screen-reader-text"><?php _e( 'Post navigation', 'twentyfourteen' ); ?></h1> <div class="nav-links"> <?php if ( is_attachment() ) : previous_post_link( '%link', __( '<span class="meta-nav">Published In</span>%title', 'twentyfourteen' ) ); else : previous_post_link( '%link', __( '<span class="meta-nav">Previous Post</span>%title', 'twentyfourteen' ) ); next_post_link( '%link', __( '<span class="meta-nav">Next Post</span>%title', 'twentyfourteen' ) ); endif; ?> </div><!-- .nav-links --> </nav><!-- .navigation -->
上記をすべてコメントアウトします。
なお、この方法は、親テーマのテンプレートを直接編集する方法なので、テーマをバージョンアップした際にもとに戻ってしまいます。
対策としては、バージョンアップしたら改めて上記の編集します。
「それは面倒だなぁ」という場合は次の子テーマを編集する方法がおすすめです。
3.子テーマのPHPファイルを編集して非表示にする
テーマをバージョンアップしても影響がないように、子テーマのPHPファイルを編集します。
子テーマに inc/template-tags.php を作って編集したところ、親テーマのファイルを読み込んでしまって反映されませんでした。
その理由はfunctions.phpに
require get_template_directory() . ‘/inc/template-tags.php’;
と記述があり、親テーマのphpファイルを読み込んでいるためでした。
親テーマを編集しては意味がないので、以下の部分を子テーマのfunctions.phpに追記します。
※functions.phpを編集する場合はとても注意が必要なので、「Wordpress functions.php 子テーマ作成~編集、追記方法について エラーを防ぐ!」の詳細を参照ください。
wp-content/themes/twentyfourteen/inc/template-tags.php の
73行目以降
function twentyfourteen_post_nav() { // Don't print empty markup if there's nowhere to navigate. $previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true ); $next = get_adjacent_post( false, '', false ); if ( ! $next && ! $previous ) { return; } ?> <nav class="navigation post-navigation" role="navigation"> <h1 class="screen-reader-text"><?php _e( 'Post navigation', 'twentyfourteen' ); ?></h1> <div class="nav-links"> <?php if ( is_attachment() ) : previous_post_link( '%link', __( '<span class="meta-nav">Published In</span>%title', 'twentyfourteen' ) ); else : previous_post_link( '%link', __( '<span class="meta-nav">Previous Post</span>%title', 'twentyfourteen' ) ); next_post_link( '%link', __( '<span class="meta-nav">Next Post</span>%title', 'twentyfourteen' ) ); endif; ?> </div><!-- .nav-links --> </nav><!-- .navigation --> <?php }
上記のfunctionをコピーして子テーマのfunctions.phpに追記したら「2.テーマテンプレートのPHPファイルを編集して非表示にする」と同様に
83行目以降
までをコメントアウトするか削除します。
まとめ
やり方としては1.の方法がてっとり早いと思いますが、3.の方法は非表示にする場合以外にも、カスタマイズする場合にもとても有効な方法だと思います(個人的には投稿ナビ上部スペースをカスタマイズするついでもあり、この方法を採用してます)。
実はWordPress twenty fourteenの投稿ナビの上部スペースは、カスタマイズ箇所が見つけずらかったので、3.の方法は今後も役立つと思います。
ということで、「次の投稿」「前の投稿」を非表示にする方法についてでした。
コメント