@Paul_Morte

Как сделать ссылку на товар с категориями Woocommerce?

Как можно программно сделать ссылку на товар в таком виде?
category / главная категория / под категория / товар
site.ru/category/shirts/small-shirts/name-product

Ссылка на категорию выглядит вот так
site.ru/category/shirts/small-shirts/

ВП даёт возможность поставить для категории разделить category, но использовать его же в ссылке какая мне нужна не получается. Может есть код, или плагин?
  • Вопрос задан
  • 1333 просмотра
Решения вопроса 1
@Paul_Morte Автор вопроса
Аналогичный вопрос
WooCommerce если база категорий такая же как база товара, выдает ошибку 404?

Решение, которое помогло:
Вставляем в functions.php
function devvn_product_category_base_same_shop_base( $flash = false ){
    $terms = get_terms(array(
        'taxonomy' => 'product_cat',
        'post_type' => 'product',
        'hide_empty' => false,
    ));
    if ($terms && !is_wp_error($terms)) {
        $siteurl = esc_url(home_url('/'));
        foreach ($terms as $term) {
            $term_slug = $term->slug;
            $baseterm = str_replace($siteurl, '', get_term_link($term->term_id, 'product_cat'));
            add_rewrite_rule($baseterm . '?$','index.php?product_cat=' . $term_slug,'top');
            add_rewrite_rule($baseterm . 'page/([0-9]{1,})/?$', 'index.php?product_cat=' . $term_slug . '&paged=$matches[1]','top');
            add_rewrite_rule($baseterm . '(?:feed/)?(feed|rdf|rss|rss2|atom)/?$', 'index.php?product_cat=' . $term_slug . '&feed=$matches[1]','top');
        }
    }
    if ($flash == true)
        flush_rewrite_rules(false);
}
add_filter( 'init', 'devvn_product_category_base_same_shop_base');

add_action( 'create_term', 'devvn_product_cat_same_shop_edit_success', 10, 2 );
function devvn_product_cat_same_shop_edit_success( $term_id, $taxonomy ) {
    devvn_product_category_base_same_shop_base(true);
}


В настройках WordPress -> постоянные ссылки -> Постоянные ссылки товаров -> Произвольная база
Ставим в поле /catalog/%product_cat%/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
mak-oleg
@mak-oleg
I believe in god, for the rest i pay in cash!
Ройте в эту сторону Premmerce Permalink Manager for WooCommerce (тут) попробуйте так же его аналоги, если найдете, другого варианта лично я не вижу.

WP это не для магазина, и ни когда им не станет. Как вариант; Opencart, не говоря уже о Magento или Prestashop.
Не вздумайте покупать плагины, пока не протестируете.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы