Woocommerce вывод отдельных атрибутов после регистрации

Woocommerce вывод отдельных атрибутов после регистрации

Часто нужно выводить какой-либо важный атрибут только после регистрации, к примеру, размер, или цвет.

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

Мы рекомендуем использовать эту опцию с осторожностью, ведь полезная информация не находится от пользователя на расстоянии 1 клика, и он может просто уйти и искать другой, более удобный вариант.

Итак, сама реализация, взглянем в код:

if(is_user_logged_in()) {

// Функция вывода атрибута
function getatribut() {
global $product;
// Получаем элементы таксономии
$attribute_names = get_the_terms($product->get_id(), 'pa_number');
$attribute_name = 'pa_number';
if ($attribute_names) {
// Выводим имя атрибута
echo wc_attribute_label($attribute_name);
// Выборка значения атрибута
foreach ($attribute_names as $attribute_name):
// Вывод значений атрибута
echo ' '.$attribute_name->name;
endforeach;
}
}
} else {
// Функция вывода атрибута
function getatribut() {
echo 'Номер доступен после регистрации';
}

}
// Определяем место вывода атрибута
add_action('woocommerce_single_product_summary', 'getatribut', 64);

Данный код вносим в конец файла functions.php находящегося в папке используемой темы.

pa_number - это атрибут с "перефиксом" pa_.

Вы можете использовать любой другой, например для атрибута «color» используем в коде pa_color.

64 — это позиция, куда «вставляется» данный атрибут. Чем меньше число, тем ближе к «верху» будет находится атрибут.