Есть интернет-магазин на WordPress WooCommerce. На главной странице в перечне товаров текст в ссылке выводится почему-то таким образом:
<div class="product-section">
<h3>
<a href="../vkusnye-rebryshki-nyam-nyam-3/">Вкусные ребрыш�...</a>
</h3>
</div>
Некоторые названия выводятся хорошо: "Гриль из курицы", а часть в таком виде: "Стейк из свинин..." Как это можно исправить?
Где-то, скорее всего в шаблоне вывода, стоит обрезание строки. Западные разрабочики не всегда помнят про то, что есть алфавиты кроме латинского. В кодировке UTF-8 такие буквы кодируются 2 - 4 байтами (символы кириллицы — два байта). Поэтому случется обрезание "на полбуквы".
Вызовы substr необходимо найти и заменить на мультибайтную mb_substr. Найти нужное место можно по фрагменту, который находится рядом и не меняется от записи к записи. В вашем случае можно искать <div class="product-section"> и где-то рядом с ним обнаружится substr().
И наверняка уже существует исправленный вариант, погуглите что-то вроде "woocommerce русский".
откопал строчку в файле content-product.php и заменил вывод с
<?php echo mad_post_content_truncate(get_the_title(), 28, '.', '...' ); ?>
на
<?php echo get_the_title(); ?>
Может быть кому-нить пригодится. Вопрос решен!
Продвижение своими сайтами как стратегия роста и независимости