У меня проблемы с переводом строки в magento:
«Минимально допустимое количество для покупки -% s.» Я пробовал разные варианты перевода, включая% d и *.
Поэтому я попытался перевести строку в языковой файл для Mage_Api и Mage_Catalog и Mage_CatalogInventory. Я перевел тонны строки ранее, однако эта строка не хочет переводиться.
Поэтому я хочу перевести строку вручную, однако я столкнулся с проблемой. Я нашел следующий фрагмент кода, где отображается сообщение:
<?php if ($messages = $this->getMessages()): ?>
<?php foreach ($messages as $message): ?>
<p class="item-msg <?php echo $message['type'] ?>">* <?php
echo $this->escapeHtml($message['text']) ?></p>
<?php endforeach; ?>
<?php endif; ?>
В отрендеренном HTML следующий вывод:
<p class="item-msg error">* The minimum quantity allowed for purchase is 6.</p>
Итак, я думаю, мне нужно перевести некоторую строку в функцию escapeHtml. Документация по функции не очень полезна (ссылка на сайт)
Поэтому я надеюсь, что кто-то знает, где находится эта строка, поэтому я могу перезаписать ее вручную.
Спасибо
Патрик
В папке вашей темы создайте locale/[locale]/translate.csv
файл.
Пример: app/design/frontend/package/theme/locale/en_US/translate.csv
И вставьте эту строку:
"Mage_CatalogInventory::The minimum quantity allowed for purchase is %s.","TEST The minimum quantity allowed for purchase is %s."
обновление Translations
кеш и все готово. Если вы все еще получаете старую строку, проверьте core_translate
Таблица.
РЕДАКТИРОВАТЬ:
Строка, которую вы ищете, определена в Mage_CatalogInventory_Model_Stock_Item
класс расположен в app/code/core/Mage/CatalogInventory/Model/Stock/Item.php
if ($this->getMinSaleQty() && $qty < $this->getMinSaleQty()) {
$result->setHasError(true)
->setMessage(
Mage::helper('cataloginventory')->__('The minimum quantity allowed for purchase is %s.', $this->getMinSaleQty() * 1)
)
->setErrorCode('qty_min')
->setQuoteMessage(Mage::helper('cataloginventory')->__('Some of the products cannot be ordered in requested quantity.'))
->setQuoteMessageIndex('qty');
return $result;
}
Других решений пока нет …