2015-09-22 82 views
2

我正在开发多商店magento安装程序。我用1column.phtml file.I覆盖local.xml文件也为我工作,但我想单独1column.phtml文件为每个商店的特定视图的特定视图。覆盖magento中的1column.phtml文件

回答

3

我相信你可以做的是为每个商店有不同的主题,每个主题将只有一个文件夹在template/page/1column.phtml中,并使用其他功能使用回退机制。

+0

谢谢你的回答。我是新的magento所以你可以让我知道我可以如何应用这种机制。 – Ritesh

+0

你可以做的是,可以说你有2个商店,store1和store2。你所做的是创建1文件夹,即存储在app/design/frontend /里面。在两个文件夹内创建2个文件夹,即store1和store2。在这两个文件夹中,创建模板文件夹,在其中创建页面文件夹,并从base复制1column.phtml将其粘贴到此处。在这些phtmls中执行您想在1column.phtml中执行的更改。 store1 phtml将从前端/ stores/store1/template/page/1column.phhtml进行编辑,而store2 phtml将从前端/ stores/store2/template/page/1column.phhtml进行编辑。 –

+0

最后一步是在后端系统 - >设计中选择商店1的store/store1主题,以此类推剩下的商店。刷新缓存及其完成。 –

1

你需要尝试手动操作,其中需要你的店铺标识与此代码

<?php if (Mage::app()->getStore()->getStoreId() == 9): ?> 

“9”为您的商店ID(只是举例) 这是为我工作。所以你可以测试并让我知道如果问题:)

0

最干净的解决方案是根据商店ID更改哪个模板加载在控制器中。

if ($storeId == 2) { 
    $this->getLayout()->getBlock($oneColumnBlock)->setTemplate($yourCustomTemplate); 
} 
+0

如果我想单独使用1column.phtml商店会怎样。这可以适用于1column.phtml将被更改为只有更少的特定控制器操作。具有不同的商店智慧,将难以使用这种方法。另外,在控制器中写入静态ID不可扩展。如果你有10家商店,那么如果控制器中有其他商店,那么这个商店就有10家。 –

+0

当然,不要将控制器代码放入控制器中。只是不要告诉我什么时候不能解决问题。 – Fuser97381

0

我们可以通过Blackfreak建议我的FallBack机制来做到这一点。 我的文件夹结构是: - 应用程序/设计/前端/专卖店/商店1 /模板/页/ 1column.phtml

店是我的包 商店1是我的主题

我就定电流封装名称=店在管理面板中。 并编辑我的CMS主页 - >单击设计选项卡 - >转到自定义设计 - >选择自定义主题store1下的商店包。 就是这样。