萨龙网络
登录
首页-WordPress文章-WordPress-正文

WordPress按自定义文章类型进行搜索

萨龙龙萨龙龙
WordPress
9年前
0
0
1.30W
WordPress按自定义文章类型进行搜索一般的Wordpress主题中都有多种自定义文章类型,除了了默认的文章还会有作品、商品等自定义类型的文章,而WordPress默认只能搜索到文章,对于自定义文章类型的文章需要我们进行判断,其实也可以在搜索中添加自定义文章类型,但是这些所有的文章类型都在一个页面显示,不好区分。 如果主题中有文章、作品与产品(Woocommerce插件),在搜索中就要对文章类型进行选择,同时搜索结果中显示该文章类型下的文章,实现的方法很简单: 1、一般的搜索表单:
  1. <form method="get" class="search-form" action="<?php echo esc_url( home_url( '/' ) ); ?>" >
  2.   <input class="search-input" name="s" type="text" placeholder="站内搜索…" />
  3.   <input title="站内搜索" class="search-submit" type="submit" value="">
  4. </form>
2、添加文章类型选项的表单:
  1. <form method="get" class="search-form" action="<?php echo esc_url( home_url( '/' ) ); ?>">
  2.     <select name="post_type" class="search-select">
  3.         <option value="post">
  4.             <?php _e( '文章', 'salong' ); ?>
  5.         </option>
  6.         <option value="portfolio">
  7.             <?php _e( '作品', 'salong' ); ?>
  8.         </option>
  9.         <option value="product">
  10.             <?php _e( '产品', 'salong' ); ?>
  11.         </option>
  12.     </select>
  13.     <input class="search-input" name="s" type="text" placeholder="站内搜索…" />
  14.     <input title="站内搜索" class="search-submit" type="submit" value="">
  15. </form>
<option value="post">中的“post”对应的是自定义文章类型,这样在搜索时就可以选项要搜索的文章类型。表单实现了,搜索结果中得显示对应的内容。

对搜索进行判断

  1. <?php $post_type=$_GET['post_type'];
  2. $located=get_template_part( 'content/search', $post_type );
  3. if ( isset( $post_type ) && locate_template($located$require_once) ) {
  4.     get_template_part( 'content/search', $post_type );
  5.     exit;
  6. }
  7. ?>
注意:“get_template_part( 'content/search', $post_type );”是获取主题根目录下的content目录下的search-$post_type.php文件,如果是文章,文件则为search-post.php,依此类推。 search-$post_type.php文件中的内容根据主题的情况而定,使用Woocommerce商城插件添加的自定义文章类型产品,不需要添加类似search-product.php文件,因为插件已经有这些文件。
标签:
本文原创,作者:萨龙龙,其版权均为萨龙网络所有。
如需转载,请注明出处:https://salongweb.com/wordpress-custom-post-type-search.html
萨龙龙

萨龙龙

侠客
一个平平常常的人,热爱生活、旅行和摄影,骑行去过西藏,一直计划再去。14年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!
1342.31M457.08W4.42W
加载中…
分享:
AMH面板安装配置Memcached加速WordPress站点
AMH面板安装配置Memcached加速WordPress站点上一篇
让SI CAPTCHA Anti-Spam插件支持WooCommerce注册表单验证码下一篇
让SI CAPTCHA Anti-Spam插件支持WooCommerce注册表单验证码
相关文章
总数:107

萨龙网络集成Buddypress+Bbpress社区论坛功能

前段时间已经发布Purity2.0主题更新的文章,主题已经集成了作品展示、商城,通过半个来月的时间把Buddypress+Bbpress社区论坛…
萨龙龙萨龙龙
Bbpress, Buddypress
10年前
0
0
1.79W
0

WooCommerce 商城首页排除指定分类

WooCommerce是WordPress中最强大的商城插件,没有之一。在Slearn主题的开发过程中,需要将课程和商城结合,课程使用…
萨龙龙萨龙龙
WooCommerce
6年前
0
0
1.09W
0

更新至 WordPress5.0版本后古腾堡(Gutenberg)编辑器发布与更新失败的解决方法(只对萨龙网络主题测试)

萨龙网络所有主题都集成了很多优化功能,在WordPress更新至5.0版本后,古腾堡(Gutenberg)编辑器发布与更新文章/页面就出现错…
萨龙龙萨龙龙
WordPress
7年前
0
0
8.88K
0

WordPress 从不需要的页面禁用 WooCommerce 样式和脚本

WooCommerce在每个页面上加载三个核心CSS样式表,并在WordPress站点上安装时发布。可以通过从不需要它的页面和内容中删除样式和…
萨龙龙萨龙龙
WooCommerce
6年前
0
0
1.80W
0

WordPress添加 span 标签到分类目录和文章归档文章数量上

WordPress默认提供了分类目录,文章归档等小工具,在前台开发中,由于分类目录和文章归档显示的文章数量没有添加标签,导致写样式比较麻烦,如…
萨龙龙萨龙龙
WordPress
6年前
0
0
1.44W
0

WordPress MU多站点网络域名绑定插件Domain Mapping的安装与使用

WordpressMU是多站点的程序,新创建的站点地址都是基于主域名下的二级域名,而强大的Wordpress可以为每个站点绑定不同的域名,这时…
萨龙龙萨龙龙
WordPress
10年前
0
0
2.26W
0

WordPress+Nuxt.js+Vue.js开发的前端node项目被停止的处理方案

SlhaoPro主题前端上线后每天能收到宝塔的提示,说项目已经停止,找了很久没有发现问题。在查看node项目网站日志中的响应日志和错误日志时,…
萨龙龙萨龙龙
Nuxt.js, Vue.js, WordPress
2年前
1
1
1.10W
0

WooCommerce商城首页获取自定义字段

WooCommerce商城首页默认被插件转换成归档页面archive-product.php,但是添加的依然是页面,所以通过get_post_m…
萨龙龙萨龙龙
WooCommerce
9年前
0
0
1.28W
0

WordPress 功能函数——absint(将值转换为非负整数)

用法 absint(mixed$maybeint) 将值转换为非负整数。 参数 $maybeint (mixed)(必需)您希望…
萨龙龙萨龙龙
WordPress Functions
7年前
0
0
1.13W
0

WordPress 功能函数—— activate_plugin(已激活的插件不会再次尝试激活)

描述 已激活的插件不会再次尝试激活。 它的工作方式是在尝试包含插件文件之前将重定向设置为错误。如果插件失败,则重定向…
萨龙龙萨龙龙
WordPress Functions
7年前
0
0
1.34W
0

WordPress网站统计相关信息使用大全

很多个人博客都有一个小工具是来统计网站的一些信息,Deephoto主题企业版本首页就集成了网站统计,添加了工作天数、完成作品、新闻动态、摄影师、…
萨龙龙萨龙龙
WordPress
10年前
0
0
1.22W
0

使用WordPress MU一个程序创建多站点网络介绍与安装教程

经常折腾wp的人肯定不止一个博客,主题高产的WPER那就更不用说,所以我们不想重复地安装wordpress,通过WordPressMU只需要安…
萨龙龙萨龙龙
WordPress
10年前
0
0
2.23W
2
评论表单游客 您好,欢迎参与讨论。
加载中…
评论列表
总数:0
萨龙网络
没有相关内容