wordpressスマホ対応サイト・wpプラグイン・検索体験最適化・SNS・ 動画・bgmやテーマ曲を駆使して、リアルビジネスへの集客を達成するためのコラム!

   

wordpress屋のマルチメディアコンテンツ制作読んどけ☆コラム

【PHPで条件分岐】wordpressのサイトで、ページごと(固定・記事・カテゴリ・複数ページ)に、表示される内容を変えたいっ!

      2018/03/31

こんにちは、管理人@SS_mshpです。

今回は、wordpressのサイトで使われるPHPプログラムの条件分岐で、出力する内容をページごとに変えてみます
wordpressのサイト・PHPで条件分岐
『指定の固定ページ・番号指定して記事ページ・カテゴリー・複数ページ』みたいな形で分岐させてみます。さっそく方法を見ていきましょう。

■元の状態と、追加したプログラム

このサイトでちょっと、出力する内容をページごとに変えるプログラム実験してみます。ヘッダーあたりになんかつける予定。
ヘッダーあたり・もとの状態
もとの状態はこんな感じです。

追加したコードはこんな感じ(header.phpに追加)。
header.phpに追加したコード
ヘッダーの下あたりに文字が出る予定。wordpressで使えるPHPのif文で4通りです。場所に応じて表示が変わります。  

■wordpressのPHP条件分岐タグで、ページごとに出力する内容を変えた例

■カテゴリ(スラッグ○○)のページのときだけ表示する

カテゴリ(スラッグ○○)のページのときだけ表示する

<?php if(is_category( ‘utility’ )): ?>
カテゴリ(スラッグ)utilityのときだけ出力とか
<?php endif; ?>

管理人は、カテゴリーページのアドレスにはアルファベットの単語を使っていたので、スラッグ入力して表示しました。カテゴリーごとにアフィリエイトの広告を適切なものにチェンジするときも使えそうです。

■記事(id○○番)のページのときだけ表示する

記事(id○○番)のページのときだけ表示する

<?php if(is_single( ‘5265’ )): ?>
○○番のときだけ広告表示とか
<?php endif; ?>

個別に記事番号を指定する場合です。記事idはurlやデータベースidとも連動しています。codexによると、idでの番号だけでなく、スラッグや投稿名も使えるとのことです。『やけにアクセスが多い個別記事がある』などのときは効果的です。

■固定ページのときだけ表示

固定ページのときだけ表示

<?php if(is_page( ‘about’ )): ?>
aboutタイトル固定ページのとき表示
<?php endif; ?>

『single』と『page』も、うまく使い分けます。特定の固定ページのときだけ表示してみました。

■応用:array配列で、複数のページを設定

応用:array配列で、複数のページを設定

<?php if(is_single (array( ‘5265’, ‘5245’, ‘5177’ ))): ?>
idが5265・5245・5177番のときだけでてくるやつ
<?php endif; ?>

複数のページで出るバージョンです。array配列は、こんな感じで使っても便利です。id5265の記事で2個出ているのは、id個別で書いたものと、配列の中に複数指定されたものの、2箇所出てくるからです。

■あとがき・まとめ

カンタンなプログラムでしたが、表示切替ができました。応用すると『カテゴリーごとに違うヘッダーを出力』『特定のアクセスが多い記事だけに、広告を出力』『記事・固定などでサイドバーを出力したりしなかったり』といったことができます(できました)

また場合によっては、否定の演算子『!』をつけて、『php if(!is_category(‘○○’)):』みたいに書く使いかたも組み合わせると、よりいろいろな条件に対応できます。

■参考リンク(wordpress codex)

公式リファレンスwordpress codexでは、これらの表示方法を使って、よりいろいろな場合に対応する方法が書いてありますので、wpサイト使いの方はぜひのぞいてみて下さい。

*アトリエSS・web制作サービスページに移動します。webリニューアル・ロゴ・記事・wordpress化などでお力添えできます。

【カテゴリ】 - webサイト制作 【タグ】 - ,

Message

メールアドレスが公開されることはありません。

  関連記事

侍エンジニア塾ブログにあったPHPコードをシンプルに書いてみる(foreachで配列キーや値取得・continueで空要素スキップ)

今回は、(自分もまだプログラム学習中の身ですが)よくある『プログラム学習 …

【PHPでWPカスタマイズ】プラグイン不使用で、テーマに関連記事表示機能を実装しPV・滞在時間を上げる

今回は、サイトをしっかり見てもらうために、『WordPressサイトに、 …

PHP・shuffleやarrayを使った、画像ランダム表示方法~メインビジュアルやバナー・テキストにも利用可能

今回は、以前お取引先のスクールの担当者さまと、『サイトのメインビジュアル …

wordpress構成ファイルのxmlrpc.phpを無効化する方法【実は攻撃されやすい】

今回は、wordpressの構成ファイルで、ちょっとクセのある『xmlr …

【別に止めなくてOK】wordpressサイトなどに、アメブロ・fc2など無料ブログの更新情報を表示して連携する方法

今回は、『無料ブログにすべきかwordpressにすべきか』という疑問に …

【マテリアルデザインCSSフレームワーク】Materializeで、カッコいいビジネスサイト(静的HTML)を作る

今回は、フレームワークを使ったサイト制作を行ってみます。 利用するのは『 …

【wordpressカスタマイズ】llorix_oneなどビジネストップ1カラムテーマで、カスタマイザーで入らない動画・オーディオを入れる

今回は、人気の海外ディベロッパーのwordpressテーマで、動画やオー …

【WPカスタマイズ】子テーマさえ入れとけば大丈夫?なわけねーだろ!(親テーマに手を入れる・ファイルコピー適応させる羽目になる事例)

今回は、推奨されてるWPの子テーマについてですが、『結局親テーマいじる羽 …

【セキュリティ・脆弱性対策2018】wordpressでサイバー攻撃されやすいファイルってどんなのがあるの?

今回は、wordpress利用者にも気になる『サイバー攻撃』についてです …

ワードプレスでデータベースにたまる余計なデータって何があるの?事例と対処方法

今回は、ワードプレスのサイトでよくある『データベースにたまる余計なデータ …

【WPカスタムフィールドはこう使う】カップ焼きそばレビュー記事に、カスタムフィールドで評価スコアを(CSSつけ方もあり)

今回はwordpressの機能『カスタムフィールド』で、より具体的に利用 …

wordpressの仕組み~ヘッダーに入ってくるCSSは、どのように出力されるか(wp_headにcustomize_cssをadd_action)

今回は、自分のフリー曲素材サイトのチューニングをしてて、wordpres …