有一个add_feed()
作用您可以通过第二个回调参数向其传递一个函数。因此,类似这样的方法应该有效:
add_action( \'init\', \'wpse102646_all_items_feed\' );
function wpse102646_all_items_feed() {
add_feed( \'allposts\', \'wpse102646_get_all_items\' );
}
function wpse102646_get_all_items() {
$args = array(
\'numberposts\' => -1,
\'post_type\' => \'post\',
\'post_status\' => \'publish\',
);
$posts = get_posts( $args );
$feed = \'\';
global $post;
foreach( $posts as $post ) {
$feed .= get_the_title();
$feed .= get_the_content();
}
return $feed;
}
此代码未经测试
还有,我不完全确定return $feed;
是所需的add_feed()
, 或者如果你应该echo( $feed );
. 我怀疑是前者。
此外,任何时候您更改add_feed()
代码,您需要刷新永久链接。建议的方法是转到Settings » Permalinks 和Save 您现有的永久链接结构。
参考法典: