প্রধান সারণীটি অনুসন্ধান করা হচ্ছে
কেবল WP_User_Query
অনুসন্ধান যুক্তি দিয়ে ব্যবহার করুন ।
সুতরাং আপনি যদি কোনও ব্যবহারকারীর জন্য উদাহরণটি সারণী user_email
থেকে তার বা অনুরূপ কলামগুলিতে কোনও কীওয়ার্ড সহ অনুসন্ধান করতে চান {$wpdb->prefix}users
তবে আপনি নিম্নলিখিতটি করতে পারেন:
$users = new WP_User_Query( array(
'search' => '*'.esc_attr( $your_search_string ).'*',
'search_columns' => array(
'user_login',
'user_nicename',
'user_email',
'user_url',
),
) );
$users_found = $users->get_results();
*
এটি একটি ওয়াইল্ডকার্ড মনে রাখবেন । উদাহরণস্বরূপ সীমাবদ্ধ তাই user_email
একটি একক ডোমেনে আপনি নিম্নলিখিত অনুসন্ধান স্ট্রিং দিতে হবে: *@example.com
।
search
স্ট্রিং কিছু "জাদু" বৈশিষ্ট্য আছে: search_columns
ডিফল্ট ...
user_email
আর্গ @
উপস্থিত থাকলে search
।
user_login
এবং ID
যদি search
ARG সাংখ্যিক
user_url
যদি search
স্ট্রিং ধারণ করে http://
বাhttps://
- বা ...
user_login
এবং user_nicename
যদি একটি স্ট্রিং উপস্থিত থাকে।
এই সমস্ত ডিফল্ট কেবল তখনই সেট করা থাকে যদি কোনও search_columns
যুক্তি নির্দিষ্ট না করা থাকে।
মেটা টেবিলটি অনুসন্ধান করা হচ্ছে
আপনি উদাহরণস্বরূপ first_name
বা যদি অনুসন্ধান করতে চান last_name
, তবে meta_query
তারা প্রধান টেবিলের অংশ না হওয়ায় আপনাকে একটি কাজ করতে হবে :
$search_string = esc_attr( trim( get_query_var('s') ) );
$users = new WP_User_Query( array(
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'first_name',
'value' => $search_string,
'compare' => 'LIKE'
),
array(
'key' => 'last_name',
'value' => $search_string,
'compare' => 'LIKE'
)
)
) );
$users_found = $users->get_results();
আপনি সঠিক অনুসন্ধানের স্ট্রিংটি পুনরুদ্ধার করেছেন তা নিশ্চিত করুন। সাধারণত এটি হতে পারে get_query_var('s');
তবে এটি হতে পারে - আপনার ফর্মের উপর নির্ভর করে name/id
কিছু আলাদা হতে পারে যা আপনি $_GET['user_search']
উদাহরণস্বরূপ ব্যবহার করে পুনরুদ্ধার করতে চাইতে পারেন । এটি যথাযথভাবে এস্যাক করা নিশ্চিত করুন এবং স্ট্রিংয়ের শুরু এবং শেষ থেকে অযাচিত সাদা স্থান সরিয়ে ফেলুন।
মনে রাখবেন যে array( array() )
এটি relation
কী হিসাবে রয়েছে is আপনি যদি কেবল একটি একক কী অনুসন্ধান করতে চান তবে নিম্নলিখিতগুলি দিয়ে যাওয়া আরও সহজ হতে পারে:
$search_string = esc_attr( trim( get_query_var('s') ) );
$users = new WP_User_Query( array(
'meta_key' => 'first_name',
'meta_value' => $search_string,
'meta_compare' => 'LIKE',
) );
$users_found = $users->get_results();
চূড়ান্ত ক্যোয়ারী
ফলাফলটি নিচের দিকে দেখতে পারে :
$search_string = esc_attr( trim( get_query_var('s') ) );
$users = new WP_User_Query( array(
'search' => "*{$search_string}*",
'search_columns' => array(
'user_login',
'user_nicename',
'user_email',
'user_url',
),
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'first_name',
'value' => $search_string,
'compare' => 'LIKE'
),
array(
'key' => 'last_name',
'value' => $search_string,
'compare' => 'LIKE'
)
)
) );
$users_found = $users->get_results();