• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Описание категорий Woocommerce вниз под товарами

Image CMS
#1
Здравствуйте, уже несколько дней мучаюсь, никак не могу перенести описание категорий вниз под товарами. Базово, отображается над товарами. Кто с этим сталкивался, убедительная просьба проконсультировать, заранее спасибо
 
#5
http://saphali.com/woocommerce-plugins/dual-description-in-category
ну вот принцип работы этого модуля тот, что добавляется дополнительное описание категории внизу под товарами! Стандарт, описание выглядит над товарами! И вот мне интересно, как в макете изменить вывод описания товара над ними!
 

galiulinr

Опытный
Местный
#6
Если вы хотите чтобы описание категории было не над товарами а под ними, тогда в файле archive-product.php ищем следующий код
Код:
<?php do_action( 'woocommerce_archive_description' ); ?>
вырезаем его, и спускаем ниже перед следующим кодом
Код:
<?php
        /**
         * woocommerce_after_main_content hook
         *
         * @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
         */
        do_action( 'woocommerce_after_main_content' );
    ?>
незабываем отредактированный файл archive-product.php перетащить в папку woocommerce вашей темы
 

sobbaka

Новичок
#7
вечер добрый
такая же проблема
тема Weaver II
есть файл archive-product.php
но не в теме, а в общей папке
...www\wp-content\plugins\woocommerce\templates
изменял как написано
реакции ноль
где еще искать?
 

sobbaka

Новичок
#8
нашел решение на другом сайте:

Итак, находим файл, который лежит /wp-content/plugins/woocommerce/templates.

1. Открываем его в ищем следующий фрагмент кода:

<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>

<?php endif; ?>

<?php do_action( 'woocommerce_archive_description' ); ?>
2.Вырезаем его и вставляем перед фрагментом кода woocommerce_after_main_content_hook.

Сохраняем файл и обновляем страницу сайта. И, о чудо, у нас все получилось. Описание категории товара находится ниже товара. У вас не так?

Внимательный читатель обратил, наверное, внимание на фразу «После долгих поисков, казалось, ответ был найден.» Вы догадались, что у меня не получилось. Почему? Проблема была в теме, которую я естественно менять не хотел. После долгих проб и ошибок в поиске решения проблемы — ответ был снова найдет. Но к сожалению не такой изящный, как описанный выше. Чем хорош первый вариант? А тем, что измененный файл кладешь в папку woocommerce, которая находится в вашей теме, и забываешь обо всем. Ни какие обновления woocommerce вам не страшны. Но делать нечего, цель поставлена и надо к ней идти. Итак, представляю вам второе решение проблемы:

1. Находим файл wc-template-functions.php. Он лежит :wp-content/plugins/woocommerce/includes/

2. Находим фрагмент кода:

<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>

<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>

<?php endif; ?>

<?php do_action( 'woocommerce_archive_description' ); ?>
3. Вырезаем его и вставляем ниже этой строки:

<?php woocommerce_product_loop_end(); ?>
4. Сохраняем файл и наслаждаемся проделанной работой.

Как я уже писал, недостатки этого метода в том, что при обновлении woocommerce обновиться файл, который был изменен. По этой причине, держите где-нибудь его копию.
 

sobbaka

Новичок
#10
По умолчанию WooCommerce позволяет редактировать архивные страницы только над категориями. Чтобы появилась возможность редактирования под категориями, необходимо внести изменения в файл archive-product.php.
Вырежите в данном файле строку:
<!—?php do_action( ‘woocommerce_archive_description’ ); ?—>
и вставьте её ниже под loop категорий.
Конкретно под строку:
<!—?php woocommerce_product_loop_end(); ?—>
Чтобы последующие обновления WooCommerce не затёрли изменённый файл, создайте в папке вашей темы папку woocommerce и вставьте туда этот файл.
 

searchingman

Гуру
Местный
#12
Если вы хотите чтобы описание категории было не над товарами а под ними, тогда в файле archive-product.php ищем следующий код
Код:
<?php do_action( 'woocommerce_archive_description' ); ?>
вырезаем его, и спускаем ниже перед следующим кодом
Код:
<?php
        /**
         * woocommerce_after_main_content hook
         *
         * @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
         */
        do_action( 'woocommerce_after_main_content' );
    ?>
незабываем отредактированный файл archive-product.php перетащить в папку woocommerce вашей темы
Того же эффекта можно достичь без правки файлов шаблонов WooCommerce с помощью добавления в functions.php темы следующего кода
PHP:
// удаляем описание категории на странице категорий
remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
// выводим описание категории под товарами
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
 

searchingman

Гуру
Местный
#13
нашел решение на другом сайте:

Итак, находим файл, который лежит /wp-content/plugins/woocommerce/templates.

1. Открываем его в ищем следующий фрагмент кода:

<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>

<?php endif; ?>

<?php do_action( 'woocommerce_archive_description' ); ?>
2.Вырезаем его и вставляем перед фрагментом кода woocommerce_after_main_content_hook.

Сохраняем файл и обновляем страницу сайта. И, о чудо, у нас все получилось. Описание категории товара находится ниже товара. У вас не так?

Внимательный читатель обратил, наверное, внимание на фразу «После долгих поисков, казалось, ответ был найден.» Вы догадались, что у меня не получилось. Почему? Проблема была в теме, которую я естественно менять не хотел. После долгих проб и ошибок в поиске решения проблемы — ответ был снова найдет. Но к сожалению не такой изящный, как описанный выше. Чем хорош первый вариант? А тем, что измененный файл кладешь в папку woocommerce, которая находится в вашей теме, и забываешь обо всем. Ни какие обновления woocommerce вам не страшны. Но делать нечего, цель поставлена и надо к ней идти. Итак, представляю вам второе решение проблемы:

1. Находим файл wc-template-functions.php. Он лежит :wp-content/plugins/woocommerce/includes/

2. Находим фрагмент кода:

<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>

<h1 class="page-title"><?php woocommerce_page_title(); ?></h1>

<?php endif; ?>

<?php do_action( 'woocommerce_archive_description' ); ?>
3. Вырезаем его и вставляем ниже этой строки:

<?php woocommerce_product_loop_end(); ?>
4. Сохраняем файл и наслаждаемся проделанной работой.

Как я уже писал, недостатки этого метода в том, что при обновлении woocommerce обновиться файл, который был изменен. По этой причине, держите где-нибудь его копию.
Так делать не стоит, т.к. при обновлении плагина WooCommerce изменения будет затерты.
Изменения лучше вносить с помощью хуков.
Для того, чтобы переместить заголовок на страницах категорий после товаров нужно вставить код в functions.php вашей темы.
PHP:
add_filter('woocommerce_show_page_title','my_woocommerce_show_page_title');
function my_woocommerce_show_page_title() {
    if (is_product_category())
        return false; // убираем заголовк со страницы категорий
    else
        return true; // оставляем заголовок на других страницах
}
// выводим заголовок категории после списка товаров
add_action( 'woocommerce_after_shop_loop', 'my_show_page_title', 99 );
function my_show_page_title() {
   if (is_product_category()) {
    echo '<h1 class="page-title">'. woocommerce_page_title(false).'</h1>';
   }
}
 
Последнее редактирование:
#14
А как вот этот хак тоже переместить вниз, как и описание?
Выводим изображение категории на странице рубрики в WooCommerce

Код:
// Выводим изображение категории на странице рубрики в WooCommerce
add_action( 'woocommerce_archive_description', 'woocommerce_category_image', 2 );
function woocommerce_category_image() {
    if ( is_product_category() ){
        global $wp_query;
        $cat = $wp_query->get_queried_object();
        $thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
        $image = wp_get_attachment_url( $thumbnail_id );
        if ( $image ) {
            echo '<img src="' . $image . '" alt="" />';
        }
    }
}
 

aNg

Форумчанин
#15
А подскажите, как поменять местами текст на главной и каталог товаров?
Сайт benzograd.com.ua
 

searchingman

Гуру
Местный
#16
А подскажите, как поменять местами текст на главной и каталог товаров?
Сайт benzograd.com.ua
Код вставьте в functions.php своей темы
PHP:
remove_action( 'woocommerce_archive_description', 'woocommerce_product_archive_description', 10 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_product_archive_description', 100 );
 
#18
Ребята, добрый вечер!
Подскажите пожалуйста, а как "заставить" описание категории товара воспринимать тэги?
Выделяю текст каким нибудь тэгом, к примеру <H1>...</H1>, сохраняю и ничего не происходит, тэг "сбрасывается".
Может есть какой плагин, для подключения визуального редактора к форме ввода описания категории?
Спасибо!