
WordPressでサイトのカスタマイズをしていくと、ウィジェットの表示を制御したいケースがたまにあります。例えば固定ページと投稿でサイドバーに違うウィジェットを表示したい場合などなど。
そういう機能を提供してくれるプラグインはいくつかあります。ですが、もし「Jetpack by WordPress.com」をインストール済みの場合は、新しいプラグインを入れなくても、ウィジェットの表示をコントロールすることができます。
ご存じの方も多いと思いますが、JetPackはWordPressにたくさんの機能を追加してくれる定番プラグインです。その中に、特定の条件のときのみ表示されるウィジェットを作る機能が含まれています。
条件のときだけに表示されるウィジェットを作る
というわけで、JetPackの機能を使って、条件のときだけに表示されるウィジェットを作っていきます。
JetPackをインストールすると、ウィジェットの設定画面に「公開状態」というボタンが表示されるようになります。このボタンをクリックすると…
このようにウィジェットを表示する条件を指定できるようになります。
- カテゴリー
- 投稿者
- ユーザー
- 権限グループ
- タグ日付
- 固定ページ
- 投稿タイプ
…の8種類の条件があります。
「追加」を押すと複数の条件を組み合わせることもできます。
例えばこんな場合に…
それでは、具体的な事例別に設定方法を紹介していきます。
固定ページのときのみ表示
まずは、固定ページのときだけ特定のウィジェットを表示したい場合(つまり、投稿やアーカイブページのときは表示しない場合)です。
ひとつ目のドロップダウンリストを「固定ページ」に、ふたつ目のドロップダウンリストを「投稿タイプ」の中の「固定ページ」にします。これで、このウィジェットは固定ページのときだけに表示されるようになりました。
逆に、固定ページのときに表示したくないウィジェットの場合は「非表示」を選択すればOKです。
その他に、特定の固定ページのときだけ表示したり、カスタム投稿タイプなども条件にすることができます。
特定のカテゴリーの投稿で表示
続いて、投稿のカテゴリーを条件に使う場合です。記事の内容にあったバナー広告を表示するなんてことができます。
ひとつ目のドロップダウンリストを「カテゴリー」に、ふたつ目のドロップダウンリストで、対象のカテゴリーを選択します。同じやり方で、カテゴリーごとにウィジェットを追加していけばOKです。
ちなみに、ウィジェットエリアにバナー画像を配置したい場合は、同じくJetPackで追加される「画像(JetPack)」のウィジェットが使えます。
会員制サイトでユーザーがログインしているときだけ表示
個人的によく使うのはこちら。ユーザーがログインしているかどうかを条件にして表示するパターンです。ログインしていない場合は会員登録のリンクを表示させて、ログインしている場合は会員向けのメニューを表示させることができます。
このように、ユーザーが「ログイン中」または「ログアウト中」を条件にすることができます。
JetPackのインストール&設定方法
ついでに、JetPackのインストール手順と、設定の方法も紹介しておきます。JetPackを使ったことがない方は参考にしてみて下さい。
ダッシュボードでプラグインの新規追加画面を開くと、恐らくJetPackが表示されていると思います。もしなければ「JetPack」で検索してインストールと有効化をしましょう。
JetPackを有効化したら、WordPress.comのアカウントと連携させます。アカウントを持っていない場合は作成してください。
今回使う機能は無料プランでOKです。
「おすすめ機能の有効化」をクリックすると、各種機能を使えるようにしてくれます(あとで個別に設定可能)。ですが、今回はそちらは関係ないので、「このステップをスキップ」をクリックします。
以上で、インストールと設定作業は完了です。これで、前述のウィジェットの表示制御ができるようになります。