Intereting Posts
Использование javascript на новой странице предварительного просмотра виджета / настройки Возврат категории / название категории из категории ID Получать изображения только в том случае, если родительский статус публикуется Создание пользовательских wp_dropdown_categories Условный оператор: if is_category, добавьте в конце страницы Как сделать Custom Walker для wp_nav_menu () для материализации рамки Игнорировать сообщение по мета-значению в основном запросе шаблон шаблона персонализированного почтового типа на пользовательский таксономический термин Полоса символов из имени тега Дайте администратору сайта возможность «пропустить подтверждение по электронной почте» при добавлении нового пользователя изображения не отображаются после передачи Неверный IP-адрес в разделе комментариев wp_mail () заголовки multipart / alternative Почему я не могу набрать открывающие и закрывающие скобки на вкладке Visual? Почему Featured Images не загружается в резервную копию?

Добавление метаданных в сообщение вложения

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

Поэтому я думал, что это может сработать:

У меня есть аргументы:

$args = array( 'order' => 'ASC', 'post_type' => 'attachment', 'post_parent' => $post->ID, 'post_mime_type' => 'image', 'post_status' => null, 'numberposts' => -1, ); 

Затем я получаю сообщения (вложения) с $ att_posts = get_posts ($ args);

Затем я хотел бы добавить к каждому прикрепленному сообщению мета-данные под названием «цена», значение которого я получаю через get_post_meta ($ post-> ID, «key», true) ['price'] ;.

Поэтому я подумал, что это сделает работу над добавлением метаданных:

 foreach($att_posts as $att){ wp_update_attachment_metadata( $att->ID, array("price"=>get_post_meta($post->ID, 'key', true)['price']))); } 

Поэтому я снова объявил другие аргументы, но на этот раз заказал «meta_value_num» с мета-ключом «цена».

Но это не сработало.

Любой орган знает простой способ сделать это возможным? Какие-нибудь советы?

Благодарю.

РЕДАКТИРОВАТЬ:

Вот весь мой код для получения изображений вложений, упорядоченных по цене «meta_key».

 $args = array( 'order' => 'ASC', 'post_type' => 'attachment', 'post_parent' => $post->ID, 'post_mime_type' => 'image', 'post_status' => null, 'numberposts' => -1, ); $att_posts = get_posts($args); if ($att_posts) { foreach( $att_posts as $att ) { wp_update_attachment_metadata( $att->ID, array( 'price' => get_post_meta( $post->ID, 'price', true ) ) ); } } $args = array( 'order' => 'ASC', 'orderby' =>'meta_value_num', 'meta_key' =>'price', 'post_type' => 'attachment', 'post_parent' => $post->ID, 'post_mime_type' => 'image', 'post_status' => null, 'numberposts' => -1, ); $attachments = get_posts($args); if ($attachments) { foreach ($attachments as $attachment) { echo '<a href='.$surl.'/'.$post->post_name.'>'.wp_get_attachment_image($attachment- >ID, 'thumbnail_large').'</a>'; } }else{ echo '<a href='.$surl.'/'.$post->post_name.'>'.'<div class=\'thumbnail-small-img- search\'></div>'.'</a>'; } 

Но все равно не работает.

Другой способ задать вопрос: как добавить метаданные в сообщения вложений. И позже, получите сообщения вложений, упорядоченные по этим метаданным, называемым «цена».

Целью этого является отображение вычисленного списка сообщений с изображениями, упорядоченными по цене от дешевого до дорогостоящего.

Это будет вызвано кнопкой отправки на одну страницу веб-сайта.

Так как attachments являются типами сообщений, вы должны уметь назначать им postmeta как и любой другой тип сообщения.

Использование функции update_post_meta должно привести вас туда, где вам нужно.

update_post_meta( $attachment_id, 'price', $price );

http://codex.wordpress.org/Function_Reference/update_post_meta

Затем запустите запрос на основе мета-ключа.

 $args = array( 'order' => 'ASC', 'post_type' => 'attachment', 'post_parent' => $post->ID, 'post_mime_type' => 'image', 'post_status' => null, 'numberposts' => -1, 'meta_key' => 'price', ); 

http://codex.wordpress.org/Template_Tags/get_posts#Parameters