WordPressが配信するRSSの著者欄をカスタマイズしたい

Feedly top page

こんにちはGoogleReaderが亡くなられてから、最近はもっぱらfeedlyが大活躍中です。

で、すごく別にどうでもよかったことなんですがfeedlyで自分の配信を眺めていたところブログタイトルの後に記事の作者欄が出ていることに気づきました。
もうwordpressを1年以上運用しているくせに今更知りました。。

今このブログって自分一人しか記事投稿する人いないので、これ出ないようにできないかなーと思いちょっと調べたのでエントリ。 

一人しか記事を投稿する人いないのに  by ◯◯ が邪魔

基本的にこのブログって自分でサーバー管理もして自分で記事書いてるだけなんで、、

 Rss reader author capture

こんな感じに 著者情報 を出さなくていいんじゃね? って思った。
これはwordpressの設定で、ユーザ > プロフィール > ニックネーム の設定が反映されてるだけっぽいので、ここをなんかうまい具合に変更して、別に表示されててもいいものにするっていう手もあり。

けど、今回はこれそのものでなくしたいのでなくしたんだけど、やり方が気合入ってる感じで絶対忘れて後で困るのでエントリ。 

RSSフィードのどこで出てるのか?

ちょとrssのURLを叩いて出力されてるXMLを見てみるんですが、いました。
こいつですね。きっと。 

Altarf net feed

この dc:creator タグの中をRSSリーダーさんは読んでるのでしょう。 たぶん

じゃーこれを消すには・・? と調べると

ソースを直接編集っぽい

wordpressのQAサイトで同じような人を発見。
Answerを見てみると、どうもソースを直接いじらないとダメっぽい。

http://wordpress.stackexchange.com/questions/47726/remove-or-edit-dccreatorin-feeds

ちょとめんどうだけど、少し追ってみる。

・出力している箇所
これ → wp-includes/feed-rss2.php

ためしに feed-rss2.php をバックアップしておいてこの中にある dc:creator の1行を削除してみる。
(77行目くらい)

<item>
     <title><?php the_title_rss() ?></title>
     <link><?php the_permalink_rss() ?></link>
     <comments><?php comments_link_feed(); ?></comments>
     <pubDate><?php echo mysql2date('D, d M Y H:i:s +0000', get_post_time('Y-m-d H:i:s', true), false); ?></pubDate>
     <dc:creator><![CDATA[<?php the_author() ?>]]></dc:creator> ← ここやね!
     <?php the_category_rss('rss2') ?>
     <guid isPermaLink="false"><?php the_guid(); ?></guid>

この行だよ〜 って言ってたので試しに削除してfeedのurlを叩いてみると。。

Altarf net feed

消えました。とうわけで、単純に削除したい場合は上記の行を削除しておけばいいっぽいです。
ただし、上記サイトを見ると 自分のテーマディレクトリにコピーしてきて、編集して、functions.phpで制御しろ的な事言ってます。
wp-include ディレクトリにある feed-rss2.php の do_feed_rss2 ってファンクションをremoveして
自分のテーマディレクトリにある feed-rss2.php を実行させるんですかね。 

wordpressをバージョンアップする際に wp-includeディレクトリの中身置き換えられちゃうからなのかな?
まぁいずれにせよ、やり方がわかったのでメデタシメデタシ。

なお、Answerで add_action と add_feed と 自分の出したいfeed のfunction にすげ替える方法が2パタン書かれていてどっちのほうがいいの?
OttoさんとBiranit さんで違う事書いてるのかな? どっちかにしてくれよ。 とか思いつつ、後者のほうがBetterだよ〜 なんて言ってるので、後者を採用する事にしてみた。

$ cd WP_ROOT_DIR
$ cp wp-includes/feed-rss2.php wp-content/themes/my_theme/
$ vi wp-content/themes/my_theme/feed-rss2.php ← さっきの行を削除
$ vi wp-content/themes/my_theme/functions.php ← 以下の処理を追加 

remove_all_actions( 'do_feed_rss2' );  
function create_my_custom_feed() {  
    load_template( TEMPLATEPATH . '/feed-rss2.php');  
}  
add_action('do_feed_rss2', 'create_my_custom_feed', 10, 1);

で、一応feedから著者情報が削除できました。
けどやり終わった最後に「てか著者情報入ってたほうがSEO的にいいのかな?」とか雑念がわいた次第です。
しばらくしたらまた復活させるかもーーー 

2013-11-17 | Posted in Word PressNo Comments » 


関連記事

Comment





Comment



*