亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Warning: Missing argument 2 for wpdb::prepare()

Warning: Missing argument 2 for wpdb::prepare()

皈依舞 2023-04-17 21:17:05
add_filter('posts_orderby_request', 'wpjam_search_orderby_filter'); function wpjam_search_orderby_filter($orderby = ''){ if(is_search()){ global $wpdb; $keyword = $wpdb->prepare($_REQUEST['s']); return "((CASE WHEN {$wpdb->posts}.post_title LIKE '%{$keyword}%' THEN 2 ELSE 0 END) + (CASE WHEN {$wpdb->posts}.post_content LIKE '%{$keyword}%' THEN 1 ELSE 0 END)) DESC, {$wpdb->posts}.post_modified DESC,  {$wpdb->posts}.ID ASC"; }else{ return $orderby; } }提示錯誤:Warning: Missing argument 2 for wpdb::prepare(),$keyword = $wpdb->prepare($_REQUEST['s']);就是這一行。
查看完整描述

1 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

global $wpdb;
$sql = "((CASE WHEN {$wpdb->posts}.post_title LIKE '%s' THEN 2 ELSE 0 END) + (CASE WHEN {$wpdb->posts}.post_content LIKE '%s' THEN 1 ELSE 0 END)) DESC, {$wpdb->posts}.post_modified DESC,  {$wpdb->posts}.ID ASC";
$search = esc_sql(urldecode(stripslashes($_REQUEST['s'])));return sprintf($sql,$search,$search);

這是相關性排序吧?
跟lz說下,wp還對$_REQUEST['s']進行了一些處理.
比如test1 test2
會分成
$wpdb->posts.post_title LIKE '%test1%' and $wpdb->posts.post_title LIKE '%test2%'
其實還會search content,略過


查看完整回答
反對 回復 2023-04-20
  • 1 回答
  • 0 關注
  • 246 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號