码峰博客 – 码而思

分享积累从此时此刻开始

如何生成wordpress的site.txt用于百度SEO收录提交

百度收入比较慢,或者长时间不收入,特别是对于新站,有时需要主动向百度提交。那么应该要怎样提交,怎样生成网站的文章列表呢?

代码

在 wordpress 站点根目录下,创建文件 url.php , 放入如下内容。

注意代码里的 www.maersi.top 换成自己的网站域名

<?php
require('./wp-blog-header.php');

function getLinks($nums)
{
    $urls = array();
    $posts_to_show = $nums;
    $myposts = get_posts( "numberposts=" . $posts_to_show );
    foreach( $myposts as $post ) {
        $urls[] = esc_url( apply_filters( 'the_permalink', get_permalink( $post ), $post ),null, '' );
    }
    return $urls;
}

function makSiteCon($urls){
    header('Content-type: application/txt');
    header('HTTP/1.1 200 OK');
    header("Content-type: text/txt");
    foreach( $urls as $post ) {
        echo $post . "\n";
    }
}

function makSiteFile($urls){
    $con = "";
    foreach( $urls as $post ) {
        $con .= $post . "\n";
    }
    $myfile = fopen("site.txt", "w") or die("Unable to open file!");
    fwrite($myfile, $con);
    fclose($myfile);
    echo "site.txt 文件已经生成, <a href='https://www.maersi.top/site.txt' target='_blank'>https://www.maersi.top/site.txt</a>";
}

function sendToBaidu($urls = []){
    $api = 'http://data.zz.baidu.com/urls?site=https://www.maersi.top&token=自己站点的token';
    $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;
}

// 获取 500000 网站链接
$urls = getLinks(5);

// 方式一:生成site.txt内容
//makSiteCon($urls);

// 方式二:生成site.txt文件
//makSiteFile($urls);

// 方式三:主动提交百度
// sendToBaidu($urls)
?>

上边代码放好后,有三种方式,选择自己需要的方式运行即可。

方式一:生成 site.txt 内容

即访问 url 后浏览器会看到 文章链接列表,需要去掉 makSiteCon($urls) 前的 // , 如下图所示

浏览器访问 https://www.maersi.top/url.php(注意使用自己的域名),即可看到文章列表

方式二:生成site.txt文件

即会在 wordpress 根目录下生成 site.txt 文件,需要去掉 makSiteFile($urls) 前的 // ,如下图所示

浏览器访问 https://www.maersi.top/url.php(注意使用自己的域名),点击生成的链接看到 site.txt 的内容

方式三:主动提交链接到百度

即调用百度的接口直接提交链接,需要去掉 sendToBaidu($urls) 前的 // ,如下图所示

浏览器访问 https://www.maersi.top/url.php(注意使用自己的域名)

看到 success 表示成功,百度提交有数量限制,注意 getLinks(500000) 里的数量调小,一般只要百度收录后,就无需再手动提交。因此这种方式只是第一次提交,建议数量用 5

百度搜索资源提交

网址:https://ziyuan.baidu.com/,上边代码中提交的 token 也在这里获取
登录后点击站点管理

添加自己的站点

站点添加好后,点击普通收录,即可看到自己的 token

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Index