/ Сайтостроение / Плагины / Массовое редактирование свойств товаров

Массовое редактирование свойств товаров

HIT

12.06.2016

6177

7

Быстрое изменение товаров

Для того чтобы массово отредактировать товары woocommerce нужно установить плагин Woocommerce advanced bulk edit. В репозитории плагинов WordPress его нет, он платный. Если поискать на просторах интернета — можно найти и бесплатно.

Плагин интуитивно понятен и прост в настройке и использовании.

Работа с плагином Woocommerce advanced bulk edit

1. Первым делом выбираем какие поля нужно отображать в таблице массового редактирования. Синяя кнопка Show/Hide Fields внизу слева.

2. Делаем выборку товаров. Сверху вводим данные категория (можно несколько), производитель (произвольная таксономия), цена (>), метки и т.д. После того как выбрали нажать кнопку Get Products.

При выборе категорий, если зажать CNTR то можно выбирать сразу несколько категорий. А еще можно ввести название нужной категории и она выведется.

3. Если из выбранных товаров нам нужно сделать более точную выборку — кнопка Selection Manager. Там в необходимом поле вводим значение по которому нужно выделить строки. Например нужно выделить все вариативные товары, вводим в поле тип товара — variable, в выпадающем списке contains (содержит), и нажимаем ОК. Все необходимые товары выделятся галкой.

4. Массовое добавление/изменение параметров. После того как мы выделили необходимые строки, жмем Bulk Edit, и там заполняем соответствующие поля для массового заполнения.

После всех манипуляций жмем кнопку Save Changes.

Данным плагином можно создавать копии товаров — кнопка Dublicate. Вот только пока не пойму, для чего это может пригодится?!

Массовое добавление сопутствующих товаров

Если у нас на сайте много товаров, то «по быстрому» наполнить сопутствующие товары можно через плагин Advanced bulk edit.
Для этого делаем все как описано выше. При этом включаем поле Cross-Sells. Делаем выборку по определенной категории, т.к. в рамках одной категории можно делать одинаковые сопутствующие товары. При заполнении указываем через запятую ID сопутствующих товаров (644, 1042, 1024, 1587, 1319). И таким образом заполняем сопутку для каждой категории.

Для удобства можно сделать так: заполняем в каждой категории один товар классическим способом, а после в плагине Advanced bulk edit дублируем значение на все остальные товары.

И не забываем после всех действий — надо нажать кнопку Save Changes!

Массовое добавление миниатюр

Для того чтобы добавить миниатюру для нескольких (многих/всех) товаров. Нужно чтоб данное поле было включено + выбрать галками все товары для добавления. Нажать на пустою клетку миниатюры у любого товара. !Включить галку Apply action to all selected products (Применить для всех выбранных), нажать ссылку Set product image и выбрать необходимое изображение. Таким же образом можно массово удалять или менять миниатюры.

Изменения миниатюр сохраняется сразу, без нажатия кнопки Save Changes.

Быстрое изменение цен

Чтобы была возможность быстро менять цены товаров не входя в каждую карточку, нужно прописать следующую функцию (работает на ajax!):

function true_add_post_columns($my_columns){
 $slider = array( 'price' => 'Цена' );
 $my_columns = array_slice( $my_columns, 0, 5, true ) + $slider + array_slice( $my_columns, 5, NULL, true );
 return $my_columns;
}
 
function true_fill_post_columns( $column ) {
 global $post;
 switch ( $column ) {
 case 'price':
 echo '<input type="text" class="this_price" data-id="' . $post->ID .'" value="' . get_post_meta( $post->ID, '_price', true ) . '" /><p></p>';
 break;
 }
}
 
add_filter( 'manage_edit-product_columns', 'true_add_post_columns', 10, 1 ); // manage_edit-{тип поста}_columns
add_action( 'manage_posts_custom_column', 'true_fill_post_columns', 10, 1 );

wp_enqueue_script('jquery');
wp_enqueue_script('ajaxpostmeta', get_stylesheet_directory_uri() . '/ajax-post-meta.js', array('jquery'));

function updatePrice_callback(){ 
 update_post_meta($_POST['product_id'], '_price', esc_attr($_POST['price_val']));
 die();
}
 
if( is_admin() ) {
 add_action('wp_ajax_updatePrice', 'updatePrice_callback');
 // wp_ajax_nopriv_ не нужен, так как мы работаем в админке (а в админку не попадают незареганные пользователи)
}

Содержимое подключенного скрипта ajax-post-meta.js

jQuery(function($){
	$('.this_price').blur(function(){
		this_price = $(this);
		$.ajax({
			type:'POST',
			url:ajaxurl,
			data:'action=updatePrice&price_val=' + this_price.val() + '&product_id=' + this_price.attr('data-id'),
			beforeSend:function(xhr){
				this_price.attr('readonly','readonly').next().html('Сохраняю...');
			},
			success:function(results){
				this_price.removeAttr('readonly').next().html('<span style="color:#0FB10F">Сохранено</span>');
			}
		});
	});
});

Поиск и вывод произвольных полей

Чтобы массово редактировать произвольные поля их необходимо найти. Для этого переходим в интерфейс Find Custom Fields (снизу под таблицей товаров). Вводим ID товара, у которого это поле точно не пусто. Появится список потенциальных полей выбираем нужный и снизу нажимаем Save Selected and Close. Произвольные поля включаются /отключаются не из интерфейса Column Settings (Show/Hide Fields) как все остальные поля, а из Custom Fields. Там же можно и создать дополнительное поле.

При поиске поля Yoast метаописание ничего не находит, нужно у любого товара заполнить это поле и по нему (ID) сделать поиск. Тогда это поле найдется.

Тэги: , ,

Поделится информацией с друзьями

  • Похожие записи
  • Комментарии
  • Вложения
Фильтры Woocommerce

Фильтры Woocommerce

В базовую комплектацию Woocommerce входит набор виджетов для фильтрации товаров. Но данные виджеты необходимо несколько доработать. WooCommerce Навигация по слоям В этом виджете необходимо задать атрибут товара по которому будет Читать далее »

/ /
Сообщения woocommerce

Сообщения woocommerce

Сообщения woocommerce — система сопроводительной информации при использовании интернет-магазина. В системе есть 3 типа сообщений: информационные (notice), успешные действия (success), ошибки/предупреждения (error) Стандартные сообщения Это перечень стандартных сообщений разделенных по Читать далее »

WooCommerce and 1C:Enterprise

WooCommerce and 1C:Enterprise

Разбираем на элементы плагин WooCommerce and 1C:Enterprise/1С:Предприятие Data Exchange. Плагин дает функционал обмена данными между сайтом и программой 1С: Предприятие. Некоторые моменты синхронизации сайта с 1С описаны в статье Интеграция Читать далее »

Добавить комментарий

7 комментариев

  1. Аватар
    Андрей

    Подскажите как вывести в быстром редактировании цен вариативные цены (У меня их 4-5)

    1. Alexandr
      Alexandr

      Как это сделать пока не знаю. Но думаю это ОЧЕНЬ проблематично.

      1. Аватар
        Георгий

        Александр, здравствуйте.Я новичок в коде и прочем.Функцию я прописал в дочернюю тему в файл функций.пшпВ этой же папке создал файл ajax-post-meta.js и него вставил этот скрипт.Сохранил. Захожу в админку, в товары. Появилось окошко для редактирования цены. Но при вводе новой цены, ничего не меняется. 
        И ещё хотел спросить, можно ли сделать так же и с кол-вом на складе. Тоже прямое редактирование. 

        1. Alexandr
          Alexandr

          Постараюсь в ближайшие дни проработать данный функционал с количеством товара. По поводу неработоспособности скрипта: скажите, какая у Вас версия WC?

          1. Аватар
            Георгий

            Всё со скриптом хорошо:)Спасибо. Думаю, что для товаров сам соображу.Есть такой момент. Если у товара забиты 2 цены — основная и со скидкой, то этим кодом не редактируется ни одна из них. Думаю, здесь нужно как-то иначе подходить к вопросу.Есть ещё одна интересная вещь, может Вы знаете. При редактировании заказа (а именно удаление или добавление товара в заказ на прямую из админки), не происходит учет склада. Т.е. если добавить товар в заказ — со склада позиция не уходит, а если удалить из заказа товар — то на склад она не добавляется. Так как работает с физ товарами и с доставкой курьером, оплатой по факту, То очень часто клиенты звонят с просьбой изменить заказ (добавить/убрать/заменить). Всё это плохо сказывается над учетом склада)Может быть у Вас есть идеи?

  2. Аватар
    Олег

    нигде не найду описание или пример как пакетно добавить атрибуты к товарам?Пример: в товаре есть атрибут бренда «производитель такой то», к этому атрибуту в карточке товара надо добавить еще правило «производитель такой то — столы» Те выглядеть должно так: Бренд: «производитель такой то». «производитель такой то — столы» .

    1. Alexandr
      Alexandr

      Я не вполне понял, что Вы хотите реализовать. Вы пытаетесь реализовать иерархическую структуру метаполей?

Массовое редактирование свойств товаров
Вкладка Дополнительная информация
Рекомендации для васВкладка Дополнительная информацияOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.