V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Kangqiao
V2EX  ›  问与答

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

  •  
  •   Kangqiao · 2011-05-26 16:22:12 +08:00 · 6746 次点击
    这是一个创建于 4929 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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自带的文件中的代码吧,求指教,多谢!
    15 条回复    1970-01-01 08:00:00 +08:00
    TONYHEAD
        1
    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
        2
    Kangqiao  
    OP
       2011-05-26 16:42:35 +08:00
    @TONYHEAD thx... 我试了一下,没有更改默认RSS地址
    TONYHEAD
        3
    TONYHEAD  
       2011-05-26 16:54:24 +08:00
    你好像用了CACHE,在后台刷新一下CACHE再看看。
    tomyiyun
        4
    tomyiyun  
       2011-05-26 17:01:26 +08:00
    很多主题是写入数据库的,在后台看看有没有选项~~
    Kangqiao
        5
    Kangqiao  
    OP
       2011-05-26 17:03:09 +08:00
    @TONYHEAD 我设置的是对已登录用户不缓存的,现在刷新了下也一样... 郁闷。feed burner和feedsky本来都有可以修改默认RSS地址的插件的,但是随着WP升级都失效了...
    Kangqiao
        6
    Kangqiao  
    OP
       2011-05-26 17:08:54 +08:00
    @tomyiyun 看了下,wp_options里面木有... WP后台也木有相关的主题选项
    TONYHEAD
        7
    TONYHEAD  
       2011-05-26 17:11:02 +08:00
    现在我看到的版本是修改好了的。

    <!-- Cached page generated by WP-Super-Cache on 2011-05-26 17:01:28 -->
    Kangqiao
        8
    Kangqiao  
    OP
       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
        9
    Kangqiao  
    OP
       2011-05-26 17:22:12 +08:00
    看到个.htaccess文件重定向的方法,我去试一下...
    TONYHEAD
        10
    TONYHEAD  
       2011-05-26 17:41:20 +08:00
    @Kangqiao 对不起我错了,关于上面的第10行请保留原样,是支持外部编辑器的接口地址。

    请用一些改写内置feed地址的插件或者用重定向吧。
    Kangqiao
        11
    Kangqiao  
    OP
       2011-05-26 19:01:01 +08:00
    @TONYHEAD 重定向那个倒是成功了,不折腾了。谢谢。 :)
    Semidio
        12
    Semidio  
       2011-05-26 20:10:25 +08:00
    @Kangqiao 重定向建议使用插件,并设置你的第三方RSS的为例外,否则将第三方无法获取更新。
    否则会变成:第三方RSS——获取——》WordpressRSS地址——重定向——》第三方地址,这样的自我循环。
    Kangqiao
        13
    Kangqiao  
    OP
       2011-05-27 13:59:30 +08:00
    @Semidio 多谢提醒,确实会有这样的循环,去掉了重定向的代码。
    est
        14
    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
        15
    Kangqiao  
    OP
       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 );
    }
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2348 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 15:54 · PVG 23:54 · LAX 07:54 · JFK 10:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.