文章自动采集(每天60秒读懂世界,WPCrontrol插件需要先随便创建 )

优采云 发布时间: 2021-12-27 20:17

  文章自动采集(每天60秒读懂世界,WPCrontrol插件需要先随便创建

)

  找了个博客,每天定期发布《每天60秒了解世界》。我发现类似的内容似乎采集

得很好。我采集

了一段时间。效果真的很好。它经常达到分钟级别,但那个博客坏了!!!

  以下代码是昨天仔细研究wordpress文章的相关表格和字段后完成的。经过测试,新内容于凌晨1点成功发布!现在免费分享给大家!

  代码是你需要支付5福币。在本站注册并登录,即可获得5福币购买。

  注意

  这段代码会在/wp-content/uploads目录下创建一个名为60s的目录,用于存放图片。

  这段代码会自动创建文章分类(每天60秒看世界)并创建标签(每天60秒看世界/每天60秒/60秒/看世界/每天60秒)

  如果在创建分类后点击首页的分类,分类下的文章将不会显示,需要在后台编辑并保存分类(无需修改内容)

  WP Crontrol插件需要随机创建一个任务,然后在事件类型改为PHP cron event时修改任务添加PHP代码

  使用教程

  下载WP Crontrol插件,该插件用于发布定时任务,下载链接

  

  2.在任务中加入如下代码,注意插件相关的配置信息

  

  关于API

  代码中的API为知乎接口处理,包括标题、内容处理、图片裁剪(原图有水印)等。

  了解界面:

  global $wpdb;date_default_timezone_set('PRC');$post_tag_arr = array();//先检查文章分类是否存在$term_taxonomy_id = $wpdb->get_row("SELECT tt.term_taxonomy_id from $wpdb->terms t join $wpdb->term_taxonomy tt on t.term_id = tt.term_id where t.name = '每天60秒读懂世界' and tt.taxonomy = 'category' ")->term_taxonomy_id;if(!$term_taxonomy_id){    $wpdb->query("insert into $wpdb->terms (name,slug,term_group)VALUES('每天60秒读懂世界','60s','0')");    $category_id = $wpdb->insert_id;    $wpdb->query("insert into $wpdb->term_taxonomy (term_id,taxonomy,description,parent,count)VALUES($category_id,'category','','0','1')");    $term_taxonomy_id = $wpdb->insert_id;}$post_tag_arr[] = $term_taxonomy_id;//检查文章标签是否存在 key=name value=slug$terms_arr = array(    "每天60秒读懂世界" => "mt60sddsj",    "每天60秒" => "mt60s",    "60秒" => "60m",    "读懂世界" => "ddsj",    "每天六十秒" => "mt60s");foreach ($terms_arr as $key => $value){    $term_taxonomy_id = $wpdb->get_row("SELECT tt.term_taxonomy_id from $wpdb->terms t join $wpdb->term_taxonomy tt on t.term_id = tt.term_id where t.name = '$key' and tt.taxonomy = 'post_tag' ")->term_taxonomy_id;    if(!$term_taxonomy_id){        $wpdb->query("insert into $wpdb->terms (name,slug,term_group)VALUES('$key','$value','0')");        $post_tag = $wpdb->insert_id;        $wpdb->query("insert into $wpdb->term_taxonomy (term_id,taxonomy,description,parent,count)VALUES($post_tag,'post_tag','','0','1')");        $term_taxonomy_id = $wpdb->insert_id;    }    $post_tag_arr[] = $term_taxonomy_id;}//解析接口数据$post = json_decode(file_get_contents("http://www.fuym.cn/api/60s.php"),true);//标题$title = $post['title'];//标题存在则不插入$posts = $wpdb->get_row("SELECT id from $wpdb->posts where post_title = '$title' ");if(!$posts){    $FileName = "wp-content/uploads/60s/".strtotime(date("Y-m-d"),time()) . ".png";    //查看图片是否存在    if(!file_exists($FileName)){        $dir = "wp-content/uploads/60s";        if (!file_exists($dir)) {            mkdir($dir, 0777, true);        }                $url = $post['img'];        $img = $FileName;        file_put_contents($img, file_get_contents($url));    }    $url = "//".$_SERVER['SERVER_NAME']."/".$FileName;    $newpost = "".$post['content'];    $now        = current_time( 'mysql' );    $now_gmt    = current_time( 'mysql', 1 );    $wpdb->insert(        $wpdb->posts,        array(            'post_author'           => 1,            'post_date'             => $now,            'post_date_gmt'         => $now_gmt,            'post_content'          => $newpost,            'post_title'            => $title,            'post_excerpt'          => '',            'post_status'           => 'publish',            'comment_status'        => 'open',            'ping_status'           => 'open',            'post_password'         => '',            'post_name'             => $title,            'to_ping'               => '',            'pinged'                => '',            'post_modified'         => $now,            'post_modified_gmt'     => $now_gmt,            'post_content_filtered' => '',            'post_parent'           => '0',            'guid'                  => '',//文章链接 插入后修改            'menu_order'            => '0',            'post_type'             => 'post',            'post_mime_type'        => '',            'comment_count'         => '0',        )    );    $insertid = $wpdb->insert_id;    $post_guid = get_option( 'home' ) . '/?p='.$insertid;    $wpdb->query(" UPDATE $wpdb->posts SET guid=$post_guid where id = $insertid ");    //插入文章和分类、标签、专题的关系    $sql = " INSERT INTO $wpdb->term_relationships (object_id,term_taxonomy_id,term_order) VALUES ";    foreach ($post_tag_arr as $key => $value){        $sql .= "($insertid, $value, '0'),";    }    $wpdb->query(rtrim($sql, ","));}

  3.完成!通过定时任务,每天凌晨1点自动发布最新的《每天60秒看世界》的文章!您可以单击立即运行立即执行任务,然后检查今天的每日 60 秒是否已添加到您的文章列表中。

  

  发布

  演示

  原来的api太长了,缩短了一点,api知道了

  原创

API:

<p>

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线