ボタンをクリックするとランダムな記事が表示される方法を紹介します。
下のランダムボタン(サンプル)↓をクリックしてみてください(別ページで開きます)。
投稿「サンプル記事A」、「サンプル記事B」、「サンプル記事C」、「サンプル記事D」、「サンプル記事E」の5つが、クリックごとにランダムで表示されます。
導入方法
STEP 1:固定ページを新規作成し、パーマリンクを変更する
パーマリンクをrandomに変更する
STEP 2:page-random.phpを新規作成
page-random.phpにコードを書く
STEP 3:page-random.phpをアップロード
テーマのディレクトリ直下にpage-random.phpをアップロードする
STEP 1:固定ページを新規作成
WordPressで固定ページを新規作成します。
パーマリンクを「random」にします。
(例)https://○○○.com/random
STEP 2:page-random.phpを新規作成
エディターで「page-random.php」を作成します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// source code from page-random.php implemented through WP_Query // Random Redirection Page Template // set arguments for WP_Query() $args = array( 'posts_per_page' => 1, 'orderby' => 'rand' ); // get a random post from the database $my_random_post = new WP_Query ( $args ); // process the database request through WP_Query while ( $my_random_post->have_posts () ) { $my_random_post->the_post (); // redirect the user to the random post wp_redirect ( get_permalink () ); exit; } |
参考サイト→ SMASHING MAGAZINE:WordPressでのランダムリダイレクト(英語)
STEP 3:page-random.phpをアップロード
※注意
必ず子テーマを作り、バックアップをとってください。
テスト環境でテストしてから作業してください。
作業は自己責任でお願いします。
あなたのサイトに問題が起きても当方は責任を負いません。
page-random.phpファイルをFTPソフトなどを使って、
あなたのWordPressのテーマディレクトリにアップロードします。
> public_html > wp-content > thmes >「お使いのテーマ名」_child
WordPressでは固定ページを表示するときに、
パーマリンクに対応する名前のファイル名があると
それを自動で読み込んでくれます。
固定ページの場合「page-パーマリンク名.php」という
ファイルが存在していると、
page.phpではなく、
そのphpファイルを読み込んでくれます。
ページを公開したあと、ページにアクセスするユーザは、
自動的にランダムな投稿が表示されます。
あとは、ランダムボタンを作り、
リンクを<https://○○○.com/random>とすればリダイレクトされます。
このランダムボタン(サンプル)↓は
カテゴリー<サンプル>の記事のみランダムで表示するようにしました。(別ページで開きます)。
おみくじ感覚で記事が表示されるので色々なアイデアで使えそうですね。(*'ω'*)
この方法はリダイレクトを使っているので、サーバーが高速でないと威力を発揮しません。
当サイトでも使っている エックスサーバー ならサクサク動くのでおススメです。
一度ためしてみてください。