专栏首页张戈的专栏PHP制作百度站内搜索绿色通道的网页列表数据文件

PHP制作百度站内搜索绿色通道的网页列表数据文件

用过百度站内搜索的朋友,都知道前不久推出了一个绿色收录通道,改善站内搜索的时效性和覆盖率,说明如下:

站内搜索结果数太少?最新的页面搜不到?您可以在本页面提交数据,提升您的站内搜索收录时效性和覆盖率。 方法 1:提交一个种子页面 URL,如网站首页,搜索引擎将从这个页面进行扩散,抓取站点的其他页面。 方法 2:提交网站列表(即 sitemap),列举您站点需要抓取的所有网页,该方法收录效果更好。 注:在此提交的数据将用于改善您的站内搜索质量,同时有机会被百度网页搜索收录,但并没有收录上的优待。

虽然,说明中提到了并没有收录上的优待,但绝对增加了网页搜索收录的效率,因为这个数据的提交相当于给蜘蛛额外提供了一个爬行路线,效果应该还是有的!

先说一下方法 1 的做法:

如果使用方法 1,我们可以提交一个简版的站点地图,比如张戈博客提交的就是http://zhangge.net/blogmap/这个页面。提交后发现迟迟不能审核!

仔细查看后,发现该页面有这样一句话:

注:网站必须已安装站内搜索才能使用本功能。如果未通过审核,请检查您的网站是否已正确安装站内搜索。

原来必须要在页面上安装百度站内搜索才能审核通过!

所以,提交 URL 之后,就必须部署由百度提供的站内搜索代码:

<script type="text/javascript">document.write(unescape('%3Cdiv id="bdcs"%3E%3C/div%3E%3Cscript charset="utf-8" src="http://rp.baidu.com/rp3w/3w.js?sid=11196058821421648414') + '&t=' + (Math.ceil(new Date()/3600000)) + unescape('"%3E%3C/script%3E'));</script>

但是,我的博客已经有自己 DIY 的站内搜索了,并不想添加百度这个搜索框,最后我还是将这个搜索代码添加到了 footer,然后使用 CSS 的 display:none 属性隐藏掉了,不出几天,果真审核通过了!

下面说下方法 2:

方法 2,其实就是提交一个 sitemap.xml,没什么技巧,那为什么要写这篇文章呢?

因为大部分新站都没开通百度的 sitemap 权限!所以,我写这篇文章的主要目的就是分享一个变相提交 sitemap 的方法!!当然,除了在站内搜索变相提交 sitemap 优化收录之外,咱们还可以使用百度的开放适配来变相提交 sitemap,有兴趣的可以查看张戈博客之前的文章:《移动搜索 SEO 分享:PHP 自动生成百度开放适配及 360 移动适配专用的 Sitemap 文件》。

既然,百度不给你开通 sitemap,那你就可以利用站内搜索和开放适配变相提交 sitemap 数据!!

好了,下面分享代码:

①、XML 格式:

如果想使用 xml 格式,只要使用张戈博客前几天写的《WordPress 免插件生成完整站点地图(sitemap.xml)的 php 代码》一文中的 php 代码即可,成功提交后如下显示:

②、TXT 格式:

TXT 就是将博客的所有页面地址一行一行的列出即可,其实并不一定是 txt 后缀地址!

代码如下:

<?php
require('./wp-blog-header.php');
header("Content-type: text/txt");
header('HTTP/1.1 200 OK');
$posts_to_show = 1000; // 获取文章数量
?>
<?php echo 'http://'.$_SERVER['HTTP_HOST']; ?><?php echo "\n"; ?>
<?php
/* 文章页面 */
header("Content-type: text/txt");
$myposts = get_posts( "numberposts=" . $posts_to_show );
foreach( $myposts as $post ) {
    the_permalink(); 
    echo "\n"; 
}
?>
<?php
/* 单页面 */ 
$mypages = get_pages();
if(count($mypages) > 0) {
    foreach($mypages as $page) {
    echo get_page_link($page->ID);
    echo "\n";
    }
}
?>
<?php
/* 博客分类 */ 
$terms = get_terms('category', 'orderby=name&hide_empty=0' );
$count = count($terms);
if($count > 0){
foreach ($terms as $term) {
    echo get_term_link($term, $term->slug);
    echo "\n";
    }
} 
?>
<?php
 /* 标签(可选) */
	$tags = get_terms("post_tag");
	foreach ( $tags as $key => $tag ) {
			   $link = get_term_link( intval($tag->term_id), "post_tag" );
			   if ( is_wp_error( $link ) ) {
			      return false;
			      $tags[ $key ]->link = $link;
			   }
                  echo $link;
                  echo "\n";
	}          
?>

保存为 search 放到网站根目录,然后访问查看效果,比如http://zhangge.net/search.php

最后,前往站内搜索绿色通道提交即可:http://zhanzhang.baidu.com/search/greenchannelsitemap

提交成功,过一会刷新就能看到数据了:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 解决WordPress Feed、RSS以及Sitemap.xml访问报错问题

    今天,查看站长平台的 sitemap 抓取情况时,发现提示解析错误: ? 很纳闷的点开看了下: ? 这个 sitemap_baidu_sp.xml 是 site...

    张戈
  • PHP7.0正式版编译安装升级及WordPress问题解决分享

    盼望以久的 PHP 7.0 正式版,终于在今天发布了! ? 官方给出的新特性如下: PHP 7.0.0 comes with new version of th...

    张戈
  • 分享两种外链跳转方法,可避免权重流失。

    前 2 天,在修改互推联盟自适应页面时,考虑到原先的跳转机制可能会对博友造成困扰,所以想修改成直接跳转模式,彻底抛弃之前强行重写 title 即 iframe ...

    张戈
  • OAuth2.0认证和授权机制

    (F)资源服务器确认令牌无误,同意向客户端开放资源。 这么一个过程 2. 看到上面的流程,我们大概都有一个疑问,就是用户同意授权后这个步骤是如何授权的?怎么...

    居士
  • 中国菜刀-分析

    昨天偶然看到了中国菜刀这个词,突然发现这类软件的工作原理倒是没有好好看过,只看过 pwntools的,所以难得有时间,便开着wireshark搞一手,看看发了什...

    Elapse
  • R语言stan进行贝叶斯推理分析

    可以从许多统计软件包中运行Stan。到目前为止,我一直在从R运行Stan,首先按照快速入门指南中的说明安装并运行所有内容。

    拓端
  • 微信微博都在使用的OAuth2是什么原理

    现在开放平台非常流行,例如微信开放平台、微博开放平台等,开放平台都涉及用户授权问题,OAuth2就是目前的主流授权解决方案 OAuth2是什么 OAuth(...

    dys
  • Redis:[集群]环境搭建

    以 redis.conf 为模板,为集群的每个结点创建一个配置文件(redis7001.conf ~ redis7006),并放置到 /home/redis-4...

    WEBJ2EE
  • 涨姿势:如何让你的Google账户更安全

    如果你使用Gmail作为你主要的电子邮件,或者长期依赖于谷歌提供的服务,再或者你是“Google脑残粉”……那么这篇文章就值得你来读读。本文将指导你重新审视并重...

    FB客服
  • 特朗普炮轰:Google一下,净说我坏话!

    用谷歌搜“特朗普新闻”,结果只显示CNN这些“假新闻媒体”的观点或报道,而共和党、保守派以及“公平媒体”被拒之门外。

    新智元

扫码关注云+社区

领取腾讯云代金券