自定义RSS提要覆盖固定链接

时间:2021-06-08 作者:HarrisonFM

我正在尝试为带有元字段的附件设置自定义RSS提要。我成功地制作了feed,但是它现在覆盖了实际的站点内容。

add_action( \'init\', \'add_custom_feed\' );
function add_custom_feed() {
  add_feed( \'photos\', \'render_photos_feed\');
}
function render_photos_feed() {
  //WP_Query for attachment
  get_template_part( \'rss\', \'photos\' );
}
我对在这里创建url的确切位置知之甚少。我期待的是example.com/photos/feedexample.com/feed/photos. 我正在example.com/feed/photos 但同时example.com/photos, 这就是显示我的照片的页面所在的位置。我可以刷新永久链接并关闭此提要的操作并呈现我的页面,但当它联机时,我可以在其永久链接的照片页面上看到photos-2. 我在网上找不到任何关于为什么会发生这种情况的文档。

我真的不想为这些创建CPT,添加复选框的工作流程非常简单&;减少后端噪音,WP查询工作正常。其次,我还想知道是否有可能将主提要更改为posts&;照片。我不能因为feed WP\\u查询是OR逻辑(get posts或attachment w/meta value),就劫持它。任何想法都是受欢迎的。

1 个回复
最合适的回答,由SO网友:Serkan Algur 整理而成

您可以使用feed/photos 具有add_feed. 此规则将防止覆盖永久链接问题。像下面这样更改您的函数并刷新重写规则。

add_action( \'init\', \'add_custom_feed\' );
function add_custom_feed() {
  add_feed( \'feed/photos\', \'render_photos_feed\');
}
function render_photos_feed() {
  //WP_Query for attachment
  header("Content-type: text/xml"); // Added for XML output
  get_template_part( \'rss\', \'photos\' );
}