Wordpress - Woocommerce - Вебмастерская
23 subscribers
155 photos
10 videos
1 file
193 links
Wordpress, Woocommerce, Деньги в Интернете, HTML, CSS, JavaScript » WpCraft
@maximko5 - по всем вопросам
Download Telegram
WORDPRESS: ВЫВОД СПИСКА КАТЕГОРИЙ ССЫЛКАМИ И С ИЗОБРАЖЕНИЯМИ
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #WoocommerceСкрипты #WordpressСкрипты #WordpressМеню #frontend #css
Задача 1. Необходимо сделать шорткод, который выводил бы список всех категорий товаров в магазине на Woocommerce. Также, нужно стилизовать список, чтобы дочерние категории сворачивались в родительскую.

Задача 2. Позже появилась похожая задача, но вывести нужно категории вместе с их прикрепленными изображениями, а подкатегории должны появляться во всплывающем списке при наведении курсора, либо разворачиваться при клике на мобильных экранах.

Решение 1: Используем функцию Wordpress wp_list_categories, которая будет выводить список всех категорий ссылками через шорткод [cats_list]. Сам шорткод добавляем в попап окно. Стилизуем и заставляем разворачиваться наш список.

Решение 2: Используем функцию Wordpress get_categories(), которая будет получать все категории с данными, а далее будем формировать структуру с картинками, названиями и ссылками и выводить через шорткод [cats_list_2]
================

💾 См. статью https://wpcraft.top/?p=3215
Пример 1: https://youtu.be/NEe6o047sPo
Пример 2: https://youtu.be/8Q57u3FjfEM

https://www.youtube.com/watch?v=8Q57u3FjfEM
https://www.youtube.com/watch?v=NEe6o047sPo
WOOCOMMERCE: ДРОБНОЕ КОЛИЧЕСТВО ТОВАРА + КОЛИЧЕСТВО УПАКОВОК
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #WoocommerceСкрипты #WordpressСкрипты #WordpressМеню #javascript
Задача. Часть товаров продаются по цене за м², но в упаковках. Необходимо на таких страницах товара добавить поле ввода числа упаковок при изменении которого будет изменяться стандартное поле количества товаров. Также нужно настроить поле количества товаров так, чтобы можно было вводить дробные числа, т.к. в упаковке, в большинстве случаев, будет не дробное число.

Решение: Алгоритм вывода кастомного поля товара и настройки дробного количества товара:

1. Сделать пользовательское поле в настройках товара (Код №1.1) в котором будем задавать шаг количества товара (оно же количество товара в одной упаковке).
2. Вывести на странице товара поле количества упаковок и цену за упаковки .
3. Сделать поле количества товара дробным в том случае, если в товаре задано значение поля шага из п.1.
4. Через код JavaScript настроить изменения полей количества товара и упаковок при изменении каждого. Также нужно чтобы был подсчет общей суммы за упаковки.
================

💾 См. статью https://wpcraft.top/?p=3355

https://vk.com/video-156714483_456239025
ВЫВОД ЗНАЧЕНИЙ ACF В ТАКСАНОМИЯХ: КАТЕГОРИЯХ И ИХ ПОДКАТЕГОРИЯХ
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #WordpressСкрипты #WordpressМеню
Задача. Необходимо вывести знаения пользовательских полей главной категории на страницах самой категории и ее подкатегориях. Если подробнее — то есть главные категории (без дочерних), к ним добавлены поля ACF, в которые прикрепляем выборочно нужные подкатегории. После чего эти прикрепленные подкатегории должны выводиться на странице самой категории и во всех ее подкатегориях. Получаются такие себе «плитки тегов» (Изображение 1 и 2).

Решение: Настраиваем ACF поля для категорий (или нужных таксономий). Присваиваем в категориях нужные нам значения. В файл functions.php добавляем Код №1.

💾 См. статью https://wpcraft.top/?p=3403
SEO By Yoast: Свои переменные в шаблоны для Title и Description
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #WordpressTitle #SEObyYoast #Yoast
Задача. Необходимо, используя плагин SEO By Yoast, в интернет-магазине на Woocommerce настроить шаблоны Title и Description для товаров и категорий по маске, где нужно выводить цену текущего товара для страниц товаров и минимальную цену товара в категории.

Решение: У SEO By Yoast нет в шаблонах Title и Description переменной для цены товара или минимальной цены категории. Цена товара есть только в платном дополнении. Но есть возможность зарегистрировать пользовательские переменные для этого плагина, создать свои функции получения цены и привязать их к нашим зарегистрированным переменным. Для регистрации кастомных переменных в SEO By Yoast добавить Код №1 в functions.php.

💾 См. статью https://wpcraft.top/?p=3488
WOOCOMMERCE: КАК УБРАТЬ ИЗ URL ПОДКАТЕГОРИЙ РОДИТЕЛЬСКИЕ КАТЕГОРИИ
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин
Задача. Убрать из URL подкатегорий родительские категории.

Решение: используем Код в functions.php:

function wpcraft_remove_parent_category_from_url( $args ) { 
$args['rewrite']['hierarchical'] = false;
return $args;
}

add_filter( 'woocommerce_taxonomy_args_product_cat', 'wpcraft_remove_parent_category_from_url' );

💾 См. статью https://wpcraft.top/?p=3517
WOOCOMMERCE: Как изменить текст «Выбрать опцию» в вариациях товара
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин
Задача. В вариативных товарах WooCommerce, если по умолчанию не установлена какая-то вариация, то в выпадающем списке будет текст «Выбрать опцию». Нужно заменить текст на «Выбрать размер».
Решение: используем фильтр 'woocommerce_dropdown_variation_attribute_options_args' Код в functions.php:

## Замена «Select an option» в вариатиных товарах 
add_filter( 'woocommerce_dropdown_variation_attribute_options_args', 'wpcrft_wc_filter_dropdown_select_opt', 10 );

function wpcrft_wc_filter_dropdown_select_opt( $args ) {
$args['show_option_none'] = 'Выбрать размер';
return $args;
}

💾 См. статью https://wpcraft.top/?p=3589
WOOCOMMERCE: КАК ПЕРЕНЕСТИ ФОРМУ КУПОНА НА СТРАНИЦЕ ОФОРМЛЕНИЯ ЗАКАЗА
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин
Задача. По умолчанию форма ввода купона на странице оформления заказа выводится вверху, перед формой самой оформления заказа. Необходимо вывести поле для ввода купона после итоговой суммы, перед выбором оплаты.

Решение: Форма купона выводится хуком 'woocommerce_checkout_coupon_form' в файе checkout/form-checkout.php (в зависимости от того, в теме или самим Woocommerce) в месте хука 'woocommerce_before_checkout_form'. В Интернете можно встретить решение, где предлагают удалить вывод купона в одном месте remove_action('woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10); и вывести через другой хук. Но такой вариант не будет работать — при применении купона будет перенаправлять сразу на оплату. Это происходит из-за того, что в HTML купон и оформление заказа — это две формы form. Но формы не могут быть вложены друг в друга.

Способ в Код №1 заключается в скрытии основной формы купона через CSS и добавлении кастомной в нужном месте. А данные купона будут передаваться от кастомной в основную через JavaScript. Результат в Изображение 1.

💾 См. статью https://wpcraft.top/?p=3596
WOOCOMMERCE: Список решений, настройки, скрипты, плагины, сервисы
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин

Дробное количество товара + количество упаковок
Перенос вкладки с атрибутами на странице товара
Шаг количества товара
Вывод атрибутов товаров на страницах каталога
Вывод товаров без цены или 0 в конце списка каталога
Как скрыть товары конкретных таксаномий (категорий, меток)
Поиск товаров по категориям
Автозаполнение полей оформления заказа
Отключение оплаты. Как принимать заказы без оплаты
Перенос формы купона на странице оформления заказа
Изменить символ валюты в зависимости от категории товара
Замена текста кнопки «В корзину»
«Недавно просмотренные товары» через виджет, плагины, свой шорткод
SEO By Yoast: Свои переменные в шаблоны для Title и Description
...
💾 Смотреть полный список https://wpcraft.top/?p=3604
WOOCOMMERCE: Массовое удаление всех товаров, атрибутов, категорий или других элементов разом
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #SQL #wordpressПлагины #woocommerceПлагины

Задача. В WooCommerce нет возможности массово выбрать и удалить атрибуты товаров. Так же очень неудобно удалять все товары или категории, когда их сотни или тысчи. При разработке магазина, это может понадобиться, когда атрибутов более 30 и вручную, довольно долго это делать.

Решение 1. Через SQL-запрос.
DELETE FROM wp_terms WHERE term_id IN
(SELECT term_id FROM wp_term_taxonomy WHERE taxonomy LIKE 'pa_%');
DELETE FROM wp_term_taxonomy WHERE taxonomy LIKE 'pa_%';
DELETE FROM wp_term_relationships WHERE term_taxonomy_id not IN
(SELECT term_taxonomy_id FROM wp_term_taxonomy);
DELETE FROM wp_woocommerce_attribute_taxonomies;
DELETE FROM wp_termmeta WHERE meta_key like 'order_pa_%';
DELETE FROM wp_options WHERE option_name LIKE ('_transient_wc_%');

Решение 2. Плагины:
+ WooCommerce Remove All Products
+ Store Toolkit for WooCommerce
+ WP Bulk Delete

...
💾 Подробнее: https://wpcraft.top/?p=3694
👌1
WOOCOMMERCE: Отключить опции вариативного товара которого нет
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #wordpressПлагины #woocommerceПлагины

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

Решение. Чтобы отключить возможность закончившихся вариаций товара, можно использовать хук 'woocommerce_variation_is_active' в Коде №1.

function wpcraft_filter_woocommerce_variation_is_visible( $true, $instance ) {
$variation = get_product( $instance->variation_id );
if ( $variation->get_stock_quantity() == 0 ) {
return false;
}
return true;
};
add_filter( 'woocommerce_variation_is_active', 'wpcraft_filter_woocommerce_variation_is_visible', 10, 4 );

...
💾 Подробнее: https://wpcraft.top/?p=3724
WOOCOMMERCE: Фильтр по атрибуту вариативных товаров которых нет в наличии
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин

Задача. В WooCommerce есть проблема со стандартным виджетом фильтра по атрибуту и вариативными товарами. Когда в вариативном товаре нет в наличии какого-то варианта по атрибуту, то при фильтрации по это опции все равно товар отображается. Например, есть товар у него и несколько вариаций по атрибуту «размер»: 36, 40, 43. Если вариант 42 закончился и его нет в наличии, то при фильтрации по размеру 42 пользователь все равно может увидеть этот товар, хотя его нет в наличии.
Решение 1. Скрыть из Магазина товары которых нет в наличии в настройках Woocommerce — Настройки — Товары — Запасы — Видимость закончившихся (Спрятать отсутствующие товары из каталога)
Но такой вариант не всегда уместен, т.к. товары скроются совсем из каталога, а не только при фильтрации. И с точки зрения SEO, лучше оставлять все товары.
Решение 2. Чтобы скрыть вариативные товары по опции которой нет в наличии именно при фильтрации, в functions.php вставляем Код №1 из статьи...
...
💾 Подробнее: https://wpcraft.top/?p=3790
👌1
WOOCOMMERCE: Вывод минимальной цены в вариативных товарах
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин

Задача. Необходимо вывести в вариативных товарах минимальную цену с префиксом «от» вместо диапазона цен.

Вариант 1.

/* Вывод минимальной цены в вариативных товарах */
add_filter('woocommerce_variable_price_html', 'wpcraft_variation_price_min', 10, 2);

function wpcraft_variation_price_min( $price, $product ) {
return 'от ' . wc_price($product->get_price());
}
...
💾 Вариант 2: https://wpcraft.top/?p=3840
WOOCOMMERCE: Как массово удалить товары из категории
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин ##wordpressПлагины #woocommerceПлагины

Задача. Необходимо удалить массово сразу тысячи товаров из конкретной категории Woocommerce. Проблема в том, что сервер не справляется с удолением даже по 50 шт. Удалять вручную по 10 товаров — плохой вариант.


Решение. Использовать плагин Store Toolkit for WooCommerce. Он может удалять товары по категориям. Проблема только в том, что плагин циклично удаляет по 100 товаров за раз. Сервер не вытягивает и быстро возвращает ошибку. В настройках плагина изменить количество товаров нельзя.

Можно попробовать изменить эту цифру в коде самого плагина. Примерно в 626-й строке файла / includes / functions.php изменить в массиве $args значение 'numberposts' => 100 на 10-20.
...
💾 Статья: https://wpcraft.top/?p=3875
WOOCOMMERCE: Массовое добавление alt и title для фото товаров
#wordpress #woocommerce #вебмастеринг #WpCraft #Интернетмагазин #woocommerceПлагины

Задача. На сайте много товаров. Атрибут alt тега img в изображениях товаров не указан. Нужно добавить этот атрибут во все фото товаров.

Решение 1. Можно в functions.php (или сделать плагином) добавить скрипт, который будет динамически подстовлять в атрибуты alt и title изображений товаров необходимые значения по шаблону. Т.е. в самих медиа alt и title не будут перезаписаны, а следовательно и в базе данных не будет изменений.

Решение 2. Плагины массового редактирования Alt:
- Update Image Tag Alt Attribute
- Woo Image SEO
...
💾 Статья: https://wpcraft.top/?p=3894
Forwarded from WordPress Digest (Mikhail Kobzarev)
Как добавить свою вкладку в настройки WooCommerce

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

Некоторые разработчики помещают их в раздел Настройки, некоторые — в пользовательский пункт меню, а некоторые просто засовывают их куда попало.

Если вы создаете WooCommerce расширение, то самое простое, что вы можете сделать для улучшения пользовательского интерфейса, — это разместить все настройки WooCommerce там, где их смогут найти пользователи — на новой вкладке настроек WooCommerce. Звучит довольно просто, но вы удивитесь, как много людей этого не делают.

🔥 https://www.kobzarev.com/wordpress/how-to-add-a-woocommerce-settings-tab/

#wordpress #wpdigest #woocommerce #development #settings
WooCommerce интеграция с 1С по Складам + Геотаргетинг по городам
#WooCommerce #1С #Геотаргетинг #Wordpress
Задача. Есть интернет-магазин на Woocommerce и база 1С: Предприятия. Компания продает товары в разных городах и имеет там свои склады. Главной целью является сделать интеграцию WordPress с 1С. В 1С есть учет по складам, а в Woocommerce их по умолчанию нет. Поэтому на сайте нужно реализовать эти склады, чтобы покупатель мог указывать где он будет забирать товар при заказе. Также необходимо настроить геотрагетинг так, чтобы на странице товара отображались для выбора только склады в выбранном или определившемся городе.

Решение. Для решения задачи по настройке обмена данными между 1С и Woocommerce со складами и геотаргетингом, будем использовать следующие плагины:

EDI — Обмен данными между WooCommerce и 1С — обмен данными между WooCommerce и приложением для бизнеса «1C:Предприятие 8. Управление торговлей» (и совместимыми).
Stock Locations for WooCommerce — плагин для реализации складов в Woocommerce.
WT Geotargeting — плагин определяет и выводит город пользователя.
Читать: https://wpcraft.top/woo-sklady-geotargeting/
Как включить отзывы сразу во всех товарах в Woocommerce
#Woocommerce #Wordpress #SQL
Задача: На сайте тысячи товаров. Jnpsds где-то включены, где-то нет. Нужно быстро включить их во всех товарах.

Решение: SQL-запрос включения отзывов во всех товарах:

UPDATE `wp_posts` SET comment_status = 'open' WHERE `post_type` = 'product'

💾 https://wpcraft.top/kak-vklyuchit-kommentarii-srazu-vo-vseh-tovarah-v-woocommerce/
👌1
💻 Обязательные плагины для WordPress
#WordPress #Woocommerce #Woo #ПлагиныWordPress #сайты
Необходимые WP плагины для каждого сайта
Cyr-To-Lat
Yoast SEO
XML Sitemap Generator for Google
Robin image optimizer
WebP Express
Index Now
Autoptimize
Jetpack Boost - Website Speed, Performance and Critical CSS
W3 Total Cache
WP-Sweep
BackWPup
WPS Hide Login

💾 Подробнее + Полезные WordPress плагины
👌2
Forwarded from WordPress Digest (Mikhail Kobzarev)
Как интегрировать пользовательские платежные шлюзы с блоком оформления заказа WooCommerce

В блоге Миши вы можете найти полное руководство по созданию платежного шлюза WooCommerce, но в последних версиях (начиная с 8.3) вы, наверное, уже заметили, что ваш пользовательский метод оплаты недоступен в блоке Checkout.

👉🏻 https://rudrastyh.com/woocommerce/checkout-block-payment-method-integration.html

#wordpress #woocommerce #development #gutenberg

🦄 WordPress Digest - Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
💻 Корзина и Оформление заказа на одной странице в Woocommerce
#WordPress #Woocommerce
⁉️ Необходимо было совместить страницы Корзины и Оформления заказа. По сути на странице нужно вывести три основных блока: Таблица товаров (как в корзине), Детали заказа и Заказ. Самая большая проблема заключалась в том, что по макету на странице две колонки — слева таблица товаров и под ней Детали заказа, а справа — блок Заказ. Но в шаблонах Woo Таблица с товарами это одна форма, а Детали заказа с блоком Заказ — другая. И вынести Детали заказа из своей формы и вставить куда хочешь — не получится.

В решении предлагаю скопировать шаблон формы заказа и добавить в него код из формы корзины + добавить скрипт который будет перемещать нужный блок и передавать данные.

💾 Скрипт