
マルチサイト運営のメリットの一つとして、
マルチサイト管理下にある複数のサイト上では、記事の相互表示が容易になるということがあげられます。
目次
別サイトからの記事情報の取得について
通常、WordPressのサイト上で別のWordPressサイトの記事を取得・表示しようとすると、RSS feedを使った取得になります。
タイトルとリンクを貼る程度ならRSS feedでも十分なのですが、RSS feedでの取得では、サムネイル画像の取得ができない、カスタムフィールド値が取得できない、といった制限があるため、できるデザインに限りが出てきてしまいます。
独立した複数のWordPressサイトで、外部サイトのサムネイルなどのRSSでは取得が難しい値も取得したい場合は、対象サイトのデータベースアクセスの記述から行う大規模な制作が必要になっていまします。
しかし、マルチサイト化では、
サイト同士が別物であったとしてもデータベース自体は共有しているため、
簡単にすべての記事情報の取得・表示が実現できるのです。
マルチサイト同士の記事の取得・表示手順
サイトのIDを調べる
まずは、取得先のマルチサイトのサイトIDを調べる必要があります。
サイトIDを調べるために、まずはマルチサイトの管理画面メニューの「サイト」→「すべてのサイト」をクリックします。
現在運営しているサイトの一覧が表示されるので、
取得先サイトを選択して「編集」をクリックします。
編集画面が開かれると、
ページのURLの末尾に「?id=●●」という記載が確認できます。
この「●●」の部分がサイトIDになります。
テンプレートに外部記事取得プログラムを記述する
サイトIDが判明したら、
いよいよテンプレートに外部記事取得用のプログラムを記述していきます。
PHP
HTMLとCSSでデザインを整える
上のソースコードの「/* ここに記事表示プログラムを記述 */」の部分に、HTMLとPHPで表示用プログラムを記述し、CSSでデザインを整えます。
表示プログラムサンプル
CSSプログラムサンプル
【応用編】マルチサイトで別サイトかつ指定したカテゴリーの記事を表示する
上の例は、マルチサイトの別サイトの記事を全カテゴリーの最新数件を取得するプログラムでした。
ここではその応用として、
マルチサイトの別サイトの記事のうち、指定したカテゴリーIDに一致する記事のみを取得するプログラムを紹介します。
記事取得を行なっているSQLの部分を以下のように変更することで、マルチサイトのIDとカテゴリーIDを指定した記事の一覧が表示できるようになります。
他サイトからカテゴリーを限定した記事一覧を表示するSQL