Мультимедийный цикл WordPress от «Загружено пользователем»

У меня есть веб-страница, на которой я хочу отображать изображения, загруженные определенным автором.

В серверной части, если я смотрю на мультимедиа, каждое изображение имеет атрибут «Загружен», а затем имя автора.

пример http://www.discoveryourwonder.com/wp-content/uploads/2015/05/sg.png

Я пытался использовать этот цикл:

<?php
// The Query
$args = array(
'author'      => $author_name_variable, // Replace with author id
'post_status' => 'any',
'post_type'   => 'attachment'
);
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {
echo '<ul>';
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo '<li>' . the_content() . '</li>';
}
echo '</ul>';
} else {
// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();
?>

Это очень глючит. Некоторые авторы будут показывать каждый медиафайл, другие нет; остальные просто неточны. Это настоящий слепой выстрел: /

Цель состоит в том, чтобы перебрать все медиа-файлы, а затем опубликовать the_content() всех файлов с соответствующим загруженным именем.

1

Решение

Я был бы признателен, если бы кто-то мог прокомментировать, почему идентификатор является более надежным, чем пуля в аргументе «автора».

Я нашел решение. Очевидно, аргумент ‘author’ не любит имена пользователей, поэтому я преобразовал его в ID, и теперь он работает. я использовал get_user_by( 'slug', $username ); получить всю информацию о конкретном имени пользователя, а затем присвоить этот массив переменной. Затем я отфильтровал переменную, чтобы использовать только идентификатор, и передал ее через аргументы.

Вот рабочий цикл:

<?php
// The Query
$profileid = get_user_by( 'slug', $username );
$args = array(
'author'      => $profileid->id, // Replace with author id
'post_status' => 'inheret',
'post_type'   => 'attachment'
);
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {
echo '<ul>';
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo '<li>' . the_content() . '</li>';
}
echo '</ul>';
} else {
// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector