পোস্টগুলি যেমন the_post()
(যথাক্রমে মাধ্যমে setup_postdata()
) এর মাধ্যমে তাদের ডেটা সেট আপ হয় এবং তাই এপিআইয়ের মাধ্যমে অ্যাক্সেসযোগ্য ( get_the_ID()
উদাহরণস্বরূপ), আসুন আমরা ধরে নিই যে আমরা ব্যবহারকারীদের একটি সেট দিয়ে লুপ করছি ( বর্তমানে লগইন করা ব্যবহারকারীর setup_userdata()
গ্লোবাল ভেরিয়েবলগুলি পূরণ করে এবং isn ' টি এই কাজের জন্য দরকারী নয়) এবং ব্যবহারকারীর প্রতি মেটা ডেটা প্রদর্শনের চেষ্টা করুন:
<?php
get_header();
// etc.
// In the main template file
$users = new \WP_User_Query( [ ... ] );
foreach ( $users as $user )
{
set_query_var( 'user_id', absint( $user->ID ) );
get_template_part( 'template-parts/user', 'contact_methods' );
}
তারপরে, আমাদের wpse-theme/template-parts/user-contact_methods.php
ফাইলে, আমাদের ব্যবহারকারীর আইডি অ্যাক্সেস করতে হবে:
<?php
/** @var int $user_id */
$some_meta = get_the_author_meta( 'some_meta', $user_id );
var_dump( $some_meta );
এটাই.
ব্যাখ্যাটি আপনার প্রশ্নে উদ্ধৃত অংশের ঠিক উপরে:
যাইহোক, load_template()
যা লোড হওয়া টেম্পলেটটির get_template_part()
স্কোয়ারে সমস্ত WP_Query
ক্যোয়ারী ভেরিয়েবলগুলি পরোক্ষভাবে বলা হয় ।
নেটিভ পিএইচপি extract()
ফাংশন ভেরিয়েবলগুলি ( global $wp_query->query_vars
সম্পত্তি) "নিষ্কাশন" করে এবং প্রতিটি অংশকে তার নিজস্ব ভেরিয়েবলের মধ্যে রাখে যা কী হিসাবে ঠিক একই নাম রয়েছে। অন্য কথায়:
set_query_var( 'foo', 'bar' );
$GLOBALS['wp_query'] (object)
-> query_vars (array)
foo => bar (string 3)
extract( $wp_query->query_vars );
var_dump( $foo );
// Result:
(string 3) 'bar'
set_query_var
এবংget_query_var
অবশ্য এই একটি মান ব্যবহার করার জন্য ছিল$args
অ্যারের একটি প্রেরণ করাWP_Query
। এটি শিখতে শুরু করা অন্যান্য ব্যক্তির জন্য সহায়ক হতে পারে।