Как изменить слово «товары» в хлебных крошках woocommerce?

Ссылка скопирована
1 ответ

Не могу найти в WP как переименовать раздел "Товары" в woocommerce. Хотя страница через которую выводятся товары называется "Курсы". Как это можно сделать и куда смотреть? Спасибо!

Дополнительно:

Ответы:

Вероятно, зависит от темы. У меня берётся из заголовка страницы. Попробуйте изменить в файлах перевода темы или самого Woocommerce.

  • Что самое интересно в title получилось изменить с помощью плагина "Yoast SEO", а вот в хлебных крошках так и не получилось. Пытался даже в базе найти, но не нашёл.

    Не подскажите в каких именно файлах перевода искать?

  • Trunk666, переводы Woocommerce лежат в папке /wp-content/languages/plugins

    Файлы woocommerce-ru_RU.po и woocommerce-ru_RU.mo.

    Открыть можно приложением Poedit (бесплатное), поправить нужные строки переводов и загрузить в ту же папку с заменой.

    Будет единственное неудобство, что при обновлении изменённые переводы будут затираться и придётся загружать их снова каждый раз. Затереться перевод может даже при обновлении любого другого плагина и темы. WordPress при обновлении проверяет наличие свежих переводов. Так что проверяйте.

    Переводы темы лежат в папке темы в /languages. Принцип тот же.
    Ещё посмотрите в файлах шаблонов темы. Может быть там что-то найдётся.

Нужно решить такую задачу?

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

Заказать помощь
Лучший ответ
1
Артём Dev Ответ

Слово «Товары» в хлебных крошках WooCommerce может приходить из разных мест: из перевода WooCommerce, из заголовка архивной страницы товаров, из настроек SEO-плагина или из шаблона хлебных крошек темы. Поэтому сначала нужно понять, какие именно breadcrumbs выводятся: WooCommerce, Yoast SEO, Rank Math или тема.

Если это стандартные хлебные крошки WooCommerce, можно изменить корневой элемент через фильтр:

add_filter( 'woocommerce_breadcrumb_defaults', function ( $defaults ) {
    $defaults['home'] = 'Главная';
    return $defaults;
} );

add_filter( 'woocommerce_breadcrumb_defaults', function ( $defaults ) { $defaults['home'] = 'Главная'; return $defaults; } );

Если нужно заменить именно crumb «Товары» на «Курсы», можно обработать массив хлебных крошек:

add_filter( 'woocommerce_get_breadcrumb', function ( $crumbs ) {
    foreach ( $crumbs as &$crumb ) {
        if ( isset( $crumb[0] ) && 'Товары' === $crumb[0] ) {
            $crumb[0] = 'Курсы';
        }
    }
 
    return $crumbs;
} );

add_filter( 'woocommerce_get_breadcrumb', function ( $crumbs ) { foreach ( $crumbs as &$crumb ) { if ( isset( $crumb[0] ) && 'Товары' === $crumb[0] ) { $crumb[0] = 'Курсы'; } } return $crumbs; } );

Если breadcrumbs выводит Yoast SEO, используйте фильтр Yoast:

add_filter( 'wpseo_breadcrumb_links', function ( $links ) {
    foreach ( $links as &$link ) {
        if ( isset( $link['text'] ) && 'Товары' === $link['text'] ) {
            $link['text'] = 'Курсы';
        }
    }
 
    return $links;
} );

add_filter( 'wpseo_breadcrumb_links', function ( $links ) { foreach ( $links as &$link ) { if ( isset( $link['text'] ) && 'Товары' === $link['text'] ) { $link['text'] = 'Курсы'; } } return $links; } );

Править файлы перевода WooCommerce вручную можно, но это слабый вариант: переводы могут перезаписаться при обновлениях. Если нужно менять перевод, лучше использовать Loco Translate и хранить перевод в wp-content/languages/loco/, либо сделать точечную замену через фильтр.

Также проверьте страницу магазина: WooCommerce → Настройки → Товары → Страница магазина. Если там выбрана страница с названием «Курсы», но в хлебных крошках всё равно «Товары», значит текст берётся не из заголовка страницы, а из перевода/SEO-плагина/темы.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно