正在查看 3 個帖子:1-3 (共 3 個帖子)
-
作者帖子
-
有一款插件可以實現標題中所説的效果,叫 「Search Limiter & Blocker」,但這款插件的效果太 「廣泛」 了:一旦達到次數限制,插件會限制用户訪問任何頁面,而不是 「只限制訪問搜索頁面」 。
我在其他地方搜索過類似 「wordpress limit search rate」 等關鍵字,沒有找到結果。
換言之,需求是:當用户在一定時間 (如 60 秒) 內 執行了超過一定次數的搜索 (如 2 次),就阻止用户繼續搜索 (比如用
die
結束請求) 。已解決。
使用 「Search Limiter & Blocker」 插件,編輯
search-limiter-blocker.php
的第 169 行 (附近有 「Check for block」 字樣),將'blocked' === $is_block
改成'blocked' === $is_block && $query->is_search
即可。解決了的話,那我補充個直接完全禁用 WordPress 搜索功能的
/* //禁用 WordPress 全局搜索功能 //https://bbs.weixiaoduo.com/topic/37960 */ function fb_filter_query( $query, $error = true ) { if ( is_search() ) { $query->is_search = false; $query->query_vars[s] = false; $query->query[s] = false; // to error if ( $error == true ) $query->is_404 = true; } } add_action( 'parse_query', 'fb_filter_query' ); add_filter( 'get_search_form', create_function( '$a', "return null;" ) );
-
作者帖子
正在查看 3 個帖子:1-3 (共 3 個帖子)
- 哎呀,回覆話題必需登錄。