Я делаю свой собственный тип записи, где я в настоящее время отображаю все изображения из галереи с флажком для каждого изображения.Я хочу, чтобы пользователь мог установить флажок для изображения, которое он / она хочет отобразить в записи.Эта часть работает.Проблема в том, что флажок снят после отправки формы.Как мне проверить это?
function po_product_image_html($post) {
echo '<div style="width: 80px; display: inline-block;">';
$imgs = get_media_library_images();
foreach ($imgs as $img)
{
echo '<img style="height: 80px; width: 80px; padding: 10px;" src="'.$img.'" />';
echo '<input name="product_image[]" type="checkbox" value="'.$img.'" />';
}
echo '</div>';
}
Функция сохранения формы.
function po_products_save_postdata() {
global $post;
update_post_meta($post->ID, 'product_desc', $_POST['product_desc']);
update_post_meta($post->ID, 'product_url', $_POST['product_url']);
update_post_meta($post->ID, 'product_image', $_POST['product_image']);
}
add_action('save_post', 'po_products_save_postdata');
Функция получения изображений из библиотеки мультимедиа, используемой впервый фрагмент кода.
function get_media_library_images()
{
$args = array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'post_status' => 'inherit',
'posts_per_page' => -1
);
$query_images = new WP_Query($args);
$images = array();
foreach ($query_images->posts as $image)
{
$images[] = $image->guid;
}
return $images;
}
Я попробовал isset($_POST['product_image'])
штуку с echo checked="checked"
в флажке, но пока не повезло.Проблема в том, что $_POST['product_image']
является массивом?
С уважением, Mac.