Hima Art Utility

複数サイト混在の新着情報を表示させるショートコードの使い方

このショートコードを使うと、指定した複数のサイトから投稿を取得し、混合した上で日付順に並び替えて表示させることができます。

ショートコードの種類により、以下のリストを作成できます。

  • アイキャッチ画像付き(カード形式)のリスト
  • アイキャッチ画像なし(単純な形式)のリスト

ショートコードの使い方

アイキャッチ画像付きショートコード

ショートコード

以下のショートコードを使ってアイキャッチ画像付きのリストを表示できます。

[ha-latest-posts-with-thumbnails sites="" number="" order_by="" display_count="" cache_time="" datetext="" des="" offset="" size="" column=""]

以下がショートコード内のパラメーターと説明ですので適切に設定してください。

パラメーター説明省略した場合の値
sites情報を取得するサイトのトップページURLを「,」区切りで指定します
※URL末尾の「/」はなしにしてください
自サイト
number各サイトから取得する情報の数を指定します5
display_count表示させる数を指定します
※サイト数x取得数がこの値よりも大きくなるようにします
5
order_by「公開日(date)」「更新日(modified)」のどちらで並び替えるかを指定しますmodified
cache_time取得した情報を一時保存する期間を秒単位で指定します3600
datetext日付の接頭辞を文字列(0または空白)にするか、アイコン(1)にするかを指定しますなし(文字列)
des抜粋を表示する場合は1を指定しますなし(抜粋表示なし)
offset先頭から〇番目からの情報を表示させたい場合に指定しますなし(すべて)
sizeカードの形態を指定します
空白または「small」/小画像カード
「large」/大画像カード
※モバイルでは設定に関わらず大画像カードで表示されます
small
columnカード表示させる列の数を指定します
※4列表示まで対応しています
1

パラメーターの値を変更しても表示に反映されない場合は「cache_time」を一旦「0」に指定して保存するとキャッシュがクリアされ、更新されます

表示サンプル

大カードで最終更新日を基準に2列表示させた場合の表示サンプルです

    小カードで公開日を基準に2件表示させた場合のサンプルです

      アイキャッチ画像なしショートコード

      ショートコード

      以下のショートコードを使ってアイキャッチ画像なしのリストを表示できます。

      [ha-latest-posts-simple sites="" number="" order_by="" display_count="" cache_time="" datetext="" des="" offset=""]

      以下がショートコード内のパラメーターと説明ですので適切に設定してください。

      パラメーター説明省略した場合の値
      sites情報を取得するサイトのトップページURLを「,」区切りで指定します
      ※URL末尾の「/」はなしにしてください
      自サイト
      number各サイトから取得する情報の数を指定します5
      display_count表示させる数を指定します
      ※サイト数x取得数がこの値よりも大きくなるようにします
      5
      order_by「公開日(date)」「更新日(modified)」のどちらで並び替えるかを指定しますmodified
      cache_time取得した情報を一時保存する期間を秒単位で指定します3600
      datetext日付の接頭辞を文字列(0または空白)にするか、アイコン(1)にするかを指定しますなし(文字列)
      des抜粋を表示する場合は1を指定しますなし(抜粋表示なし)
      offset先頭から〇番目からの情報を表示させたい場合に指定しますなし(すべて)

      パラメーターの値を変更しても表示に反映されない場合は「cache_time」を一旦「0」に指定して保存するとキャッシュがクリアされ、更新されます

      表示サンプル

        ショートコード使用時の注意事項

        本ショートコードを使用する上での注意点です。

        REST APIに制限のかかっているサイトからの情報は取得できません

        このショートコードでは、REST APIというWordPressの情報共有機能を利用して、サイトの投稿データを取得します。

        従って、何等かの方法(セキュリティ系のプラグインやカスタムコード)によってREST APIを通じた情報の取得を遮断しているサイトでは利用できません。

        ショートコードを挿入し、適切に設定を行ってもリストが表示されない(またはエラーが吐き出される)場合には、取得元のサイトでREST APIが遮断されていないかを確認ください(よく分からない場合はこのショートコードを使用しないでください)。

        エラーや不具合等が発生する可能性について

        本機能およびHima Art Utilityプラグイン全般に言えることですが、あくまでも私の管理するサイトでテストしたものであり、サイトの状態(作り方)により情報が取得できない場合にはエラーが出る可能性があります。

        一応以下のようにエラー回避をするようにはしています。

        • sitesパラメーターが空の場合は自サイトのホームURLが取得されるようにしています
        • 一部のパラメーターがショートコード上になくてもデフォルト値がセットされるようにしています
        • 大カード時にアイキャッチ画像を取得する際には、まず「large」サイズの画像を取得するようにし、そのサイズの画像が存在しない場合には「medium」サイズの画像が取得されるようにしています
        • スタイルが調整しにくいことと、普通に考えてあまり多くの列数に対応させる必要はないと判断し、列数の指定は4までとし、5以上の数が指定された場合には1列として表示させるようにしています

        スタイルについては、ブロックテーマであるTwenty Twenty Threeテーマ、およびそれをフォークしたテーマで本文幅をいくつか変えてチェックをしていますが、同一テーマや別のテーマ(特にクラシックテーマ)では、うまく表示されない場合があります。

        データベースキャッシュについて

        REST APIではこのショートコードが含まれたページを表示する度に、指定されたサイトから指定数分の情報を取得します。

        これにより、ショートコードに指定したサイトの数分だけこの作業が繰り返され、取得元および表示するサイトの状態(サーバーの状態や性能など)によっては表示までに時間がかかったり、エラーとして処理がストップしてしまうことがあります。

        本ショートコードでは、一度取得したデータをある程度の期間データベース内に保存し、期間内は保存したデータを元に表示させるようにすることで、表示時間の短縮を図っています(何も指定しなければ3600秒 = 60分)。

        表示速度を犠牲にしてまで最新の情報を常時取得したいというケースは少ないとは思いますが、「cache_time」パラメーターをより少ない数字(または0でキャッシュなし)にすることで、より最新に近いデータを取得して表示させることができます。

        ただし、前述したようにキャッシュ期間を減らすことで、表示させる側、取得される側のサーバーに負荷がかかることは間違いないのでご注意ください。

        コメントを残す

        メールアドレスが公開されることはありません。 が付いている欄は必須項目です

        ※リンクやURLの挿入されているコメントは無視します