WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

Как передать в метаполе несколько изображений?

Помогите разобраться...

Скриптом загружаю несколько изображений на сайт, id загруженных сообщений попадают в массив. Затем массив $row передаю функции

update_post_meta($post_id , 'property_images', $row);

Но если посмотреть в коде html произвольного поля в value появляется значение Array. А по логике должны быть id фото через запятую...

<input class="rwmb-image_advanced" name="property_images" type="hidden" **value="Array"** data-attachments="[]" data-options="{"imageSize":"thumbnail","mimeType":"image","maxFiles":48,"forceDelete":false,"maxStatus":true}">

Сам скрипт

function download_photo($post_id, $imagesarray) {

	if( ! function_exists('media_handle_sideload') ) {
		require_once ABSPATH . 'wp-admin/includes/image.php';
		require_once ABSPATH . 'wp-admin/includes/file.php';
		require_once ABSPATH . 'wp-admin/includes/media.php';
	}

$row = [];
$file_array = [];

for($i=0; $i <= count($imagesarray)-1; $i++) {

// Установим данные файла
$tmp = download_url($imagesarray[$i]);

// Получаем имя файла
preg_match('/[^\?]+\.(jpg|jpe|jpeg|gif|png)/i', $imagesarray[$i], $matches );

$file_array['name'] = basename($matches[0]);
$file_array['tmp_name'] = $tmp;

// загружаем файл
$media_id = media_handle_sideload( $file_array, $post_id );

array_push($row, $media_id);

// Проверяем на наличие ошибок
if( is_wp_error($media_id) ) {
	@unlink($file_array['tmp_name']);
	echo $media_id->get_error_messages();
	exit;
}

// Удаляем временный файл
@unlink( $file_array['tmp_name'] );

}

update_post_meta($post_id , 'property_images', $row);

// Файл сохранён и добавлен в медиатеку WP. Теперь назначаем его в качестве обложки
set_post_thumbnail($post_id, $row[0]);

}

Как правильно привязать несколько фотографий к посту, чтобы они отображались в мета поле при редактировании новости, и соответственно в самом посту как на скрине?

П.С. Если добавить только одно изображение, отображается без проблем и в посте и при редактировании в метаполе.

0
wias
19 ноября 2019
  • 0
    kolshix546 paxtoy.com

    Есть тема в которой автор позаморочился и переписал много функций, но главный смысл и логику думаю вы сможете подчеркнуть из файла index.php - этой темы

    https://github.com/mediabots/Wordpress-Php-Image-Hosting-Script/blob/master/index.php

    wias 19 Ноя. 2019

    Может я не правильно выразился... Дело в том, фотографии добавляются через админку при создании поста без проблем. Меня интересует как добавить несколько фото к посту минуя админку. Когда я загружаю через скрипт фото

    media_handle_sideload( $file_array, $post_id );

    Фото загружаются и даже показывает привязку к посту

    Но в самой карточке и при редактировании поста отображается только одна фотка, хотя загружено 7 фото. Фото то загружаются в медиатеку без проблем, но не привязываются для нужного поста...

    Не пинайте сильно, WordPress изучаю 2 дня. Пытаюсь переделать шаблон недвижимости как практический урок

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация