我的网站首页上有一个特色帖子滑块。它显示n
类别中的帖子(目前有5篇)featured
. 如果我在该类别中有5篇文章,并发布了第6篇,那么这6篇文章中最老的一篇不会显示在滑块中或最近所有文章的列表下方。我现在的解决方案是转到所有帖子>发布>特色,选择一个取消特色,然后继续我的生活。
我会采纳更好的解决方案的建议(修复特色滑块可能是一个不错的回答),但我在这里寻找的是一种向所有帖子添加链接的方法,该链接将显示所有已发布的特色帖子。
我的网站首页上有一个特色帖子滑块。它显示n
类别中的帖子(目前有5篇)featured
. 如果我在该类别中有5篇文章,并发布了第6篇,那么这6篇文章中最老的一篇不会显示在滑块中或最近所有文章的列表下方。我现在的解决方案是转到所有帖子>发布>特色,选择一个取消特色,然后继续我的生活。
我会采纳更好的解决方案的建议(修复特色滑块可能是一个不错的回答),但我在这里寻找的是一种向所有帖子添加链接的方法,该链接将显示所有已发布的特色帖子。
首先,在你的图片中,你可以看到WordPress允许你按类别过滤帖子,只需大声说出你在图片中添加了什么,但是如果你想知道如何将自己的链接添加到过滤器中,你可以使用views_edit-post
过滤器挂钩ex:
add_action(\'pre_get_posts\', \'query_add_filter\' );
function query_add_filter( $wp_query ) {
if( is_admin()) {
add_filter(\'views_edit-post\', \'Add_My_filter\');
}
}
// add filter
function Add_My_filter($views) {
global $wp_query;
unset($views[\'mine\']);
$my_cat = YOUR-CAT-ID
$query = array(
\'author\' => $current_user->ID,
\'post_type\' => \'post\',
\'post_status\' => \'publish\',
\'cat\' => $my_cat
);
$result = new WP_Query($query);
$class = ($wp_query->query_vars[\'cat\'] == \'featured\') ? \' class="current"\' : \'\';
$views[\'publish_f\'] = sprintf(__(\'<a href="%s"\'. $class .\'>Publish Featured <span class="count">(%d)</span></a>\', \'publish featured\'),
admin_url(\'edit.php?post_status=publish&post_type=post&cat=\'.$my_cat),
$result->found_posts);
return $views;
}
你一定要换衣服YOUR-CAT-ID
到实际类别id我希望在我的首页上显示一些由以下标准确定的帖子:显示当月的所有帖子(实际上是从最近帖子对应的月份开始);但是如果这个数字少于(比如)8,那么就显示最近的8篇帖子。假设我知道每个月都不会有超过(比如)20篇文章,我会将posts\\u per\\u page设置为20,通常抓取最近的20篇文章,然后在php中进行适当的修剪(切片)。(在SQL中这样做似乎太复杂了)顺便说一句:起初我以为add_filter( \'posts_results\', ... ) 这很合适,但很难区分查询是与主循环相对应,还是与其