如何禁用WordPress前台搜索功能

更新于 2022年1月20日 wordpress教程

WordPress自带的搜索功能很弱、效率非常低,如果有人利用这个缺陷发起很多搜索请求,你的服务器很有可能会宕机。我们可以使用百度、360等实现站内搜索,并禁止前台使用WordPress自带的搜索功能,在当前主题的 functions.php 文件里加入以下代码即可。

如何禁用WordPress前台搜索功能

代码

//禁用WordPress前台搜索功能
function disable_search( $query, $error = true ) {
if (is_search() && !is_admin()) {
$query->is_search = false;
$query->query_vars['s'] = false;
$query->query['s'] = false;
if ( $error == true )
// 执行搜索后显示的错误页面
// $query->is_home = true; //跳转到首页
$query->is_404 = true;//跳转到404页
}
}
add_action( 'parse_query', 'disable_search' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

注:可以选择执行搜索后显示的错误页面,是跳转到404或者网站首页。

你可能还喜欢下面这些文章

由于解码不当,Wordpress 搜索特殊字符失败由于解码不当,Wordpress 搜索特殊字符失败

我正在实施 WordPress 搜索功能。 if ($query-> if ($search_length < $query->

wordpress自定义url路由于自定义载入模板wordpress自定义url路由于自定义载入模板

wordpress强大的hook能够让我们去自定义路由,在使用框架的时候一般路由是写在一个配置文件中,wordpress作为一个cms系统,自然是不能这么干,实际上,wordpress路由规则是写在数据库中,自定义路由其实就是修改这个数据库的值。 默认这个tpl_page查询是不会加入到$GLOBALS[‘wp_query’]中的query_var变量中,默认wordpress的public_query_vars有这么一些

如何避免cli模式下wordpress内存耗尽如何避免cli模式下wordpress内存耗尽

在有些场景下,会写一些脚本在cli模式下跑,比如刷数据之类的任务。 其原因在于wordpress的wpdb类会保存query,每一条query都会保存在内存中,随着查询越来越多,这个变量得不到释放,于是内存最终会被耗尽。 另外一个原因在于wordpress的object cache,这也会将查询的结果保存在内存!

wordpress怎么调用特定文章列表wordpress怎么调用特定文章列表

a href=”< //cat=1为调用ID为1的分类下文章 “title=”<

WordPress怎么增加文章排序方式WordPress怎么增加文章排序方式

WordPress怎么增加文章排序方式? 实现过程也比较简单,一个是构造链接,另外一个是使用query_posts来改变一下主循环就可以了。 $orderby, ‘order’ =>

wordpress如何跳转页面wordpress如何跳转页面

从wordpress后台登入自己的博客网站。 仪表盘中找到页面——新建页面。 填写页面名称——修改固定链接——在文本情况下输入以下代码:【代码如图中所示】 简单便捷好用【图中为演示地址】

wordpress如何在一个页面显示所有文章wordpress如何在一个页面显示所有文章

让WordPress一个页面显示全部分类的文章 cat=’ . $cat-> php echo $cat-> a href=”< $cats = get_categories(array(‘include’ =>

wordpress礼物淘宝客主题:imwpgiftwordpress礼物淘宝客主题:imwpgift

一款礼物类型的淘宝客主题,能够为你带来丰厚的利润的主题! 整体以简洁为主,突出礼物图片,适合人群、年龄、场景等,拥有明显的购买按钮,用户可以从寻找礼物到完成购买,形成体验闭环。

好看 (0) 很好看 (0) 非常好看 (0)
赞赏

微信赞赏支付宝赞赏