如何在WordPress网站上添加高级搜索
钥匙要点
-
通过使用WordPress Core内深处的其他参数,可以增强WordPress搜索表格超出基本Querystring参数“ s”,从而允许更加集中的搜索结果。
- >搜索结果可以通过类别或标签来改进,分别将其各自的sl子传递到“ category_name”或“ tag”参数。这可以在不需要插件的情况下完成。 使用PHP数组参数可以通过多个值进一步完善高级搜索,可以在WordPress主题的functions.php文件中拦截并设置。这允许用户选择多个标签以进行更集中的搜索。
- 大多数WordPress搜索表格设置了一个名为“ S”的单个Querystring参数:
- 这没什么错,我认为这是很多年来的唯一选择。 但是,在没有插件的情况下,可以进行更高级的查询(尽管有很多可用)。在WordPress核心内部,应用程序解析了其他几个Querystring参数,并使用它们来返回一组更为专注的搜索结果集。有一些基本文档列出了参数名称:
<span><span><span><form</span> method<span>="get"</span> action<span>="<?php bloginfo('url'); ?>"</span>></span> </span><span><span><span><fieldset</span>></span> </span><span><span><span><input</span> type<span>="text"</span> name<span>="s"</span> value<span>=""</span> placeholder<span>="search…"</span> maxlength<span>="50"</span> required<span>="required"</span> /></span> </span><span><span><span><button</span> type<span>="submit"</span>></span>Search<span><span></button</span>></span> </span><span><span><span></fieldset</span>></span> </span><span><span><span></form</span>></span></span>
<span><span><span><form</span> method<span>="get"</span> action<span>="<?php bloginfo('url'); ?>"</span>></span> </span><span><span><span><fieldset</span>></span> </span><span><span><span><input</span> type<span>="text"</span> name<span>="s"</span> value<span>=""</span> placeholder<span>="search…"</span> maxlength<span>="50"</span> required<span>="required"</span> /></span> </span><span><span><span><button</span> type<span>="submit"</span>></span>Search<span><span></button</span>></span> </span><span><span><span></fieldset</span>></span> </span><span><span><span></form</span>></span></span>
http://yoursite.com/?s=search+term&category_name=kittens
<span><span><span><form</span> method<span>="get"</span> action<span>="<?php bloginfo('url'); ?>"</span>></span> </span><span><span><span><fieldset</span>></span> </span><span><span><span><input</span> type<span>="text"</span> name<span>="s"</span> value<span>=""</span> placeholder<span>="search…"</span> maxlength<span>="50"</span> required<span>="required"</span> /></span> </span><span><span><span><select</span> name<span>="category_name"</span>></span> </span><span><span><span><option</span> value<span>=""</span>></span>all categories<span><span></option</span>></span> </span><span><span><span><option</span> value<span>="kittens"</span>></span>cute kittens<span><span></option</span>></span> </span><span><span><span><option</span> value<span>="puppies"</span>></span>adorable puppies<span><span></option</span>></span> </span><span><span><span></select</span>></span> </span><span><span><span><button</span> type<span>="submit"</span>></span>Search<span><span></button</span>></span> </span><span><span><span></fieldset</span>></span> </span><span><span><span></form</span>></span></span>
>通过TAG
<span><span><?php </span></span><span><span>// generate list of categories </span></span><span><span>$categories = get_categories(); </span></span><span><span>foreach ($categories as $category) { </span></span><span> <span>echo '<option value="', $category->slug, '">', $category->name, "</option>\n"; </span></span><span><span>} </span></span><span><span>?></span></span>
http://yoursite.com/?s=search+term&tag=cockroach
<span><span><span><form</span> method<span>="get"</span> action<span>="<?php bloginfo('url'); ?>"</span>></span> </span><span><span><span><fieldset</span>></span> </span><span><span><span><input</span> type<span>="text"</span> name<span>="s"</span> value<span>=""</span> placeholder<span>="search…"</span> maxlength<span>="50"</span> required<span>="required"</span> /></span> </span><span><span><span><select</span> name<span>="tag"</span>></span> </span><span><span><span><option</span> value<span>=""</span>></span>any tag<span><span></option</span>></span> </span><span><span><span><option</span> value<span>="cockroach"</span>></span>cockroaches<span><span></option</span>></span> </span><span><span><span><option</span> value<span>="snake"</span>></span>snakes<span><span></option</span>></span> </span><span><span><span></select</span>></span> </span><span><span><span><button</span> type<span>="submit"</span>></span>Search<span><span></button</span>></span> </span><span><span><span></fieldset</span>></span> </span><span><span><span></form</span>></span></span>
前进的高级搜索
<span><span><?php </span></span><span><span>// generate list of tags </span></span><span><span>$tags = get_tags(); </span></span><span><span>foreach ($tags as $tag) { </span></span><span> <span>echo '<option value="', $tag->slug, '">', $tag->name, "</option>\n"; </span></span><span><span>} </span></span><span><span>?></span></span>
<span><span><span><form</span> method<span>="get"</span> action<span>="<span><?php bloginfo('url'); ?></span>"</span>></span> </span><span><span><span><fieldset</span>></span> </span><span><span><span><input</span> type<span>="text"</span> name<span>="s"</span> value<span>=""</span> placeholder<span>="search…"</span> maxlength<span>="50"</span> required<span>="required"</span> /></span> </span><span><span><span><p</span>></span>Refine search to posts containing chosen tags:<span><span></p</span>></span> </span><span><span><?php </span></span><span><span>// generate list of tags </span></span><span><span>$tags = get_tags(); </span></span><span><span>foreach ($tags as $tag) { </span></span><span> <span>echo </span></span><span> <span>'<label>', </span></span><span> <span>'<input type="checkbox" name="taglist[]" value="', $tag->slug, '" /> ', </span></span><span> <span>$tag->name, </span></span><span> <span>"</label>\n"; </span></span><span><span>} </span></span><span><span>?></span> </span><span><span><span><button</span> type<span>="submit"</span>></span>Search<span><span></button</span>></span> </span><span><span><span></fieldset</span>></span> </span><span><span><span></form</span>></span></span>
<span>// advanced search functionality </span><span>function advanced_search_query($query) { </span> <span>if($query->is_search()) { </span> <span>// tag search </span> <span>if (isset($_GET['taglist']) && is_array($_GET['taglist'])) { </span> <span>$query->set('tag_slug__and', $_GET['taglist']); </span> <span>} </span> <span>return $query; </span> <span>} </span> <span>}</span>
。我偶然发现了它,希望您在下一个WordPress项目中发现此代码很有用。
在WordPress中经常询问有关高级搜索的问题>如何在WordPress中自定义搜索结果?
>可以通过使用WP_QUERY类自定义WordPress中的搜索结果。此类允许您定义特定参数来调整搜索结果。例如,您可以将参数设置为仅在帖子标题中搜索,排除某些帖子类型,甚至在自定义字段中搜索。您还可以使用提供高级搜索自定义选项的searchwp之类的插件。
我可以使用标签来改善wordpress中的搜索结果?
是的,标签可以显着改善WordPress中的搜索结果。通过使用get_the_tags()函数,您可以检索与特定帖子关联的标签。这可以用来创建更精致的搜索体验,从而使用户可以搜索具有特定标签的帖子。
>如何使用“ query_vars”过滤器更改WordPress中的搜索查询参数?这使您可以将默认的“ S”参数更改为更特定于您的需求的东西。例如,您可以将其更改为'search_term',以使您的URL更加用户友好。
> wordpress中的wp_query是什么?
wp_query是WordPress中的一类,可以创建自定义自定义查询和循环。它提供了许多参数,您可以使用这些参数来自定义查询,例如Post类型,类别,标签,作者等。这使其成为创建高级搜索功能的功能强大的工具。
>我如何从WordPress中的搜索结果中排除某些帖子类型?
>可以使用' pre_get_posts的动作钩与WP_QUERY类结合使用。您可以将“ post_type”参数设置为要在搜索结果中包含的帖子类型的数组,有效地排除了所有其他内容。我可以在WordPress中的自定义字段中搜索吗?是的,您可以使用WP_QUERY中的“ meta_query”参数在WordPress中的自定义字段中搜索。这使您可以指定一个自定义字段键和值,并返回与这些条件相匹配的帖子。
>
>如何改善WordPress中的搜索功能?通过使用SearchWP,Ressienanssi或Ajax Search Pro等插件。这些插件提供了高级搜索功能,例如部分匹配,关键字steamming和搜索权重,提供更好的用户体验。>
我可以在没有插件的情况下在WordPress中创建搜索表格吗?可以通过使用get_search_form()函数在无插件的情况下在WordPress中创建搜索表格。此函数生成了搜索表格的HTML,您可以自定义以适合您的需求。>
如何在WordPress中显示搜索查询? get_search_query()函数。此函数检索搜索查询字符串,可用于在您的搜索结果页面上显示搜索词。我可以限制WordPress中的搜索结果数吗?通过使用WP_QUERY中的“ post_per_page”参数在WordPress中的搜索数量。这使您可以指定每个页面显示的帖子数,从而有效地限制了搜索结果的数量。
以上是如何在WordPress网站上添加高级搜索的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

博客是人们在网上表达观点、意见和见解的理想平台。许多新手渴望建立自己的网站,却因担心技术障碍或成本问题而犹豫不决。然而,随着平台不断发展以满足初学者的能力和需求,现在开始变得比以往任何时候都更容易。 本文将逐步指导您如何建立一个WordPress博客,从主题选择到使用插件提升安全性和性能,助您轻松创建自己的网站。 选择博客主题和方向 在购买域名或注册主机之前,最好先确定您计划涵盖的主题。个人网站可以围绕旅行、烹饪、产品评论、音乐或任何激发您兴趣的爱好展开。专注于您真正感兴趣的领域可以鼓励持续写作

有四种方法可以调整 WordPress 文章列表:使用主题选项、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代码(在 functions.php 文件中添加设置)或直接修改 WordPress 数据库。

您想了解如何在父分类存档页面上显示子分类吗?在自定义分类存档页面时,您可能需要执行此操作,以使其对访问者更有用。在本文中,我们将向您展示如何在父分类存档页面上轻松显示子分类。为什么在父分类存档页面上显示子分类?通过在父分类存档页面上显示所有子分类,您可以使其不那么通用,对访问者更有用。例如,如果您运行一个关于书籍的WordPress博客,并且有一个名为“主题”的分类法,那么您可以添加“小说”、“非小说”等子分类法,以便您的读者可以

最近,我们向您展示了如何通过允许用户将自己喜欢的帖子保存在个性化库中来为用户创建个性化体验。您可以通过在某些地方(即欢迎屏幕)使用他们的名字,将个性化结果提升到另一个水平。幸运的是,WordPress使获取登录用户的信息变得非常容易。在本文中,我们将向您展示如何检索与当前登录用户相关的信息。我们将利用get_currentuserinfo(); 功能。这可以在主题中的任何地方使用(页眉、页脚、侧边栏、页面模板等)。为了使其工作,用户必须登录。因此我们需要使用

过去,我们分享过如何使用PostExpirator插件使WordPress中的帖子过期。好吧,在创建活动列表网站时,我们发现这个插件非常有用。我们可以轻松删除过期的活动列表。其次,多亏了这个插件,按帖子过期日期对帖子进行排序也非常容易。在本文中,我们将向您展示如何在WordPress中按帖子过期日期对帖子进行排序。更新了代码以反映插件中更改自定义字段名称的更改。感谢Tajim在评论中让我们知道。在我们的特定项目中,我们将事件作为自定义帖子类型。现在

WordPress对初学者来说容易上手。1.登录后台后,用户界面直观,简洁的仪表板提供所有必要功能链接。2.基本操作包括创建和编辑内容,所见即所得的编辑器简化了内容创建。3.初学者可以通过插件和主题扩展网站功能,学习曲线存在但可以通过实践掌握。

我们的一位用户询问其他网站如何在页脚中显示查询数量和页面加载时间。您经常会在网站的页脚中看到这一点,它可能会显示类似以下内容:“1.248秒内64个查询”。在本文中,我们将向您展示如何在WordPress中显示查询数量和页面加载时间。只需将以下代码粘贴到主题文件中您喜欢的任何位置(例如footer.php)。queriesin

您是否正在寻找自动化 WordPress 网站和社交媒体帐户的方法? 通过自动化,您将能够在 Facebook、Twitter、LinkedIn、Instagram 等平台上自动分享您的 WordPress 博客文章或更新。 在本文中,我们将向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 轻松实现 WordPress 和社交媒体的自动化。 为什么要自动化 WordPress 和社交媒体? 自动化您的WordPre
