お世話になっております。タイトルのとおりなのですが、問題を解決できずに困っています。どうぞ問題解決のため手助けいただきたいです。
発生している問題
ワードプレスACFのフィールドタイプ「投稿オブジェクト」の検索を行った際にタイトルや本文を参照して関連記事を出力してくれますが、カスタムフィールドの値が参照されません。以下のコードでカスタムフィールドも参照するように試してみたのですが、どうにも上手くいきません。
PHP
1//タイトルもしくはカスタムフィールドで検索 2add_action( 'pre_get_posts', function( $q ) 3{ 4 if( $title = $q->get( '_meta_or_title' ) ) 5 { 6 add_filter( 'get_meta_sql', function( $sql ) use ( $title ) 7 { 8 global $wpdb; 9 10 // Only run once: 11 static $nr = 0; 12 if( 0 != $nr++ ) return $sql; 13 14 // Modified WHERE 15 $sql['where'] = sprintf( 16 " AND ( %s OR %s ) ", 17 $wpdb->prepare( "{$wpdb->posts}.post_title like '%%%s%%'", $title), 18 mb_substr( $sql['where'], 5, mb_strlen( $sql['where'] ) ) 19 ); 20 21 return $sql; 22 }); 23 } 24}); 25//投稿オブジェクト 26function my_post_object_query( $args, $field, $post_id ) { 27 $args['_meta_or_title']=$args['s']; 28 $args['meta_query'] = array( 29 array( 30 'key' => 'ここにカスタムフィールドのキーを入力', 31 'value' => $args['s'], 32 'compare' => 'LIKE', 33 ) 34 ); 35 return $args; 36} 37add_filter('acf/fields/post_object/query', 'my_post_object_query', 10, 3);
実現したいこと
タイトルもしくはカスタムフィールドで参照できるようにしたいのですが、どのようにしたらよろしいか教えていただけますと幸いです。
参照した記事
ACF公式サイト
回答1件
あなたの回答
tips
プレビュー