[WordPress]別のWPからサムネ付きでフィード持ってこよう

最終更新: 2022/07/26/公開: 2022/07/26

概要

  1. 目的が違う2つの管理しているサイトがある。
  2. Aで登録した、ある投稿タイプのフィードを1つだけBにも出しておきたい。
  3. PHPとJSで取ってくることにする。
  4. でもWPのRSSには標準ではサムネイルのURLが埋まっていない。
  5. 取得元のfunctions.phpに配信内容を追記したら解決する。

基本的な取得方法

ちょっと正確な言い回しじゃないかもしれないけど。
やり方はぐぐったらいっぱい出てきます。

PHP : simplexml_load_fileで指定のRSSの内容を加工、フィードのHTML内容を作る
JS : XMLHttpRequestを使って上記のphpファイルから取ってきたデータを指定の要素に代入・表示させる(ステータスがOKの時にDOM操作する感じ)

WPのRSSにサムネのデータを追記する

WordPressのRSSフィードに投稿サムネイルをXML要素として追加する方法

DiGiPress

functions.phpに上記サイトで紹介されている内容を追記。
諸々、配慮してくれての要素の構成でありがたかった。但し……

XML要素の名前にコロンが入ってたら取り出し方が不明

ここで詰まる。「media:content」のしかも属性「src」の中身???
どうする?と思って検索したら下記の通り。attributesメソッドがあるんだって……

$item->children(‘media’, true)->content->attributes()->url;

https://teratail.com/questions/348226

以上を組み合わせると実現可能でした

めったにぶち当たらないケースなんだけど案外ありそうなパターン。コンテンツはできればまとめたい。