2015-04-19 48 views
1

我不能讓Magento在內置的Magento iphone主題(我使用Magento CE 1.7)顯示貨幣或語言選擇器。 顯然似乎功能"$this->getCurrencies()"或功能"$this->getStores()"返回任何值。 奇怪的是,在我的安裝中,貨幣和語言切換臺都可以正常使用桌面主題。貨幣和語言切換器不顯示在Magento iphone主題

有沒有人遇到過與內置移動主題相同的問題?任何提示?

回答

0

昨天我用Magento 1.7.0.2碰到了同樣的問題。您可以通過三個步驟將語言選擇器添加到菜單中。

我認爲你已經將iPhone設計包複製到你的包中。不修改核心文件和設計始終是最佳做法。

步驟1
您必須將語言塊添加到標題塊中。添加以下行到文件只是 「checkout.links」 塊之後(在線路70)
前端/ [YOUR_PACKAGE] /iphone/layout/page.xml

<block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/> 

步驟2
您必須將渲染命令添加到相應的HTML模板中。添加以下行到<dd class="menu-box">塊(在該行38)
前端/ [YOUR_PACKAGE] /iphone/template/page/html/header.phtml

<dd class="menu-box"> 
      <?php echo $this->getChildHtml('topLinks') ?> 
      <?php echo $this->getChildHtml('checkoutLinks') ?> 
      <?php echo $this->getChildHtml('accountLinks') ?> 
      <?php echo $this->getChildHtml('store_language') ?> <!-- Add the language block here --> 
</dd> 

步驟3
還有就是在原版iphone版本的語言HTML模板中出現了一些奇怪的事情。您必須用<ul id="language-switcher">替換HTML塊<li id="language-switcher">。編輯語言模板
前端/ [YOUR_PACKAGE] /iphone/template/page/switch/languages.phtml
是這樣的:

<?php if(count($this->getStores())>1): ?> 
    <ul id="language-switcher"> 
     <a href="#"><?php echo $this->__('Language') ?>: <span id="current-language"></span></a> 
     <ol class="switcher-options" style="display:none;"> 
      <?php foreach ($this->getStores() as $_lang): ?> 
      <?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' class="selected"' : '' ?> 
      <li<?php echo $_selected ?>> 
       <a href="<?php echo $_lang->getCurrentUrl() ?>"><?php echo $this->escapeHtml($_lang->getName()) ?></a> 
      </li> 
      <?php endforeach; ?> 
     </ol> 
    </ul> 
<?php endif; ?> 

有一種以上的語言規定你應該看到語言切換器現在位於幻燈片菜單的末尾。
對於像「商店」這樣的其他區塊,您可以讓自己受到基本/默認設計包的啓發,就像我完成這項任務一樣:)。

0

嗨,我遵循你給出的所有例子,但沒有什麼貨幣和語言選擇器顯示在主頁上。