求教如何修改wordpress默认RSS地址

2011-05-26 16:22:12 +08:00
 Kangqiao
WP默认的RSS地址是类似这样的地址:http://xxx.com/feed

想修改为第三方RSS托管服务的地址,比如二级域名 http://feed.xxx.com

在网上找了半天教程,都是说去修改主题的header.php文件中下面这一行

<link rel="alternate" type="application/rss+xml" title="xxx &raquo; Feed" href="http://xxx.com/feed" />

我看了下现在用的主题oulipo的header.php文件中没有这一行......

但是查看网页源码是有这一行的,应该是WP自带的文件中的代码吧,求指教,多谢!
6748 次点击
所在节点    问与答
15 条回复
TONYHEAD
2011-05-26 16:35:47 +08:00
oulipo里的header.php应该是这里(第10行)

<link rel="EditURI" type="application/rsd+xml" title="RSD" href="<?php bloginfo('url'); ?>/xmlrpc.php?rsd" />

改成

<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://feed.xxx.com/" />

看看
Kangqiao
2011-05-26 16:42:35 +08:00
@TONYHEAD thx... 我试了一下,没有更改默认RSS地址
TONYHEAD
2011-05-26 16:54:24 +08:00
你好像用了CACHE,在后台刷新一下CACHE再看看。
tomyiyun
2011-05-26 17:01:26 +08:00
很多主题是写入数据库的,在后台看看有没有选项~~
Kangqiao
2011-05-26 17:03:09 +08:00
@TONYHEAD 我设置的是对已登录用户不缓存的,现在刷新了下也一样... 郁闷。feed burner和feedsky本来都有可以修改默认RSS地址的插件的,但是随着WP升级都失效了...
Kangqiao
2011-05-26 17:08:54 +08:00
@tomyiyun 看了下,wp_options里面木有... WP后台也木有相关的主题选项
TONYHEAD
2011-05-26 17:11:02 +08:00
现在我看到的版本是修改好了的。

<!-- Cached page generated by WP-Super-Cache on 2011-05-26 17:01:28 -->
Kangqiao
2011-05-26 17:16:22 +08:00
@TONYHEAD 只是那一句代码修改好了,但是不起作用。

你查看下网页源代码,这一句仍然是

<link rel="alternate" type="application/rss+xml" title="巴赫門徒 &raquo; Feed" href="http://kangqiao.info/feed" />

默认的RSS地址仍然是http://kangqiao.info/feed,在GR中直接输入blog地址得到的也是这个FEED地址。
Kangqiao
2011-05-26 17:22:12 +08:00
看到个.htaccess文件重定向的方法,我去试一下...
TONYHEAD
2011-05-26 17:41:20 +08:00
@Kangqiao 对不起我错了,关于上面的第10行请保留原样,是支持外部编辑器的接口地址。

请用一些改写内置feed地址的插件或者用重定向吧。
Kangqiao
2011-05-26 19:01:01 +08:00
@TONYHEAD 重定向那个倒是成功了,不折腾了。谢谢。 :)
Semidio
2011-05-26 20:10:25 +08:00
@Kangqiao 重定向建议使用插件,并设置你的第三方RSS的为例外,否则将第三方无法获取更新。
否则会变成:第三方RSS——获取——》WordpressRSS地址——重定向——》第三方地址,这样的自我循环。
Kangqiao
2011-05-27 13:59:30 +08:00
@Semidio 多谢提醒,确实会有这样的循环,去掉了重定向的代码。
est
2011-05-27 14:30:04 +08:00
vim wp-includes/general-template.php 修改322行这里:


case 'rss2_url':
$output = "http://feeds.feedburner.com/initiative"; //原来是 get_feed_link('rss2');


Wordpress 2.9.X有效,3.X未知。
Kangqiao
2011-05-27 15:01:02 +08:00
@est 这么修改没用了呢,我看了下general-template.php,觉得可能是在2200行左右,可是我看不懂这些代码...............

/**
* Creates the generator XML or Comment for RSS, ATOM, etc.
*
* Returns the correct generator type for the requested output format. Allows
* for a plugin to filter generators on an individual basis using the
* 'get_the_generator_{$type}' filter.
*
* @since 2.5.0
* @uses apply_filters() Calls 'get_the_generator_$type' hook.
*
* @param string $type The type of generator to return - (html|xhtml|atom|rss2|rdf|comment|export).
* @return string The HTML content for the generator.
*/
function get_the_generator( $type = '' ) {
if ( empty( $type ) ) {

$current_filter = current_filter();
if ( empty( $current_filter ) )
return;

switch ( $current_filter ) {
case 'rss2_head' :
case 'commentsrss2_head' :
$type = 'rss2';
break;
case 'rss_head' :
case 'opml_head' :
$type = 'comment';
break;
case 'rdf_header' :
$type = 'rdf';
break;
case 'atom_head' :
case 'comments_atom_head' :
case 'app_head' :
$type = 'atom';
break;
}
}

switch ( $type ) {
case 'html':
$gen = '<meta name="generator" content="WordPress ' . get_bloginfo( 'version' ) . '">';
break;
case 'xhtml':
$gen = '<meta name="generator" content="WordPress ' . get_bloginfo( 'version' ) . '" />';
break;
case 'atom':
$gen = '<generator uri="http://wordpress.org/" version="' . get_bloginfo_rss( 'version' ) . '">WordPress</generator>';
break;
case 'rss2':
$gen = '<generator>http://wordpress.org/?v=' . get_bloginfo_rss( 'version' ) . '</generator>';
break;
case 'rdf':
$gen = '<admin:generatorAgent rdf:resource="http://wordpress.org/?v=' . get_bloginfo_rss( 'version' ) . '" />';
break;
case 'comment':
$gen = '<!-- generator="WordPress/' . get_bloginfo( 'version' ) . '" -->';
break;
case 'export':
$gen = '<!-- generator="WordPress/' . get_bloginfo_rss('version') . '" created="'. date('Y-m-d H:i') . '" -->';
break;
}
return apply_filters( "get_the_generator_{$type}", $gen, $type );
}

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/13555

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX