如何将所有帖子归入一个类别?

时间:2015-06-19 作者:Damith

我需要将所有当前帖子归入一个名为“过去帖子”的类别。我找不到做这件事的方法。我有250多个帖子。所以我不能手动操作。

1 个回复
SO网友:shuvroMithun

第一次查询所有帖子

$args = array(
    \'post_type\'         =>\'posts\',
    \'post_status\'       =>\'publish\',
    \'posts_per_page\'    =>-1

);
$query = new WP_Query($args);
$post_ids = array();
if($query->have_posts()){
    while ($query->have_posts()){
        global $post;
        $query->the_post();
        array_push($post_ids,$post->ID);
    }
}
现在有一个名为$post_ids 其中包含所有帖子的id。

现在,更改类别

循环遍历数组并更改类别

$post_categories= array(\'Past Posts\');
foreach ($post_ids as $key => $post_ID) {
    if(!in_category(\'Past Posts\')){
        wp_set_post_categories( $post_ID, $post_categories, true );
    }
}
如果要附加类别,请设置wp_set_post_categories 如果要替换,则将其设为false。

将此代码放入函数中。php,您可以在工作完成后删除此代码

结束

相关推荐

向GET_CATEGORIES下拉列表添加自定义选项

我有一个下拉菜单,用于在我正在处理的小部件中选择类别。一切正常,选项保存在数据库中。我现在要做的是添加一个空白选项,而不是在单击“保存”时自动设置。在这种情况下,用户可能不想设置类别。 $this->categories = get_categories(); foreach ( $this->categories as $cat ) { $selected = ( $cat->term_id == esc_att