虽然说百度的种种做法让人无语,但是我的一个产品站还是不得不重视百度优化的方向,其中最能够直观表现网站状况的是百度收录的状况。
之前我分享过在文章中现实是否被百度收录的技巧:
但是,如果要我们一篇一篇文章去看是否被收录那多麻烦,所以需要有一个页面能自动把网站中没有被百度收录的文章列出来!然后我们可以去做针对性的优化。
既然想到这一步,那么再进一步,直接将没有被收录的文章网址列出来,因为百度站长工具有个手动批量提交网址收录的窗口,这可省事不少。
先来看看效果:
当然,为了美观和更加直观,我在网址后面添加了日期和文章名称。
要实现这么功能我是通过wordpress提取不包含字段meta_key文章列表的思路来制作wordpress自动提取未被百度收录文章列表。
而要提取未被百度收录的文章列表就要判断baidu_record这个字段,如果被收录那么baidu_record=1,我起初想到的是baidu_record=0,但是试了好几次都不行。于是我打开未被收录的文章进入编辑器,发现原来如果文章未被百度收录的时候并不是baidu_record=0,而是根本没有baidu_record这个字段。
找了很久才找到,如果要反向提取不提取包含字段meta_key文章列表需要用到这个函数:’compare’ => ‘NOT EXISTS’
后面就简单了,好了,直接分享代码如下:
<?php query_posts( array( 'post_type' => 'post', 'meta_query' => array( array( 'key' => 'baidu_record', 'compare' => 'NOT EXISTS', )), 'showposts' =>300, 'orderby' => 'ID', )); if (have_posts()) : while (have_posts()) : the_post();?> <li> <a target="_blank" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_permalink(); ?></a> <?php the_time('Y年n月j日');?> <?php the_title();?> </li> <?php endwhile;endif;wp_reset_query(); ?>
噢!评论已关闭。