body_class()にページスラッグを追加

WordPressのbody_class()を使えばイロイロとclassの値が出力されてデザインを変更したりするのには便利ですよね。

でも、各ページごとにレイアウトを変更したりする場合にページスラッグがあるといいなぁっと思ってCodexを見たのですがスラッグはありませんでした。

じゃぁ追加すればいいじゃないかという事で
まずget_pageでページIDを情報を取得

$page = get_page(get_the_ID());

 

次に、get_pageで取得したページ情報からスラッグ名を取得

$slug = $page->post_name;

 

最後に、body_classにページスラッグを追加

body_class($slug);

あんまりダラダラコードを書くのは好きじゃないのでこれをfunction.phpファイルにまとめる

function slug_class(){
  if(is_page()){
    $page = get_page(get_the_ID());
    $slug = $page->post_name;
    body_class($slug);
  }else{
    body_class();
  }
}

こんな感じ~

ページの先頭へ