Cannot get add_feed to work

时间:2012-03-22 作者:Simon

我想在我的网站上添加一个用于SEO目的的自定义提要。

因此,我首先复制/wp includes/feed-rss2。php文件放入我的主题文件夹并重命名它。我想我可以很容易地编辑我的提要。

然后添加以下代码:

function yandex_news_feed() {
load_template(TEMPLATEPATH . \'/yandex-news.php\'); 
}

function yandexnews_add_feed() {
add_feed(\'do_feed_yandexnews\', \'yandex_news_feed\');
}

add_action(\'init\', \'yandexnews_add_feed\');
我尝试了多种方法并阅读了大量文档(几乎总是一样的,很多人会向代码中添加rewrite\\u规则,但这不是这里的问题)和源代码add_feed 告诉他们重写规则已经处理好了。

但是,无论如何,这根本不起作用,我在做http://infoglam.exigences.biz/?feed=yandexnewshttp://infoglam.exigences.biz/feed/yandexnews ; 这是一样的:空白页,空白,什么都没有。

请注意,如果自愿使用不正确的名称,如http://infoglam.exigences.biz/?feed=yandexnews5 我出错了ERROR: yandexnews5 is not a valid feed template. 所以看起来好像feed名称已经注册,但模板没有执行。

我有检查模板文件的权限,我尝试了使用和不使用do_feed_ ; 我试过了include 而不是load_template()

我想我最终可以在管理上使用一个带有空白页面的模板页面,但我发现这并不优雅——如果高效快速的话。我会在网站上使用几个feed,我真的不想处理空白页面,如果我在其他地方使用主题,我需要再次创建页面,最好让它与主题相关。

我想问题可能是加载模板,但现在我完全迷路了,找不到哪里做错了。

谁能帮我一下吗?

1 个回复
SO网友:Simon

代码正在运行:

add_feed(\'myfeed_rss2\', \'my_feed\');

function my_feed() {
add_filter(\'pre_option_rss_use_excerpt\', \'__return_zero\');
load_template( TEMPLATEPATH . \'/custom-feed.php\' );
}
RSS是上下文的:如果我添加?feed=myfeed_rss2 在索引url之后,这将告诉WP使用模板自定义提要显示主页的内容。php——它更像是一个过滤器,而不是其他任何东西。我从错误的角度考虑RSS。

如果我添加?feed=myfeed_rss2在类别页面url之后,它将显示带有模板自定义提要的类别页面。php。

我还没有找到从模板中修改查询的方法,这应该以不同的方式进行,即在主题中创建一个特殊页面,然后在其上调用RSS模板(例如,有一个50篇文章长的RSS提要)。

RSS模板只是内容的严格XML结构,能够使用PHP代码添加信息(如附件的文件长度,以字节为单位)。

ADDITIONALLY

如果人们试图使用/管理自定义提要,那么有一点非常重要:只有在修改/添加后才能创建/修改提要。直截了当地说,你必须发布一篇新文章(或者把一些旧文章作为草稿,做一些测试,然后重新发布,做一些测试…)检查对RSS模板所做的任何更改。

结束

相关推荐

更改RSS提要标题不起作用

我正在尝试更改我的RSS提要标题,以便提前显示帖子类型,但它不起作用。代码如下。有什么想法吗?谢谢function changeRSStitles($content) { global $post; if (get_post_type($post) == \'literature\') { $content = \'Literature: \'.$content; } else if (get_post_type($post) == \'reci