Ich muss einen mehrsprachigen statischen Block erstellen. Bisher habe ich einen statischen Block mit der ID 'delivery_returns' erstellt.
Ich rufe es im Katalog \ product \ view.phtml folgendermaßen auf:
$deliveryBlock = Mage::getModel('cms/block')->load('delivery_returns');
echo $deliveryBlock->getTitle();
echo $deliveryBlock->getContent();
Ich verstehe das, um diesen Block zu übersetzen:
- Ich sollte nur einen anderen erstellen.
- Wählen Sie im Feld store_view die gewünschte Sprache aus
- und halten Sie die statische Blockkennung wie das Original.
Diese Methode funktioniert mit 'footer_links' und auch mit einem anderen statischen Block namens 'header_links', aber anscheinend funktioniert sie nicht mit dem Block 'delivery_returns'. Durch Ändern der Geschäftssprache wird der entsprechende übersetzte Block "delivery_returns" nicht geladen
Was vermisse ich? Gibt es einen besseren Weg, dies zu erreichen?
quelle
Die folgende Antwort befasst sich mit dem Festlegen der Geschäfts-ID vor dem Laden des Modells. Wie im Kommentar unten angegeben, ist dies jedoch nicht erforderlich, da dies im _toHtml () des Blocks geschieht.
Versuchen Sie, wie bei vielen anderen Magier-Modellen, die gewünschte Geschäfts-ID festzulegen, bevor Sie das Modell laden:
quelle
cms/block
macht das beim Rendern; sieheMage_Cms_Block_Block::_toHtml()
(link)Mage_Cms_Block_Block::_toHtml()
.Mage_Core_Model_Block
dem die Geschäfts-ID festgelegt ist.Ich habe dies auf eine der folgenden Arten erreicht:
Sie können `{{translate text =" text to translate "}} in jeder statischen Cms-Blockseite verwenden, indem Sie die folgende Problemumgehung implementieren:
-
Weitere Informationen / Quelle:
http://jagdeepbanga.com/blog/magento_how_add_translation_ability_into_cms_page_or_static_block.html
quelle
Sie können ein Modul herunterladen, das ich basierend auf dieser Antwort erstellt habe: https://github.com/miguelbalparda/MB_Translate/ Es stellt den Inline-Übersetzer von Magento in CMS / Block-Seiten zur Verfügung.
quelle