ブログ
WordPressでページ毎に異なるidを設定する方法
2016年12月17日
固定ページやらアーカイブページ毎にデザインが異なる場合、ページ毎idが振られていたら便利だろうな!
と思ったことありませんか?
欲しいと思ったら作る前に探せ。
車輪の再発明をしないための必須スキルです。
見つけたのがこちらのページ
同じ悩みを抱えている人いたんですね。
紹介されているコードがこちら
<?php $body_id =""; if ( is_single() || is_page() ) { $body_id = ' id="'.$post->post_name.'" '; } else if ( is_category() ) { $category = get_the_category(); $body_id = ' id="category_'.$category[0]->category_nicename.'" '; } ?> <body <?php echo $body_id; ?>>
カテゴリページやアーカイブページの時にごちゃごちゃしそうな感じがしたのでテンプレートファイルのベース名を id に設定することにしました。
functions.php に関数定義 <?php // 使用しているテンプレートファイル名の basename を取得 function get_template_basename(){ global $template; $basename = basename($template, '.php'); return 'id=' . $basename; } ?> <body <?php echo get_template_basename(); ?>>
書いてみると再発明云々というレベルの話ではなかったですね。