使用百度收录API自动提交网址资源
本文最后更新于49 天前,其中的信息可能已经过时,如有错误请发送邮件到mail@bfzw.top

注册百度站长工具

进入百度搜索资源平台的站长工具,注册并登入账号,在“用户中心-站点管理”界面按照流程提交自己的网址。

打开“搜索服务”-“普通收录”,找到“php推送示例”,复制代码备用。

使用说明

  • 1、普通收录工具可以向百度搜索主动推送资源,缩短爬虫发现网站链接的时间,不保证收录和展现效果
  • 2、API提交和手动提交共享配额,sitemap提交配额不与其他方式共享,具体配额以站点页面显示数据为准 。配额不可累计,当日有效。
  • 3、若链接存在跳转关系,请直接提交跳转后链接。如网站换域名,需提交新域名资源;进行HTTPS改造页面,请提交HTTPS资源。
普通收录_加快网站内容抓取,快速提交数据工具_站长工具_网站支持_百度搜索资源平台 (baidu.com)

使用API手动提交网址

在网站根目录下建立“urls.php”文件,填入以下内容(www.example.com全部替换为自己的网站域名)

<?php
$urls = array(
    //在这里填入需要收入的网址
    'https://www.example.com/1.html',
    'https://www.example.com/2.html',
);
//$api里的site是自己的网站域名,token是百度收录API里提供的16位数字
$api = 'http://data.zz.baidu.com/urls?site=https://www.example.com&token=T***4';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
?>

保存后,在浏览器地址栏中输入 https://www.example.com/urls.php ,根据返回结果即可知道是否成功提交。

注意:百度站长工具每天只能收录10条网址,多了直接报错;比如,还剩3次配额则只能填3个网址,不能多填。

使用API自动提交网址

实现原理:通过建立插件定时进行提交资源的操作。

进入Wordpress插件目录(路径:./wp-content/plugins),新建文件夹,命名为”siteurls-autto-baidu“。

进入文件夹,新建php文件”siteurls-autto-baidu.php“,填入以下代码,将site和token替换为百度收录API的信息,保存,在Wordpress插件中心启用插件”Siteurls Auto to Baidu“即可。

<?php  
/**  
 * Plugin Name: Siteurls Auto to Baidu  
 * Description: Execute Siteurls Auto to Baidu tasks on a schedule using WordPress Cron.  
 * Version: 1.1  
 * Author: 小崽安  
 * Author URI: https://bfzw.top  
 */  
  
// 防止直接访问文件  
if ( ! defined( 'ABSPATH' ) ) {  
    exit;  
}  
  
// 插件的主要功能代码  
class SiteUrlsToBaiduTasks {  
  
    public function __construct() {  
        // 初始化插件  
        add_action( 'plugins_loaded', array( $this, 'load_textdomain' ) );  
        add_action( 'init', array( $this, 'autoupload_tasks' ) );  
    }  
  
    public function load_textdomain() {  
        // 加载插件的本地化文本  
        load_plugin_textdomain( 'upload-siteurls-task', false, basename( dirname( __FILE__ ) ) . '/languages/' );  
    }  
  
    public function autoupload_tasks() {  
        // 注册任务到WordPress Cron , “daily”一次/天
        if ( ! wp_next_scheduled( 'upload_siteurls_to_baidu_hook' ) ) {  
            wp_schedule_event( time(), 'daily', 'upload_siteurls_to_baidu_hook' );  
        }  
    }  
  
    public function do_upload_task() {  

        // WordPress的根目录  
        define('ABSPATH', __DIR__ . '/');  
  
        // 引入WordPress  
        require_once(ABSPATH . 'wp-load.php');  
  
        // 百度站长平台的API地址  
        $api = 'http://data.zz.baidu.com/urls?site=https://www.example.com&token=T***4';  
  
        // 读取已推送的URL列表  
        $pushed_urls = file_get_contents(ABSPATH . 'wp-content/plugins/siteurls-autto-baidu/log/urls.txt'); 
        $pushed_urls = explode("\n", trim($pushed_urls)); 
  
        // 获取所有文章链接  
        $posts = get_posts(array(  
            'numberposts' => -1,
            'post_type' => 'post', 
            'post_status' => 'publish'
        ));  
  
        $urls_to_push = array();  
        $urls_failed = array();  
  
        // 获取当前北京时间的时间戳  
        date_default_timezone_set('Asia/Shanghai');  
        $nowTimeUrl = date('Y_m_d_H_i_s', time());  
  
        // 遍历所有文章并收集URL  
        foreach ($posts as $post) {  
            $url = get_permalink($post->ID);

            // 检查URL是否已经被推送过  
            if (!in_array($url, $pushed_urls)) {  
                $urls_to_push[] = $url;  
            }  
        }  
  
        // 限制每天推送的URL数量  
        $urls_to_push = array_slice($urls_to_push, 0, 10); // 只取前10条  
  
        // 如果有URL需要推送  
        if (!empty($urls_to_push)) {  
            $ch = curl_init();  
            $options = array(  
                CURLOPT_URL => $api,  
                CURLOPT_POST => true,  
                CURLOPT_RETURNTRANSFER => true,  
                CURLOPT_POSTFIELDS => implode("\n", $urls_to_push),  
                CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),  
            );  
            curl_setopt_array($ch, $options);  
            $result = curl_exec($ch);  
      
            // 检查推送结果  
            $result_data = json_decode($result, true);  
            if (isset($result_data['error'])) {  
                // 推送失败,记录失败URL到urls_fail.txt
                $fail_message = $nowTimeUrl . "_URLs: \n " . implode("\n ", $urls_to_push) . "\nError: " . $result . "\n";  
                file_put_contents(ABSPATH . 'wp-content/plugins/siteurls-autto-baidu/log/urls_fail.txt', $fail_message, FILE_APPEND);  
            } elseif (isset($result_data['success'])) {
                 // 推送成功,记录成功URL到urls.txt  
                file_put_contents(ABSPATH . 'wp-content/plugins/siteurls-autto-baidu/log/urls.txt', $nowTimeUrl . "\n" . implode("\n", array_merge($urls_to_push)) . "\n" . PHP_EOL, FILE_APPEND);  
            } else {  
                // 无法判断推送结果,记录日志  
                file_put_contents(ABSPATH . 'wp-content/plugins/siteurls-autto-baidu/log/urls_fail.txt', $nowTimeUrl . "\n " . "no_Urls" . "\nError: " . 'result' . "\n", FILE_APPEND);  
            }  

            // 关闭cURL资源,并释放系统资源  
            curl_close($ch);
        } 

        // 打印一条日志消息,以便你知道任务已经执行  
        error_log( 'My SiteUrls to Baidu Task Executed!' );  
    }  
  
    public function register_hooks() {  
        // 注册任务执行时的钩子  
        add_action( 'upload_siteurls_to_baidu_hook', array( $this, 'do_upload_task' ) );  
    }  
}  
  
// 实例化插件类  
$upload_siteurls_task = new SiteUrlsToBaiduTasks();  
  
// 注册钩子  
$upload_siteurls_task->register_hooks();
点击获取当前页面短链
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇