Añadir página CMS para TopMenu solamente con XML
Pregunta
En CMS-> page-> Design-> DesignXML
añadir lo siguiente:
<reference name="top.menu">
<action method="addLink" translate="label title" module="customer">
<label>Home</label>
<url></url>
<title>Home</title><prepare>true</prepare>
<urlParams/>
<position>5</position>
</action>
</reference>
Esto da un error (debido a la name="top.menu"
) pero lo que sería el XML correcto para el menú superior ( no los top.links)
Solución
Trate de usar top.links
en lugar de top.menu
en su nodo de referencia.
<reference name="top.links">
<action method="addLink" translate="label title" module="customer">
<label>Home</label>
<url>/</url>
<title>Home</title><prepare>true</prepare>
<urlParams/>
<position>5</position>
</action>
</reference>
No es posible simplemente añadir enlaces a la categoría de navegación (top.menu
> catalog.topnav
).
Se pueden añadir bloques del niño a top.menu
, ya que es un bloque core/text_list
, sino que se representará antes o después de la <div class="nav-container">
del bloque catalog.topnav
.
Otros consejos
Se puede crear un bloque dentro top.menu
con sus enlaces personalizados.
Añadir este archivo en local.xml
de su tema:
<reference name="header">
<reference name="top.menu">
<block type="page/template_links" name="top.menu.custom-links">
<action method="addLink" translate="label title">
<label>New Link</label>
<url>my-url</url>
<title>New Link</title>
<prepare>true</prepare>
<urlParams helper="core/url/getHomeUrl"/>
<position>60</position>
</action>
</block>
</reference>
</reference>
Creo que esta es la manera más fácil.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange