ブログ

  • WordPress 特定ページだけ処理、特定ページを除く処理

    フロントページ(front-page.php)の時だけ処理を実行

    例:共通ファイルheader.phpで、トップページだけhome.cssを読み込みたい
    <?php if ( is_front_page()):?>
     <link rel=”stylesheet” href=”<?php echo get_template_directory_uri(); ?>/assets/css/home.css”>
    <?php endif; ?>
    投稿アーカイブ is_home()

    固定ページ is_page()

    投稿ページ is_single()
    ()内にIDやスラッグを入れると、指定した投稿のみ適用
    <?php
    if( is_single() ){
    }
    ?>
    特定ページを除いて処理を実行
    contactページ以外のページで実行したい内容をpage.phpに書く場合
    <?php if (!is_page(‘contact’)):?>
    // contactページ以外で表示したい内容(お問い合わせボタンとか)
    <?php endif; ?>
    複数のページを除いて処理を実行
    トップページまたはprofileページを除くページで実行したい内容をpage.phpに書く場合
    <?php if(!is_front_page() || !is_page(profile)):?>
    //トップページとprofileページを除くページで実行
    <?php endif; ?>

  • スラッグをbody_class() にしたい

    functions.php

    function pagename_class($classes = ) {
    if (is_page()) {
    $page = get_post(get_the_ID());
    $classes[] = $page->post_name;
    }
    return $classes;
    }
    add_filter(‘body_class’,‘pagename_class’);
    表示させたいページで使用するテンプレート
    <body <?php body_class(); ?>”>
    表示結果(contactページの場合)
    <body class=”wp-singular page-template-default page (中略) contact>