「Ninja RSS Syndicator」コンポーネント「ReDJ」エクステンションで/joomla/feedにリダイレクトされるように設定しました。

そのままでも良いのですが、フィードの中にあるフィード自身のURLを/joomla/feedにしたいところです。

また、フィードをATOMで作った場合には、記事の日付として出版日と更新日が表示されるのですが、そのまま使うと、「公開日」ではなくて「最初に作った日」が表示されてしまいます。都合が悪いので、改変します。

オーバーライド、もしくは直接編集

必要なファイルは、default.phpfeedcreator.class.phpです。オーバーライドを行うとhtmlフォルダ内にcom_ninjarsssyndicator/ninjarsssyndicatorディレクトリが作成され、その中に出てきます。

直接編集する場合には、components/com_ninjarsssyndicator/views/ninjarsssyndicator/tmplにあります。

フィードURLの変更

JURI::getInstance()とJRoute::_("index.php?.......")を使ってみたのですが、ReDJでリダイレクトさせているURLを取得することはできませんでした。

行き詰ったので、

if(strpos($rss->syndicationURL, "feed_id=1"))
{
$rss->syndicationURL = JURI::root()."feed";
}

でお茶を濁すことに・・・。何か変更した時には、覚えておいて編集しなくてはいけません。

pubdateの変更

こちらは簡単で、

$item->date = date("r",strtotime($row->dsdate));

の部分で、dsdateをpublish_upに書き換えるだけです。

// $item->date = date("r",strtotime($row->dsdate));
$item->date = date("r",strtotime($row->publish_up));

リアルタイムではない!?

フィードの更新がリアルタイムになりません。原因は、キャッシングのプラグイン「JotCache」です。

JotCache上でcom_ninjarsssyndicatorをキャッシュしないように設定するとキャッシュされずにリアルタイムに更新できます。できるはずで、別サイトではできているのですが、何故かJoomla日記ではキャッシングされてしまいます。