百度链接提交方式概述
向百度搜索资源平台提交网站链接数据,主要有以下三种方式:
- 主动推送(实时):最为快速的提交方式,推荐将站点当天新产生的链接立即通过此方式推送给百度,以保证新链接能被及时收录。
- 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);
配置与使用说明
- 获取接口地址:登录 百度搜索资源平台,在“链接提交”部分找到“主动推送(实时)”并获取您的接口调用地址(包含
site和token参数)。 - 修改代码:将上述代码中的
$api_url变量值替换为您自己的完整接口地址。 - 代码生效:保存
functions.php文件后,此后每发布或更新一篇新文章,WordPress 都会自动将其链接推送给百度。
重要注意事项
- 安全性:请务必备份
functions.php文件后再进行修改。 - 子主题:如果您使用的是第三方主题,建议创建并使用子主题,将代码添加到子主题的
functions.php中,以避免主题更新时代码被覆盖。 - 推送限制:百度对每日推送量有一定限制,请参考平台最新规则。此代码仅推送单篇文章,适合内容更新频率不高的网站。
- 错误处理:生产环境建议增加错误处理逻辑(例如检查
$response状态),并将推送失败记录到日志中,以便排查问题。
通过以上步骤,您即可在不依赖插件的情况下,为 WordPress 网站实现百度搜索资源平台的链接主动推送功能,助力网站内容更快被收录。