博客 / WordPress/ WordPress 无插件实现百度搜索资源平台链接主动推送(实时)

WordPress 无插件实现百度搜索资源平台链接主动推送(实时)

百度链接提交方式概述

向百度搜索资源平台提交网站链接数据,主要有以下三种方式:

  • 主动推送(实时):最为快速的提交方式,推荐将站点当天新产生的链接立即通过此方式推送给百度,以保证新链接能被及时收录。
  • Sitemap 提交:定期将网站链接放入 Sitemap 文件中,然后将 Sitemap 提交给百度。百度会周期性地抓取并处理其中的链接,但收录速度通常慢于主动推送。
  • 手动提交:一次性提交少量链接给百度,适合临时或补充提交。

根据百度搜索资源平台的长期策略,主动推送(实时)是官方推荐的核心提交方式,能有效提升收录效率。

WordPress 无插件实现主动推送

无需安装插件,通过将以下代码添加到当前主题的 functions.php 文件中,即可实现文章发布时自动向百度推送链接。

核心代码实现

请将以下代码复制到主题的 functions.php 文件末尾:

/**
 * WordPress 集成百度搜索资源平台主动推送(实时)功能
 * @param int $post_id 文章ID
 * @param WP_Post $post 文章对象
 */
function push_to_baidu($post_id, $post) {
    // 1. 设置您的推送接口地址(从百度搜索资源平台获取)
    $api_url = 'https://data.zz.baidu.com/urls?site=你的网站域名&token=你的Token';
    // 2. 获取当前文章的永久链接
    $post_url = get_permalink($post_id);
    // 3. 获取文章最后修改时间,格式化为符合百度要求的 ISO 8601 格式
    $post_modified = get_post_modified_time('c', true, $post_id);
    // 4. 构造推送的 XML 数据
    $xml_data = '<?xml version="1.0" encoding="UTF-8"?>
<urlset>
    <url>
        <loc><![CDATA[' . $post_url . ']]></loc>
        <lastmod>' . $post_modified . '</lastmod>
        <changefreq>daily</changefreq>
        <priority>0.8</priority>
    </url>
</urlset>';
    // 5. 创建 HTTP 请求对象并发送 POST 请求
    $wp_http = new WP_Http();
    $response = $wp_http->post($api_url, array(
        'body' => $xml_data,
        'headers' => array('Content-Type' => 'text/xml')
    ));
    // 可选:记录推送日志,便于调试
    // error_log('Baidu Push Response for ' . $post_url . ': ' . print_r($response, true));
}
// 6. 挂载到文章发布动作
add_action('publish_post', 'push_to_baidu', 10, 2);

配置与使用说明

  1. 获取接口地址:登录 百度搜索资源平台,在“链接提交”部分找到“主动推送(实时)”并获取您的接口调用地址(包含 sitetoken 参数)。
  2. 修改代码:将上述代码中的 $api_url 变量值替换为您自己的完整接口地址。
  3. 代码生效:保存 functions.php 文件后,此后每发布或更新一篇新文章,WordPress 都会自动将其链接推送给百度。

重要注意事项

  • 安全性:请务必备份 functions.php 文件后再进行修改。
  • 子主题:如果您使用的是第三方主题,建议创建并使用子主题,将代码添加到子主题的 functions.php 中,以避免主题更新时代码被覆盖。
  • 推送限制:百度对每日推送量有一定限制,请参考平台最新规则。此代码仅推送单篇文章,适合内容更新频率不高的网站。
  • 错误处理:生产环境建议增加错误处理逻辑(例如检查 $response 状态),并将推送失败记录到日志中,以便排查问题。

通过以上步骤,您即可在不依赖插件的情况下,为 WordPress 网站实现百度搜索资源平台的链接主动推送功能,助力网站内容更快被收录。

发表评论

您的邮箱不会公开。必填项已用 * 标注。