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

   

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

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

   

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

今回は、以前お取引先のスクールの担当者さまと、『サイトのメインビジュアル画像ってランダムに切り替えられない?』という話をしていたので、実際にプログラムを組んで対応してみます。

wordpressユーザーなのでPHPを使用します(javascriptなどでも出来そうです)。さっそく実装してみましょう。

画像ランダム切り替えに使えそうな、PHPプログラム

本やサイトで調査したところ、以下のようなPHPが使えると判断しました。
『array(配列変数・複数の値を入れられる)』
『shuffle関数(配列の要素をシャッフルしてランダムに)』
『rand関数(ランダムに)』

このサイトの管理人は、最近、『配列のなかにカテゴリを入れて、特定カテゴリだけ広告配信』みたいな配列変数とかもやっていたので、arrayを使ってみます。

PHPのarray・shuffleを使って、画像ランダム切り替えする方法

いろいろ探してみたところ、shuffleについてシンプルに書いてあった、初心者のPHP入門サイトさんの『shuffle-配列関数:配列をシャッフル』を参考にしてみました。

arrayに入れた要素の中からshuffleでランダムに取り出す例

arrayの配列の中に4つの数字を入れて、shuffleでシャッフルしてランダムに並び替え、current()で参照してechoするという流れで、ランダムな数字がでます。

$ar = array(1, 2, 3, 4);
shuffle($ar);
echo current($ar);


このサイトのメニュー下につけてみました。リロード(再読み込み)するたびに、ランダムに数字が入れ替わる状態になります。数字はただのテキストなので、配列の中にいくつか文章を入れることで、テキストをランダムに表示することにも対応できます

ランダム画像切り替えプログラム

<?php $ar = array(
‘<img src=”https://sounds-stella.jp/music-creation/wp-content/uploads/20180706a.jpg” alt=”” width=”640″ height=”480″ class=”aligncenter size-full wp-image-6049″ />’ ,

‘<img src=”https://sounds-stella.jp/music-creation/wp-content/uploads/20180706b.jpg” alt=”” width=”640″ height=”383″ class=”aligncenter size-full wp-image-6050″ />’
,
‘<img src=”https://sounds-stella.jp/music-creation/wp-content/uploads/20180706c.jpg” alt=”” width=”640″ height=”343″ class=”aligncenter size-full wp-image-6051″ />’);
shuffle($ar);
echo current($ar); ?>

基本的には、上の数字表示と同じです。違う部分は、このサイトの画像表示タグを3つもってきて配列の中に入れた点です。『'<img src=”●●” />’』のように、画像タグをクォーテーションマークで囲って入れないと、閉じる部分を誤認識して『syntax error, unexpected ‘<', expecting ')'』みたいなエラーになるので注意しましょう。

PHPで画像ランダム表示した例

このサイトのヘッダー下に画像タグをいれて、ランダムで切り替えてみた例です。リロード(再読み込み)すると別の画像がでます。スタイルシートで横幅をボックスに対して100%などに広げたりすると、メインビジュアル(トップページの上のほうとかにある大きい画像)などにも対応可能です。そのほか、アフィリエイトバナーなどにも使えるかもしれません

PHPランダム画像切り替えをやるにあたって、参考にしたサイト

今回の記事・画像切り替えについて(検索したら出てきた)参考にしたサイトです。他の関数を使ったりと様々なやり方があるので、PHP学習されている方は、ぜひこちらも読んで見てください。
また、バナー・テキスト・ヘッダーなども切り替えて、読者に変化を見せられるようにしていただければ幸いです。

*お問い合わせフォームページに移動します。webリニューアル・ロゴ・記事・wordpress化などでお力添えできます。

■LINEできいてみる(アカウントがある方)

(タップ・またはqrでアプリを起動してください。回答できる内容には限りがありますが、なにか課題解決のきっかけができるかもしれません。)


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

Message

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

  関連記事

(ヘッダーとか見出しの要素を)片方だけ丸い・台形・矢印などおしゃれデザインにできるCSSやってみた

今回はWebサイトでよくある『ガチガチ長方形とか正方形みたいな要素』では …

【ワードプレスサイトで更新情報表示】phpで取得と、プラグインで表示どちらが良い?

今回は、ワードプレス系のサイトで、トップページとか任意の部分に『ブログ部 …

ワードプレスサイト高速化失敗例(ページスピードスコア低下)→最後にjsで読み込むCSS

今回は、管理人が重いワードプレスサイトを高速表示しようとして、失敗した事 …

オウンドメディア&コーポレートサイトを、1サーバー1ドメインで構築する手順

今回は、ワードプレスなどを使って、汎用性のある複数サイト組み合わせを行い …

ワードプレス派が覚えると便利なPHP~投稿記事・固定ページ指定して表示/非表示

今回はワードプレスサイト制作で使えるテクニックです。 PHPで使う条件分 …

fc2ブログでSSL対応開始!設定方法や注意点をチェック!

今回は、管理人も使っている大手ブログサービス(fc2)で、ブログ本体もS …

ワードプレスの子テーマって、なぜ必要なの?

今回は、ワードプレスサイトを作るときにたまに話題になる『子テーマ』につい …

【ワードプレステーマカスタマイズ】勝手にヘッダーの追加CSSで入ってくるマージンを消したいんですけど

今回は、ワードプレスのテーマカスタマイズしてオリジナルデザインにするとき …

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

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

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

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