这里有一个想法,我们可以完全控制我们的新闻稿提要:
使用自定义帖子选择和拖放排序进行提要:
我们可以使用导航菜单UI,精确选择要在提要中显示的帖子,并使用拖放对其进行排序。
我们需要遵循以下两个步骤:
Step 1) 使用菜单名称创建菜单newsletter
在/wp-admin/nav-menus.php
页码::
我们将所有帖子添加到菜单中,我们需要将其包含在新闻稿中。
然后,我们使用菜单UI的拖放功能根据需要对其进行排序。
Step 2) 使用以下代码段:
/**
* Custom Newsletter Feed
*
* Supports drag/drop for feed items.
*
* Create a menu with the \'newsletter\' menu name and
* access the feed at /feed/?wpse_feed=newsletter
*
* @see http://wordpress.stackexchange.com/a/186121/26350
*/
add_action( \'pre_get_posts\', function( $q )
{
$menu = \'newsletter\'; // Our custom nav menu.
if( $q->is_feed()
&& $menu === filter_input( INPUT_GET, \'wpse_feed\' )
) {
$q->set( \'post__in\',
(array) wp_list_pluck(
wp_get_nav_menu_items( $menu ),
\'object_id\'
)
);
$q->set( \'orderby\', \'post__in\' );
$q->set( \'post_type\', \'any\' );
//-------------------------------------------------
// Modify the pubDate.
// Let the first post be created at midnight
// and then add 1 sec for each get_post_time() call
//--------------------------------------------------
add_filter( \'get_post_time\', function ( $time, $d, $gmt )
{
static $count = 0;
return date( $d, strtotime( \'midnight\' ) + $count++ );
}, 10, 3 );
}
} );
在这里,我们修改
pubDate
从午夜开始,然后我们在
get_post_time()
作用所以这些帖子都会有不同的
pubDate
这将与前一天不同。
然后,我们可以访问定制的新闻稿源,网址为:
http://example.tld/feed/?wpse_feed=newsletter
这可以扩展以支持更多定制提要,但希望您可以根据需要进行调整。