Как в Woocommerce убрать строку «подытог»

Для тех, кто может залезть в пару файлов через текстовый редактор — это не составит труда.
«Подытог» при оформлении заказа встречается три раза. Каждый раз это отдельно взятый файл.

Я нашла решение для Woocommerce 2.5.4

Шаг 1. КОРЗИНА

идём в папку /wp-content/plugins/woocommerce/templates/cart
находим там файл «cart-totals.php»
находим строки:

<tr class="cart-subtotal">
     <th><?php _e( 'Subtotal', 'woocommerce' ); ?></th>
     <td data-title="<?php _e( 'Subtotal', 'woocommerce' ); ?>"><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>

и вставляем их в HTLM-комментарий (<!—код—>). Т.е. они должны выглядеть с комментариями так:

<!--<tr class="cart-subtotal">
     <th><?php _e( 'Subtotal', 'woocommerce' ); ?></th>
     <td data-title="<?php _e( 'Subtotal', 'woocommerce' ); ?>"><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>-->

В принципе их можно и удалить. Но удалив их потом вы уже не сможете их восстановить. А в данном случае восстановите за счёт того, что сотрёте комментарии. Всё просто.

Такую же процедуру проделываем на втором шаге — во втором файле:

Шаг 2. ПЕРЕХОД К ОФОРМЛЕНИЮ

Идём в папку /wp-content/plugins/woocommerce/templates/checkout

Находим файл «review-order.php»
Комментируем эти строки:

<tr class="cart-subtotal">
     <th><?php _e( 'Subtotal', 'woocommerce' ); ?></th>
     <td><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>

Шаг 3. «ЗАКАЗ ПРИНЯТ»

В папке /wp-content/plugins/woocommerce/templates/order

В файле «order-details.php» комментируем эти строки:

<tr>
     <th scope="row"><?php echo $total['label']; ?></th>
     <td><?php echo $total['value']; ?></td>
</tr>

Осталось одно НО

В приходящих письмах «Подытог» всё же остался. Убрать я его не смогла. Но нашла способ изменить это красивое слово на слово «Итого».

Это делается следующим образом.

Идём в папочку /wp-content/themes/storefront

находим файл «functions.php»

и в самый конец вставляем следующие строки:

add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');

function translate_text($translated) {
$translated = str_ireplace('Подытог', 'Итого', $translated);
return $translated;
}

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

Вот и всё. Успехов вам!

КОММЕНТАРИИ к Ася

    1. Странно. Возможно у вас пересекаются переменные. Надо ковырять тему, она написана не стандартно, судя по всему. Попробуйте поковыряться с переменными, которые в тех трёх строках, может, они названы так же, как и то, что вы коментите, либо эти переменные как-то криво подвязаны между собой.

  1. .woocommerce table.shop_table tfoot tr:first-child {
    display: none !important;
    }
    вот кстати рабочий вариант для шага 3 🙂

  2. Вы меня просто спасли. Тоже с неделю бился, с начала плагином все нормально перевело, и пол года было отлично все, потом для улучшения функционала чекаута, скачал пару плагинов, да и обновил какой то, и вместо 2х «Итого» появился стремный «Подытог» ничем не убирался собака… че только не делал. Этот вариант спас по всем 3 пунктам, БЛАГОДАРЮ.
    И вопрос такой, кнопка обновить корзину, в самой карзине /cart тоже перевелась, есть способ её вернуть?

    1. P.S. попытался поменять через Poedit ru_RU файл woocommerce толку ноль. Хотя Строку в корзине «Сумма заказа» Поменял. Кстати, это тоже очень удобный способ поменять перевод, там полностью весь список перевода есть, и его можно поменять на тот который вам удобен, он вполне может заменить три этих действия которые описаны выше. Пытая поменять «update cart» в поисках нашел тот злощастный «подытог» )

      1. Я честно пыталась у себя менять сначала перевод, но почему-то этот файл влиял на магазин частично. Мне было проще найти оригинальные места, чем искать правильный файл перевода. Кроме того там начинаются иногда проблемы с кодировками, особенно если править в текстовом редакторе или Notepade++. Бывает, что оригинальная кодировка файла одна, а сохраняется он после правки в другой. И это тоже оказывается не удобно. Поэтому с оригинальными php-шками мне оказалось проще работать.
        И, как я понимаю, всё еще зависит от версии плагинов.

        1. Там программа Poedit, от формата .po в языковой папке wordpressa он и открывает, и сопоставляет уже имеющиеся переводы на данный момент в том файле, даже если нет ничего, можно с нуля прописать как нужно. ну у меня был полный, изменить лишь нужно было пару слов, в последствии при сохранении он сохраняет копию того же файла но в формате .mo который и является активатором перевода.

    1. Если честно, я уже давно вне темы. Это надо сесть, погрузиться и разобраться. Так сходу, к сожалению, не отвечу. 🙁

  3. Третья правочка лучше так:

    get_order_item_totals() as $key => $total ) {
    if ($total[‘label’] == ‘Подытог:’) continue; # Убираем «Подытог:»!!!!!!
    ?>

    1. Спасибо, почему-то не срабатывало по сравнению. Переделал так:
      get_order_item_totals() as $key => $total ) {
      if (strlen($total[‘label’])==15) continue;
      ?>

    1. Может быть. У меня ж нет цели создать спец. блог по решению узких проблем. Я просто делюсь здесь своим опытом и хитростями, к которым приходится прибегать иногда. Может, что-то ещё и будет 🙂
      Спасибо вам за позитивный отзыв! Рада, что совет помог вам 🙂

  4. Где искать эту папку storefront с файлом «functions.php». всё перерыскал нет такой папки

Добавить комментарий для Ася Отменить ответ

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