没有所谓的捷径
一切都是时间最平凡的累积

wordpress文章根据时间批量添加修改内容【豫章小站原创】

本文最后更新:2019年8月6日,已超过1956天未更新,如果文章内容失效,请留言反馈本站。

相信有很多站长朋友有时候都有批量修改更新文章的需求,网上也可以搜索到很多类似教程,本文介绍的是在原有文章后添加内容,可以根据时间来筛选。

如果是批量替换内容,可以参考:WordPress 批量修改文章信息 (本文介绍有替换)。

功能说明:

筛选一定时间范围发布的文章,给这些文章都添加上版权信息,文章添加修改后效果图如下。

代码如下,将代码保存为up.php文件,上传到网站根目录,然后直接访问这个文件即可,可根据自己需求修改补充,执行前建议查看代码后部分的说明,建议先导出备份mysql数据。

<?php   
      include ( "wp-config.php" ) ; 
      require_once (ABSPATH.'wp-blog-header.php'); 
      global $wpdb; 
	 //按时间范围检索文章,列出ID
$where = "SELECT ID FROM wp_posts WHERE post_type = 'post' AND post_status =  'publish' AND post_date >= '2019-08-04' AND post_date <= '2019-08-06'";
$myrows = $wpdb->get_results($where);
      foreach ($myrows as $b) { 
	  $a=$b->ID;
	  /* 
           //这段注释根据需要是否使用。
           $aa[]=$a; //获取ID存放在aa数组
	  }
	  //array_slice函数分割,从第10个数组后截取
	  $output = array_slice($aa,10);
	  foreach ($aa as $bb) {	 
	echo get_post( $bb )->post_title;
      */
	//get_post根据ID获取文章标题【豫章小站原创文章】
	$title_name=get_post( $a )->post_title; //如果考虑上面的截取,这里的$a改成$bb,下面的$a都要改成$bb
	echo $title_name;
    $content= "<blockquote>";
    $content.= '<div>&raquo; 转载请保留出处:<a title="豫章小站" target="_blank" href="https://blog.mydns.vip">豫章小站</a>&raquo; <a rel="bookmark" title="'.$title_name.'" href="https://blog.mydns.vip/'.$a.'.html">《'.$title_name.'》</a></div>';
    $content.= '<div>&raquo; 本文链接地址:<a rel="bookmark" target="_blank" title="'.$title_name.'"href="https://blog.mydns.vip/'.$a.'.html">https://blog.mydns.vip/'.$a.'.html</a></div>';
    $content.= '<div> &raquo; 如果喜欢可以:<a title="订阅豫章小站" target="_blank" href="https://blog.mydns.vip/feed">点此订阅本站</a></div>';
    $content.= "</blockquote>";
  //content内容执行加到文末
 $sql ="UPDATE wp_posts SET post_content= CONCAT(post_content,'$content')  WHERE id= '$a'";
 //echo $sql."</br>"; //输出sql语句,如果要查看,取消这行注释
 $wpdb->query($sql); //如果要查看输出sql是否正确,注释这行
	 }
	
?>

执行前建议先输出SQL查看下是否是自己需要的,比如本示例输出结果如图所示:

总结说明:

1、$where语句中的post_date是整天型的,AND post_date >= '2019-08-04' AND post_date <= '2019-08-06'  就是5号这天发布的文章。

2、get_post方法可以获取到很多信息,可以参考:WordPress调用指定ID文章,get_post()方法简单介绍,可以根据自己需要来调整想要获取到的数据,本示例用post_title获取文章标题。

3、$content可以定义为自己想要添加的内容。

4、建议执行前建议先注释$wpdb->query($sql),先用echo $sql."</br>";输出查看下sql语句是否是自己想要的。

5、执行前一定要导出备份数据库,避免改错以后非常麻烦。

6、有能力的站长可以举一反三,$where可以换成其他语句,比如根据栏目ID获取文章, $sql 也可以更换为其他的语句执行。

» 站长码字辛苦,有用点个赞吧,也可以打个
» 若转载请保留本文转自:豫章小站 » 《wordpress文章根据时间批量添加修改内容【豫章小站原创】》
» 本文链接地址:https://blog.mydns.vip/2216.html
» 如果喜欢可以: 点此订阅本站 有需要帮助,可以联系小站
赞(1) 打赏 【豫章小站原创文章】
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@mydns.vip。文章观点不代表本站立场。本站原创内容未经允许不得转载,或转载时需注明出处:豫章小站 » wordpress文章根据时间批量添加修改内容【豫章小站原创】
分享到: 更多 (0)

评论 抢沙发


  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

智慧源于勤奋,伟大出自平凡

没有所谓的捷径,一切都是时间最平凡的累积,今天所做的努力都是在为明天积蓄力量

联系我们赞助我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏