我为prestashop构建主题,我想更改菜单的html结构。
actuel顶级菜单位于modules/blocktopmenu/blocktopmenu.tpl
{if $MENU != ''}
</div>
<!-- Menu -->
<div class="sf-contener clearfix">
<ul class="sf-menu clearfix">
{$MENU}
{if $MENU_SEARCH}
<li class="sf-search noBack" style="float:right">
<form id="searchbox" action="{$link->getPageLink('search')}" method="get">
<p>
<input type="hidden" name="controller" value="search" />
<input type="hidden" value="position" name="orderby"/>
<input type="hidden" value="desc" name="orderway"/>
<input type="text" name="search_query" value="{if isset($smarty.get.search_query)}{$smarty.get.search_query|escape:'htmlall':'UTF-8'}{/if}" />
</p>
</form>
</li>
{/if}
</ul>
<div class="sf-right"> </div>
<!--/ Menu -->
{/if}
如何编辑{$MENU}
html结构?
答案 0 :(得分:1)
在同一个模块中,在.php文件模块/ blocktopmenu / blocktopmenu.php中分配了smarty $ MENU变量
$this->smarty->assign('MENU', $this->_menu);
所以你需要在blocktopmenu.php中更改$ this-&gt; _menu的值(需要更改的内容,因为这个属性中有很多html代码)
答案 1 :(得分:1)
显然在没有编辑模块的情况下无法编辑顶层菜单,
我找到了一个聪明的replace
函数
类似的东西
{$HOOK_TOP|replace:'sf-contener':''|replace:'sf-menu':'ftopMenu left'|replace:'id="header_links"':'id="ftopright" class="right"'}
你也可以使用一些jQuery技巧