SQL将一个作者的旧帖子批量移动到另一个类别

时间:2013-05-16 作者:Paul Thomson

我想把一个作者的一些旧帖子从一个类别转移到另一个类别,希望有人能帮我做到这一点?

我想最简单的方法是通过SQL命令?

我知道你可以通过帖子编辑器屏幕批量“移动”帖子,但这只会添加另一个类别,实际上不会移动帖子。有许多不同的插件可以批量移动帖子,但它们都不允许您选择特定的用户和日期。

本质上,我正在努力实现:

选择ID为2的用户的所有帖子IF 发布before 2012年2月15日AND 在类别XYZ中THEN 请转到ABC类,如有任何帮助,将不胜感激。

1 个回复
SO网友:Core

尝试以下操作:

global $wpdb;
$from_user = 2;
$to_user = 5;
$posts_table = $wpdb->prefix . \'posts\';
$users_table = $wpdb->prefix . \'users\';
$strQuery = "UPDATE `$posts_table` SET post_author = $to_user WHERE post_author = $from_user AND $posts_table.post_date < \'01/01/2013\' AND $wpdb->term_taxonomy.term_id IN (1,2,3) AND $wpdb->term_taxonomy.taxonomy = \'category\'";
echo $strQuery;
$wpdb->query($strQuery);

For more info please visit this link

Edit根据时间、作者和帖子,将所有帖子从一个类别移至另一个类别

$args = array(  
                \'category_name\' => \'Category 1\', 
                \'author_name=\' => \'Noor Ahmad Feroozi\',
                \'year\' => date(\'Y\'),
                \'month\' => date(\'n\')
              );

$posts = new WP_Query( $args );
if ( $posts->have_posts() ) : while ($posts->have_posts()) : $posts->the_post();
    wp_set_object_terms(get_the_ID(), \'Category 2\', \'category\');
endwhile; endif;

结束

相关推荐

WordPress页面的自定义SQL查询

我对wordpress很陌生。我正在尝试在wordpress页面中构建tableview。因此,我需要对MySQL数据库进行自定义SQL查询。从my MySQL数据库查询数据以HTML格式获取结果,以便在wordpress页面的表视图中显示我的问题是:如果不能在页面中放置php代码,那么如何在wordpress页面中使用wpdb\\u类?