wordpress教程

wordpress定时采集发布知乎《每天60秒》

我的站长站 2023-08-03 人阅读

wordpress+宝塔面板定时采集发布知乎的《每天60秒读懂世界》,设置定时任务后,访问该文件即可自动创建分类,自动截图并发布当日60的文章。

wordpress知乎每天60秒接口代码

<?php
$date = file_get_contents("https://www.zhihu.com/api/v4/columns/c_1261258401923026944/items");
$date = json_decode($date);
$content = $date->data[0]->content;
$content = preg_replace('/(<a.*?>[\s\S]*?<\/a>)/','',$content);
$pattern ='<img.*?src="(.*?)">';
preg_match($pattern,$content,$matches);
$src_path = $matches[1];
$src = imagecreatefromstring(file_get_contents($src_path));
$info = getimagesize($src_path);
//裁剪开区域左上角的点的坐标
$x = 0;
$y = 0;
//裁剪区域的宽和高
$width = 720;
$height = 350;
//最终保存成图片的宽和高,和源要等比例,否则会变形
$final_width = 720;
$final_height = round($final_width * $height / $width);
//将裁剪区域复制到新图片上,并根据源和目标的宽高进行缩放或者拉升
$new_image = imagecreatetruecolor($final_width, $final_height);
imagecopyresampled($new_image, $src, 0, 0, $x, $y, $final_width, $final_height, $width, $height);
$ext = pathinfo($src_path, PATHINFO_EXTENSION);
$rand_name = date("Ymd") . "." . $ext;
//创建文件夹保存图片
if (!file_exists("60s")){
    mkdir ("60s",0777,true);
}
imagejpeg($new_image,"60s/".$rand_name);
imagedestroy($src);
imagedestroy($new_image);
$content = strip_tags($content,'<p>');
$content = '<img class="size-full wp-image-156 aligncenter" src="https://www.wdzzz.com/60s/'.$rand_name.'" alt="" width="720" height="350" />'.$content;
require __DIR__ . '/wp-config.php';
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秒读懂世界','60miao','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;
 
$html = $content;
 
//标题
$title = $date->data[0]->title;
//标题存在则不插入
$posts = $wpdb->get_row("SELECT id from $wpdb->posts where post_title = '$title' ");
if (!$posts) {
    $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' => $html,
            '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, ","));
 
}

自动采集设置方法

1.把代码保存为60s.php

2.放到网站根目录

3.修改33行的“https://www.wdzzz.com/60s/”链接为个人网站链接即可

4.在宝塔面板设置定时任务访问:www.xxxx.com/60s.php,xxxx为你的网址,当然你没用宝塔也可以尝试其它方法来定时发布。

wordpress定时采集发布知乎《每天60秒》

如果创建分类后在前台页面点击分类不显示分类下的文章,需要在后台随便找个分类重新编辑保存下分类即可。(不需要修改内容)

此代码会在根目录下创建名称为60s的目录用于存放图片。


相关推荐
  • wordpress采集
  • 定时采集
  • wordpress定时采集发布知乎《每天60秒》

    wordpress+宝塔面板定时采集发布知乎的《每天60秒读懂世界》,设置定时任务后,访问该文件即可自动创建分类,自动截图并发布当日60的文章。wordpress知乎每天60秒接口代码<?php$date = file_get_contents("https://www.zhihu.com/api/v4/columns/c_126125...

    wordpress教程 31 1年前
  • WPOPT免费优化插件v1.1
    WPOPT免费优化插件v1.1

    插件介绍WPOPT免费优化插件v1.1由lovestu开发的一款WordPress优化插件,能对WordPress底层功能进行优化,支持功能开关,系统加速等功能。目前有几十种开关可以供使用,同时,每个功能都有开关说明。插件截...

    wordpress插件 103 2年前
  • wordpress自动采集插件3.7.8最新版
    wordpress自动采集插件3.7.8最新版

    wordpress自动采集插件3.7.8最新版,目前完美运行于的 WordPress 各个版本,请放心使用。WP-AutoPost-Pro 是一款优秀的 WordPress 文章采集器,是您操作站群,让网站自动更新内容的利器!如果是新手,请查看...

    wordpress插件 316 4年前
  • wordpress定时采集发布知乎《每天60秒》

    wordpress+宝塔面板定时采集发布知乎的《每天60秒读懂世界》,设置定时任务后,访问该文件即可自动创建分类,自动截图并发布当日60的文章。wordpress知乎每天60秒接口代码<?php$date = file_get_contents("https://www.zhihu.com/api/v4/columns/c_126125...

    wordpress教程 31 1年前
  • 杰灵采集软件批量定时采集教程

    杰灵采集软件批量定时采集教程1、打开软件,登录后进入主界面,批量定时采集必须会员登录才能使用。2、点击界面右上角的“时间图标”,进入批量定时界面。3、选择您想要定时发布的任务,点击“新建任务”,点击“获取任务”,配置定时发布的属性和定时时间,点击...

    经验分享 468 5年前
  • 苹果cms利用定时任务生成静态执行操作

    苹果cms定时任务目前内置了 定时采集资源、定时生成静态 2个执行操作1,定时采集资源库执行文件:选择 采集资源库collect附加参数:可从联盟资源库,自定义资源列表中获取(在采集今日,采集本周,采集全部 右键复制链接)截取参数部分即可。例如:任务名称:cj_day任务...

    苹果cms教程 366 4年前
最新更新