前提・実現したいこと
メインサイト・サブドメインサイトにWordPressを設置し、サブドメインの更新内容をRSS Feedをメインサイトに表示したい。
発生している問題・エラーメッセージ
WPのバージョンアップに旧サーバーがPHP7に対応していなかったため、新プランのサーバーに移行、バックアップデータより復旧、WordPressを最新版に上げたところ、Feedが取得できなくなりました。
Error: Feed has an error or is not valid
以下のソースの他、プラグイン「RSS Import」での表示も試みましたが、上記旨エラー表示され、Feed表示されず
該当のソースコード
wordpress
1 2 3 <?php 4 include_once(ABSPATH . WPINC . '/feed.php'); 5 $rss = fetch_feed('http://subdomain.xxx.com/feed/'); // RSSのURLを指定 6 if (!is_wp_error( $rss ) ) : 7 $maxitems = $rss->get_item_quantity(3); // 表示する記事の最大件数 8 $rss_items = $rss->get_items(0, $maxitems); 9 endif; 10 ?> 11 <dl> 12 <?php 13 if ($maxitems == 0): echo '<dd>トピックスがありません</dd>'; 14 else : 15 date_default_timezone_set('Asia/Tokyo'); 16 foreach ( $rss_items as $item ) : ?> 17 <dd class="time"><?php echo $item->get_date("Y/n/j"); ?></dd> 18 <dd class="title"><a href='<?php echo $item->get_permalink(); ?>' title='<?php echo 'Posted '.$item->get_date('j F Y | g:i a'); ?>' target="_blank"><?php echo $item->get_title(); ?></a></dd> 19 <?php endforeach; ?> 20 <?php endif; ?> 21 </dl> 22
試したこと
・他WordPressサイトから出力されているRSS feedは正しく読み込み出力される。Yahoo RSSなども正常に読み込み出力される
・調査により、feed-rss2.phpを自前テーマに読み込み、function.phpにてそちらを参照するように変更
・サブドメインサイトから出力されているfeedと他サイトを比較すると content:encoded<![CDATA[<?php echo $content; ?>]]></content:encoded> の部分が出力されていないように見受けられる。投稿のcontentには内容は入力されている
補足情報(FW/ツールのバージョンなど)
ホスティングサービス 大塚商会アルファメール2
PHPバージョン : 7.2.6
メインサイト・サブドメインサイトともにWordPress 5.2.2
あなたの回答
tips
プレビュー