Gönderiler verilerini the_post()
(sırasıyla aracılığıyla setup_postdata()
) aldıklarından ve bu nedenle API aracılığıyla erişilebildiklerinde ( get_the_ID()
örneğin), bir kullanıcı grubu arasında dolaştığımızı varsayalım ( şu anda oturum açmış olan kullanıcının setup_userdata()
genel değişkenlerini doldurur ve t bu görev için faydalıdır) ve kullanıcı başına meta veri göstermeye çalışın:
<?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' );
}
Ardından, wpse-theme/template-parts/user-contact_methods.php
dosyamızda, kullanıcı kimliğine erişmemiz gerekiyor:
<?php
/** @var int $user_id */
$some_meta = get_the_author_meta( 'some_meta', $user_id );
var_dump( $some_meta );
Bu kadar.
Bu açıklama aslında sorunuzda alıntı yaptığınız kısmın tam üstünde:
Bununla birlikte, load_template()
dolaylı olarak get_template_part()
tüm WP_Query
sorgu değişkenlerinin çağırdığı , yüklü şablonun kapsamına ayıklar .
Yerel PHP extract()
işlevi değişkenleri ( global $wp_query->query_vars
özellik) "ayıklar" ve her parçayı anahtarla tamamen aynı olan kendi değişkenine yerleştirir. Başka bir deyişle:
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
veget_query_var
ancak bu$args
a'ya iletilen bir dizinin değerlerini kullanmak içindiWP_Query
. Bunu öğrenmeye başlayan diğer insanlar için yardımcı olabilir.