RSSImport  wordpressにrssfeedを組み込む

rssimportは開発中止になって、現在はプラグインがダウンロードできない。localworkにプラグイン先にあるので、使うときはそれダウンロードして利用する

「RSSImport」は、RSSフィードを読み込んでサイトに表示できるプラグインです。プラグイン自体の設定等は一切なく、投稿記事に直接ショートコードを記入するか、テンプレートにPHPコードを記載することで利用することができます。

RSSImportのプラグインを有効化することも忘れずに!

固定ページに埋め込む記述

tomiso-info/top-recommend.php

<?php echo do_shortcode(‘[RSSImport display=”10″ feedurl=”http://cm-creation.net/yoshida/localwork/tomiso-info/feed/” before_date=”</br><small>” date=”true” after_date=”</small> date_format=”y/m/d”]’); ?>

https://seo.yawatama.com/wp-seo_rssimport/

ショートコードを表示させる記述は下記を参照

WordPress管理画面の固定ページや投稿ページでショートコードを呼び出すときは、[]で呼び出すことができる。

1
[ショートコードの文字列]

でも時々、テーマを自作している時、のPHPファイル内でショートコードを呼び出したい時もありますよね。
その時は、次のようにコードを書くと、ショートコードが実行されます。
簡単です!

1
<?php echo do_shortcode('[ショートコードの文字列]'); ?>

カスタマイズ方法

https://seo.yawatama.com/wp-seo_rssimport-2/

RSSImport:RSSを取得し投稿・固定ページやテーマ等で表示できる

https://tcd-theme.com/2014/08/rssimport.html

下記のコードをテンプレート内のfunction.phpの一番最後の行に付け足しておきましょう。これで、キャッシュ時間を30分(1,800秒)に変更することができます。下記のコード内の「1800」の数値を変更することで、キャッシュ時間を調整することも可能です。

add_filter( ‘wp_feed_cache_transient_lifetime’, create_function( ‘$a’, ‘return 1800;’ ) );

add_filter( 'wp_feed_cache_transient_lifetime', create_function( '$a','return 60;'));

https://rapurim.com/wordpress/11278/

wordpressのfeedが更新してもかわらない! RSSImport

tomiso-info

RSSImport を使って固定ページに投稿のfeedを表示させようとしたが、更新しても表示が変わらない。キャッシュクリアもだめ

別のブログのfeedをつかったら表示されるからRSSImportの設定はOK. 表示がかわらないとされる該当のtomiso-infoの投稿feedを feedwindや普段静的サイトで使っているrss.phpでチェックすると表示されるので、tomiso-infoのfeedもOKということになる。

マルチサイトのおおもとのサイト管理からネットワーク更新してもだめ。

wordpressを再インストールしたら表示された。

あと、もしかしたらテストサイトのlocalworkが検索にかからなくしていることは何か原因?

 

一応下記サイトにならってwordpressのRSSフィードの更新リクエストを早める設定をした。

 

rss.phpを編集して、キャッシュ保持時間を変更

以下のファイルを修正。
/wp-includes/rss.php

var $MAX_AGE	= 43200 // when are files stale, default twelve hours

初期設定では43200秒(12時間)になっているので、
これを1800(30分)に変更。
(0はさすがにサーバ負荷の関係でよろしくないらしい)

まぁでもテストのために一時的に0にして確認すると、
・・・更新されねー。

google先生の検索結果をもう一度見回すと、
対応方法色々あるみたい・・・

色々試して結局、次の方法でできました。

feed.phpを編集して、キャッシュ保持時間を変更

以下のファイルを修正。
/wp-includes/feed.php

wp_feed_cache_transient_lifetime’, 12 * HOUR_IN_SECONDS, $url

これを・・・

wp_feed_cache_transient_lifetime’, 1800, $url

こうして、おしまい。

WordPressは独自でキャッシュを管理しているから、
更新が反映されない時は疑わなくてはいけませんね。