在wordpress主题的动态模板中,搜索页模板并不是必须的。但是,为了对用户更加的友好,可以让用户在wordpress网站上能够通过搜索来查找自己的想要的文章内容,我们还是有必要给trans主题添加一个搜索页模板。一般情况下,wordpress主题动态模板的搜索页的整体布局和文章列表页模板是差不多的,所以,我们可以参照文章列表页来做。
第一步:创建一个search.php文件。
在wordpress主题trans目录下创建一个search.php文件,这是wordpress程序要求的默认搜索页模板的文件,名字必须是search。然后,把trans静态模板search.html文件中的代码全部复制到search.php文件中。
第二步:修改头部的代码。
在search.php文件中,删除从< !doctype>到< /header>标签之间的所有代码。然后,在同样的位置,通过wordpress函数来引入公共的头部模板文件:
修改头部模板header.php文件中的搜索表单的代码,代码如下:
注:第一个input输入框的name值必须是 s (如上图),这也是wordpress的硬性要求。否则,就搜索不到任何内容。
第三步:修改search.php的侧边栏代码。
在search.php文件中,删除< div class="c_right">标签所包含的所有侧边栏代码,然后,在这个位置上,引入sidebar.php侧边栏公共模板:
第四步:修改搜索页模板的底部代码。
在搜索页模板中,删除从< footer>标签到模板代码结束的所有底部代码,然后,在当前的位置上,添加如下代码引入底部公共模板:
第五步:修改search.php的左侧主体部分的面包屑导航。
因为是搜索页面模板,所以,这个面包屑导航,我们要体现出搜索结果。所以,我们删除search.php模板中< div class="left_top">标签内部的所有代码,替换成如下的代码:
< a href="">< span class="dashicons-before dashicons-admin-home">首页 > 搜索结果
< ul>
关键词“< ?php the_search_query(); ?>”共有 < ?php global $wp_query; echo $wp_query->found_posts; ?> 个搜索结果
上面代码解说:
the_search_query():输出要搜索的关键词;
$wp_query:是wordpress提供的一个全局变量,它包今当前页面的所有查询数据;
$wp_query->found_posts:搜索当前关键词的数量
搜索页面包屑导航效果如下图:
第六步:修改搜索页模板左侧的文章列表。
删除search.php搜索页模板中< div class="left_bottom">标签内部的所有代码,然后,替换成如下代码:
< ?php
if ( have_posts() ):
while ( have_posts() ) : the_post();
?>
< a href="< ?php the_permalink(); ?>">
< ?php
if(has_post_thumbnail()) { //如果有特色图片,就调用特色图片
the_post_thumbnail(
'thumbnail' ,
array(
'alt' => trim(strip_tags( $post->post_title )),
'title' => trim(strip_tags( $post->post_title ))
)
);
}else { //否则调用文章第一张图片
echo '';
}
?>
< ?php echo mb_substr(strip_tags($post->post_content),0,120,'utf-8'); ?> ...
< ?php the_author(); ?>
< ?php the_time("Y年m月d日"); ?>
< ?php echo get_post_meta($post->ID, 'views', true); ?>
< ?php
endwhile;
endif;
?>
这段代码,我们在archive.php文章列表页模板中我们已经介绍过了,就不多说了。
第七步:添加分页代码。
在trans静态模板的代码中,我们没有分布代码,这里,我们添加上搜索结果的分页效果代码:
< ?php
the_posts_pagination( array(
'mid_size' => 3, //当前页码数的 两边 显示几个页码。
'prev_text' =>'
'next_text' =>'>', //下一南
) );
?>
这里,我们使用到了wordpress提供的分页函数the_posts_pagination()来实现搜索页的文章列表的分页效果。这个函数我们在修改首页模板时,我们就介绍过了,如果想了解它,可以回到我们创建首页模板index.php的文章去看看。
好了,通过以上几部,我们就完成了wordpress主题动态模板trans的搜索页面模板的创建和修改。此时,我们在头部搜索框中输入关键词进行搜索后,搜索结果如上图所示。从这几节课,我们可以看出,有了公共模板后,我们创建其它动态模板时,就方便多了,只要按照本节的几个步骤,就可以很轻松地创建出wordpress主题的动态模板文件。如果喜欢我的文章,别忘了帮我“点赞、评论和关注我”哦。
领取专属 10元无门槛券
私享最新 技术干货