今回は、WordPress(ワードプレス)の条件分岐について。
WordPress は、PHP でつくられており、WordPress固有の関数もたくさんあります。
例えば、あるページだけ読ませたいコードがあるような場合。
条件分岐のコードを書いて、判定すれば可能です。
主に header.php や footer.php や functions.php などのファイルに書くことが多いです。
header.php について
たいていの WordPress のテーマの場合、HTML の head要素 は、header.php というファイルで管理されています。
例えば、HTML の場合。
Googleアナリティクスのコード挿入。
CSSファイル や JavaScriptファイル を外部ファイルとして読み込む。
こういった場合に、head要素内にコードを追加したのではないでしょうか。
ただし、WordPress の場合、CSS や JavaScript を外部ファイルとして読ませる場合、header.php を編集しない方が良い場合もあります。
注意しましょう。
条件分岐を使う
WordPressは、PHP でつくられています。
先程の header.php も PHPファイル です。
ここで条件分岐を使ってみましょう。
<?php if ( is_single() ): ?> ここに特定の記事ページだけに読ませるコードを記述する <?php endif; ?>
is_single() は投稿ページを表示しているかどうか判定する関数です。
投稿ページを表示していれば、真偽値である TRUE を返します。
つまり、上記のコードだと、投稿ページであれば、記述したコードが読まれて、他のページだと無視されるというわけです。
ただし、is_single() にパラメータを渡していない場合、すべての投稿ページで読まれることになります。
そこで、is_single() にパラメータを渡します。
パラメータには 投稿ID や タイトル、スラッグ などを指定することができます。
例えば、下記のような場合。
is_single('投稿ID')
指定した投稿IDかどうか判定し、該当すれば TRUE を返します(それ以外は FALSE )。
ちなみに条件分岐に使える WordPress固有の関数は他にもあります。
is_page() とすれば、固定ページが表示されているかどうか判定します。
テーマの編集は子テーマで行う
今回のような編集をする場合、必ず子テーマで編集するようにしましょう。
理由は例えば、テーマ制作者の方が新しく不具合や機能を追加してくれたりしたときに、そのまま編集していると上書きされてしまうからです。
最後に
いかがでしょうか。
WordPress は、本当に使いやすいブログシステムです。
ただし、WordPress固有の関数というのは非常にたくさんあります。
プラグインでやるか、自分でやるか迷うところもあります。
色々な方法があるというのは本当にありがたいことです。
ユーザーのことを考えてくれた開発者の方々に感謝します。