1 |
<title>最近,気になったこと...最近,気になったこと...</title> |
というように 2 重になっています。新サイトを再登録してもらう時に、こんなタイトルになっていたら残念すぎるので、調べてみたところ、どうみてもコードがおかしい気がします。
これを修正するために初めて WordPress のコードを読んでみました。
なお、このエントリには後日談(プラグインの相性に問題があった)がありますが、今日のところはこの問題にフォーカスしてお届けしたいと思います。
ソースを探してみた
WordPress 3.4.1 のコードです。wp-content/wp-include/feed-rss2.php に以下のようなコードがあります。
23 24 25 |
<channel> <title><?php bloginfo_rss('name'); wp_title_rss(); ?></title> <atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" /> |
この title というフィールドに bloginfo_rss(‘name’) でタイトルを差し込んでいて、その後に wp_title_rss(); でもタイトルを差し込んでいる模様。
修正の方法
仕方ないので、この処理を直接直してしまいましょう。
23 24 25 |
<channel> <title><?php bloginfo_rss('name'); ?></title> <atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" /> |
直すといっても、wp_title_rss(); を外すだけです。同じ処理がいくつものファイルに入っているので、全部直します。
- wp-content/wp-include/feed-atom.php
- wp-content/wp-include/feed-rdf.php
- wp-content/wp-include/feed-rss.php
- wp-content/wp-include/feed-rss2.php
コメントのフィードにも同じ様なコードがありましたが、これは使わないのでそのまま。
ちなみに、wp-include の下は子テーマの下に編集したものを入れても有効になりませんので、コアコードを直接直す必要があります。
安全のためバックアップしてから修正しましょう。
WordPress 関連のエントリ
インストールや設定変更とデータ移行
プラグイン
バージョンアップ
カスタマイズ
Stinger 3関連
チューニング
MAMPを使ったバックアップサイトの構築
開発関連
最後まで読んでいただきありがとうございます。
左のアイコンをクリックして、このブログを Feedly に登録していただけると嬉しいです
Facebook ページでも情報を発信していますのでよろしかったら「いいね!」をお願いします
RSSリーダへの登録は こちら からどうぞ。
同じような不具合にあたった悩んでいたところ
こちらの記事にたどり着きました。
もう、全く同じ状況です。
ご指摘のとおり「wp_title_rss(); 」を外したのですが、直りません。
ただ、以下の一文のところが理解できずに困っています。
「wp-include の下は子テーマの下に編集したものを入れても有効になりません」
この点について教えていただけないでしょうか?
昨年の記事への質問ですが、よろしくお願いします。
お返事が遅れてすみません。
wp_title_rssの問題ではなく、他のプラグイン(例えば All-in-One-SEO など)との関係である可能性もあります。こちらの記事も参考になれば。
もう一つご質問いただいている「wp-include の下は子テーマの下に編集したものを入れても有効になりません」という記述ですが、確かに分かりにくいですね。すみません。
子テーマを作る際に、wp-include 配下のファイルを子テーマのディレクトリに配置しても有効にならないので、オリジナル wp-include を直接編集しないと有効になりません、という意味で書きました。
とはいえ、こちらの編集の前に他のプラグインとの相性などをチェックされることをオススメします。