Array फॉर्मेट में WordPress Username कैसे प्राप्त करें


11

मैं वर्डप्रेस में एक स्वत: पूर्ण फ़ंक्शन बनाना चाहता हूं। मुझे एक खोज क्षेत्र चाहिए जहां से उपयोगकर्ता नाम खोजा जा सकता है। मैं JQuery UI का उपयोग कर रहा हूं।

<label>Users</label>

<input type="text" name="user_name" id="user-name" />

<?php

$get_arr_user = array('John', 'Rogers', 'Paul', 'Amanda', 'Peter');

?>

<script>

jQuery(document).ready(function($) {                                
var availableTags = <?php echo json_encode($get_arr_user); ?>;
$( "#user-name" ).autocomplete({
source: availableTags
});
});

</script>

मेरी समस्या यह है कि मैं इस प्रारूप में उपयोगकर्ता नाम की सूची प्राप्त करने में सक्षम नहीं हूं - array('John', 'Rogers', 'Paul', 'Amanda', 'Peter');मुझे यह कैसे मिलेगा?

जवाबों:


16

अन्य उत्तर सही हैं, लेकिन कम कोड का उपयोग करके समान चीज़ को प्राप्त करना संभव है wp_list_pluck():

$users = get_users();
$user_names = wp_list_pluck( $users, 'display_name' );

wp_list_pluck()इस तरह से display_nameएक लूप की जरूरत के बिना एक सरणी में सभी उपयोगकर्ताओं के क्षेत्र मिल जाएगा ।


2
+1। इसके अलावा, अगर कम कोड का लक्ष्य है, तो क्यों नहीं $user_names = wp_list_pluck( get_users(), 'display_name' );;)
फ़याज़

1
हाँ, यह काम करेगा। मैंने उन्हें केवल उन अन्य उत्तरों के साथ स्पष्टता और निरंतरता के लिए अलग किया, जिनका मैं संदर्भ दे रहा था। हालांकि मैं शायद उन्हें अपने कोड में अलग छोड़ दूंगा, लेकिन मैं फ़ंक्शन के रूप में तर्क का उपयोग करने का शौकीन नहीं हूं।
जैकब पीटी जूल

3

को देखो get_users()समारोह।

<?php

$users = get_users();

foreach( $users as $user ) {
    // get user names from the object and add them to the array
    $get_arr_user[] = $user->display_name;
}

और आपको निम्नलिखित के समान सरणी मिलेगी:

Array
(
    [0] => John Doe
    [1] => Jane Doe
    [2] => Baby Doe
)

मुझे पूरा यकीन है कि आप प्रवेश, आदेश नाम और कुछ को बाहर करना चाहते हैं। इसलिए, अधिक तर्कों का पता लगाने के लिए दस्तावेज़ देखेंget_users()


3

get_usersसमारोह आप उपयोगकर्ता ऑब्जेक्ट की श्रृंखला, जिसमें से आप उपयोगकर्ता नामों की एक सरणी निकाल सकते हैं दे देंगे। ऐशे ही:

$args = array(); // define in case you want not all users but a selection
$users = get_users( $args );
$user_names = array();
foreach ( $users as $user ) {
    $user_names[] = $user->user_login;
}

अब $user_namesलॉगिन नामों के साथ एक सरणी है। आप निश्चित रूप से, यह भी उपयोग कर सकते हैं user_nicename, last_nameया जो भी जानकारी में उपलब्ध है wp_userवस्तु

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.