はじめまして。初書き込みになります。
現在WordPressを使用し管理画面のプロフィールページ(profile.php)で名前やニックネームを登録しています。
こちらの情報をユーザー一覧(users.php)の右上のsearch-boxに名前やニックネームを入力して「ユーザーを検索」を押しても「お探しのユーザーは見つかりませんでした。」と表示され検索結果が表示されません。
調査したこと・試したこと
色々自分なりに調べてみたのですが
<a href="https://blog.gti.jp/post-5956/" target="_blank">こちらの記事</a>が似てると思い新規インストールしたWordPressの利用テーマ(Twenty Fourteenバージョン: 1.9)のfunctions.phpに追記してみたのですが
思った様にできませんでした。
記事に記載されていたコードはこちらになりす。
function extended_user_search( $user_query ) { // Make sure this is only applied to user search if ( $user_query->query_vars['search'] ){ $search = trim( $user_query->query_vars['search'], '*' ); if ( $_REQUEST['s'] == $search ){ global $wpdb; $user_query->query_from .= " JOIN wp_usermeta UM1 ON UM1.user_id = {$wpdb->users}.ID AND UM1.meta_key = 'first_name'"; $user_query->query_from .= " JOIN wp_usermeta UM2 ON UM2.user_id = {$wpdb->users}.ID AND UM2.meta_key = 'last_name'"; $user_query->query_from .= " JOIN wp_usermeta UM3 ON UM3.user_id = {$wpdb->users}.ID AND UM3.meta_key = 'user_title'"; $user_query->query_from .= " JOIN wp_usermeta UM4 ON UM4.user_id = {$wpdb->users}.ID AND UM4.meta_key = 'nickname'"; $user_query->query_where = 'WHERE 1=1' . $user_query->get_search_sql( $search, array( 'user_login', 'user_email', 'user_nicename', 'UM1.meta_value', 'UM2.meta_value', 'UM3.meta_value', 'UM4.meta_value' ), 'both' ); } } } add_action( 'pre_user_query', 'extended_user_search' );
WordPressのユーザー一覧検索はデフォルトでユーザー名やメールアドレスでは検索できる様です。
ユーザー一覧の検索で名前(姓、名)やニックネームでも検索できる方法がありましたら是非教えて下さい。
システム情報は以下になります。
WP Version: 4.7
PHP Version: 5.6.29
Database Version: 5.1.73
何卒、回答宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/22 08:28
2016/12/24 04:27
退会済みユーザー
2016/12/24 04:48
2016/12/24 05:05