Как добавить строку «Артикул» на странице магазина
В зависимости от задач, поставленных в процессе разработки магазина, вам может понадобиться добавить строку с полем Артикул в режиме просмотра товарных категорий. Для этого нужно всего лишь добавить следующий код в файл functions.php вашей темы или в плагин для сайта WordPress:
add_action( 'woocommerce_after_shop_loop_item_title', 'shop_sku' ); function shop_sku(){ global $product; echo '<span itemprop="productID" class="sku">Артикул: ' . $product->sku . '</span>'; }
Добавляем произвольный текст перед ценой
Простой способ добавить собственный текст перед ценой в магазине, который предполагает добавление только лишь правила CSS:
.product-summary span.amount::before { content: 'Цена: '; color: #bbb; }
Картинка простого товара в сгруппированном товаре
В WooCommerce предусмотрена возможность добавления сгруппированного товара на основе простых товаров в магазине. Код ниже выведет кликабельные картинки простых товаров. Добавляем его в файл functions.php темы.
<?php add_action( 'woocommerce_grouped_product_list_before_price', 'woocommerce_grouped_product_thumbnail' ); function woocommerce_grouped_product_thumbnail( $product ) { $attachment_id = get_post_meta( $product->id, '_thumbnail_id', true ); $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large' ); ?> <td class="label"> <a href="<?php echo $large_image_url[0];?>" title="<?php the_title_attribute(''); ?>"><?php the_post_thumbnail( 'thumbnail' ); ?></a> </td> <?php }
Проверяем, находится ли товар в определенной товарной категории в карточке товара Woocommerce
Нижеприведенный код позволит добавить проверку нахождения товара в определенной категории:
<?php global $post; $terms = wp_get_post_terms( $post->ID, 'product_cat' ); foreach ( $terms as $term ) $categories[] = $term->slug; if ( in_array( 'audio', $categories ) ) { echo 'В категории Аудио'; woocommerce_get_template_part( 'content', 'single-product' ); } elseif ( in_array( 'elektro', $categories ) ) { echo 'В категории Электро'; woocommerce_get_template_part( 'content', 'single-product' ); } else { echo 'другой текст'; }
Редактируем страницу «Мой аккаунт» в WooCommerce 2.6.x
В WooCommerce версии 2.6.x изменился внешний вид личного кабинета магазина. Вам может понадобиться возможность ее модифицировать.
1. Для изменения текста «Консоль» в functions.php своей темы вставляем следующий код:
function my_woocommerce_account_menu_items($items) { $items['dashboard'] = "Моя консоль"; return $items; } add_filter( 'woocommerce_account_menu_items', 'my_woocommerce_account_menu_items', 10 );
2. Для удаления любой вкладки достаточно в административной части удалить нужные «Эндпоинты Моего аккаунта» (WooCommerce -> Настройки -> Аккаунты) или же в файл functions.php свой темы вставить код, при этом раскомментировав то, что нужно скрыть.
function my_woocommerce_account_menu_items($items) { // unset($items['dashboard']); // убрать вкладку Консоль // unset($items['orders']); // убрать вкладку Заказы // unset($items['downloads']); // убрать вкладку Загрузки // unset($items['edit-address']); // убрать вкладку Адреса // unset($items['edit-account']); // убрать вкладку Детали учетной записи // unset($items['customer-logout']); // убрать вкладку Выйти return $items; } add_filter( 'woocommerce_account_menu_items', 'my_woocommerce_account_menu_items', 10 );
Убираем заголовок категорий на главной странице магазина
Код ниже позволит вам скрыть название категорий на главной странице магазина. Добавляем код в файл functions.php темы.
// убрать заголовок категорий на главной странице магазина function my_woocommerce_shop_loop_subcategory_title($category) { if (is_shop()) { remove_action( 'woocommerce_shop_loop_subcategory_title', 'woocommerce_template_loop_category_title', 10 ); } return $category; } add_action( 'woocommerce_shop_loop_subcategory_title', 'my_woocommerce_shop_loop_subcategory_title', 5 );
Как назначить автора товару в WooСommerce
Если у вас возникла необходимость по какой-либо причине назначить каждому товару автора, то код ниже позволит вам это сделать.
add_action('init', 'wpse_74054_add_author_woocommerce', 999 ); function wpse_74054_add_author_woocommerce() { add_post_type_support( 'product', 'author' ); }
Если вы начинаете разбираться с WooCommerce, то не забудьте посетить нашу рубрику WooCommerce, где мы публикуем материалы специально по тематике магазинов на этой платформе.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.