Simplicityの人気記事ウィジェットにカスタム投稿タイプも含める方法

公開日:2017年5月5日 使い方など

WordPressのテーマである「Simplicity」。当サイトでも使用させていただいております。本当に必要な機能が詰まっていて至れり尽くせりのテーマです。「なんで公式テーマにないの?」「公式サイトに登録したらもっと使う方が増えるのに」と思う方もいるかもしれませんが、作者であるわいひらさんの方針なのでしょう。あまり使われる方が増えて画一化されていくのもどうかと思うので、私的にはあまりSimplicity化してほしくない部分もあります(わいひらさんすみません・・・)。

まあ、このサイト含め私が作るサイトで使っている「Simplicity」は結構カスタマイズしちゃってるのでヘッダー+本文+右サイドバーである・・・ということ以外はオリジナルとは別物になってしまっているので、ぱっと見て「あ、このサイトSimplicityだ!!」と気づかないかもしれませんね。

今回行うのは、このテーマの機能として搭載されている、人気記事表示ウィジェットのカスタマイズ。ひょっとしたら「Simplicity」の配布サイトにも出てるかもしれませんがあしからず。

「Simplicity」の人気記事表示ウィジェットには最初から

  • すべての記事の中から人気記事をWordpress Popular Postsプラグインのデータと連携して表示する
  • 今見ているのと同じカテゴリーの記事の中から人気記事をWordpress Popular Postsプラグインのデータと連携して表示する
  • という条件設定ができるようになっています。1についてはWppのウィジェットと同じ機能ながらより詳細な設定ができるようになっているものです。

    おすすめするのは2の機能。今見ている記事と同じカテゴリーの人気記事が表示できるんです。これをプラグインで表示しようとすると

    を使う位しか思いつきません(色々探しましたがこのプラグインだけのようですね)。

    すべての記事の人気表示をするのと圧倒的に違うのは、リスト内からリンクして別ページを見てもらえる確率。実際に計れるわけではないですが、いろいろな分類の記事を書くサイトではまったく関係ないリストが表示されるよりも、興味のある「今見ているもの」と同じようなリストが表示されれば思わず・・・となることは想像できますね。

    で、早速使ってみると1つ問題が。それは「カスタム投稿タイプの記事は含まれない」ということです。

    これから説明するようにちょっとカスタマイズすれば含まれるようになるのにどうして??と思うところですが、カスタム投稿タイプってサイトの作者が任意に投稿タイプ名を設定できるし、数も無制限なので開発段階で含めることができないのです(と勝手に想像しました)。

    「Simplicity」テーマでカスタム投稿タイプを使ったサイトを運営中の方で、このカテゴリー別人気記事ウィジェットが使えない・・・とあきらめている方必見のカスタマイズ方法です。簡単にできますから是非実装してくださいね。

    Simplicityの人気記事ウィジェットにカスタム投稿タイプも含める方法

    子テーマを使っている前提で前準備として子テーマに必要な親テーマのphpファイルをコピーします。コピーはFTPを使って一旦パソコンへダウンロードした後で子テーマフォルダの中へアップロードしてもいいですし、

    を使ってWordpressの管理画面上からファイルの出し入れをしてもいいでしょう。

    コピーするファイルは2種類あります。人気記事ウィジェットにはサムネイル画像の表示方法によって

    • デフォルト(小さいサムネイル画像)のとき・・・popular-posts-entries.php
    • 大きなサムネイルのとき・・・popular-posts-entries-large.php

    の2つがありますので、使用する側もしくは将来的に切り替えてもいいように両方をコピーしましょう。画像に何を使うかというところ以外構造はどちらも変わりません。

    カスタマイズは子ページへコピーしたものを使います。テーマ編集で子テーマの中の「popular-posts-entries.php」を開きましょう(popular-posts-entries-large.phpもほとんど同じです)

    11行目あたりに

    $post_type = $g_is_pages_include ? null : 'post_type="post"&';
    【注意】コードをコピーして使用する前に必ずお読みください

    この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

    使用については自己責任でお願いします

    コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

    万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

    コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

    コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

    その場合には以下の方法で修正を行ってみてください

    1. コードの中に全角の記号が入っていませんか?
    2. 半角にすることで解消できます
    3. コードの中に全角の空白(スペース)がありませんか?
    4. 半角にすることで解決できます
    5. コードは合っているはずなのに更新できないときは
    6. 特にエラーの出た行内に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があり、Wordpressのエディタチェックではこれを「’」や「)」など閉じ子のエラーとして認識され更新できないことがあります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。
    7. 「何かが間違っています...」と表示され、更新できないときは
    8. このエラーは本当に何がエラーなのかをWordpressのチェックが判断できない場合に発生します。解決策としてはその画面を開き直すことなのですが、その際希に元のコードがすべて削除されてしまう場合がありますので、今表示されているコードを一旦どこかへコピーしてからページの再読み込みをするようにしてやり直します。
      ※このエラーは不明なエラーなので予期せぬ動きをする可能性がありますので特に慎重な対処が必要です
    これらのエラー対処については以下のページが参考になるかも知れません

    コードを転載する場合には

    ご自身のサイトで当ページで紹介しているコードを転載される場合には当ページへのリンクを入れていただきますようお願いいたします

    というのがあります。ここで投稿タイプを指定して、下のほうのプログラムで呼び出しています。

    ここへ例えば「test」という投稿タイプを加えるとすると

    $post_type = $g_is_pages_include ? null : 'post_type="post,test"&';
    【注意】コードをコピーして使用する前に必ずお読みください

    この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

    使用については自己責任でお願いします

    コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

    万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

    コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

    コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

    その場合には以下の方法で修正を行ってみてください

    1. コードの中に全角の記号が入っていませんか?
    2. 半角にすることで解消できます
    3. コードの中に全角の空白(スペース)がありませんか?
    4. 半角にすることで解決できます
    5. コードは合っているはずなのに更新できないときは
    6. 特にエラーの出た行内に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があり、Wordpressのエディタチェックではこれを「’」や「)」など閉じ子のエラーとして認識され更新できないことがあります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。
    7. 「何かが間違っています...」と表示され、更新できないときは
    8. このエラーは本当に何がエラーなのかをWordpressのチェックが判断できない場合に発生します。解決策としてはその画面を開き直すことなのですが、その際希に元のコードがすべて削除されてしまう場合がありますので、今表示されているコードを一旦どこかへコピーしてからページの再読み込みをするようにしてやり直します。
      ※このエラーは不明なエラーなので予期せぬ動きをする可能性がありますので特に慎重な対処が必要です
    これらのエラー対処については以下のページが参考になるかも知れません

    コードを転載する場合には

    ご自身のサイトで当ページで紹介しているコードを転載される場合には当ページへのリンクを入れていただきますようお願いいたします

    と書き換えるだけです。後ろのほうの「'post_type=”post”&'」を「'post_type=“post,test”&'」にするだけなんですね。複数の投稿タイプを含める場合には「,投稿タイプ名」を追加していくだけです。

    たったこれだけで複数の投稿タイプを含めた人気記事一覧が表示できます。この設定は全記事の人気記事一覧にも適用されますから便利ですね。

    phpの構文とはちょっと違うなぁと思う方もいるかも知れませんが、ここで指定した文字列は単純にWPP(WordPress Popular Posts)のパラメーター値として与えるだけなのでこの書き方になるようです(私的には大変勉強になりました)。

    「WordPress Popular Posts」プラグインの閲覧View数を個別投稿やページ内、投稿一覧に表示する方法

    【WordPress】メディアアップローダーを使ってアップロードできる画像や添付ファイルの容量を増やすには

    【WordPress】パソコンやスマホにPush通知(更新通知)をしてアクセスアップ ~Push7の使い方~


    「Simplicity」のすばらしさについて

    他のテーマを使われている方がご覧になっていることを考えて、このテーマのすばらしさを

    で力説させていただいていますので、よかったら一読くださいね。

    ひまあーと(管理人)
    • 記事の作者: ひまあーと(管理人)

    • ☆最後までお読みいただきありがとうございました。記事作者のひまあーとです。
      ☆Wordpressでサイトをカスタマイズしていく上で有用な情報を配信しつつ、「ココナラ」でサイトカスタマイズのお手伝い、不具合の修復、サイト引っ越し代行などをさせていただいております。
      ☆Wordpressネタが多いですが、趣味の「園芸」「卓球」などの情報や日々の出来事などもどんどん増やしていきますのでよろしくお願いいたします。


    いつでもご相談・サイトカスタマイズの依頼を受け付けています

    Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

    ※一度もココナラを使ったことがない方はココナラへの無料登録が必要です。こちらから登録後、上のリンクをクリックする、またはココナラトップページから「ひまあーと」を検索してお問い合わせください。


    【スポンサーリンク】


    記事の拡散にご協力をお願いします

    閲覧いただきありがとうございました。役に立つ情報でしたら是非SNSでシェアをお願いします

    関連情報