Voici une autre façon de mettre des liens statiques au menu du catalogue Magento .Tout d'abord, créez une page statique, attribuez-lui une clé d'URL, par exemple "my-test-page".
Aller à /app/code/core/Mage/Catalogue/Bloc, copier le fichier Navigation.php
-/app/code/local/Mage/Catalogue/Bloc, maintenant vous en mesure de le modifier sans aucun souci au sujet de la possibilité de perdre vos modifications avec la mise à niveau de Magento.
Ouvrir le fichier Navigation.php
à ligne 265 (magento 1.4) function _renderCategoryMenuItemHtml(...)
, le code de changement:
$htmlLi .= '>';
$html[] = $htmlLi;
$html[] = '<a href="'.$this->getCategoryUrl($category).'"'.$linkClass.'>';
$html[] = '<span>' . $this->escapeHtml($category->getName()) . '</span>';
$html[] = '</a>';
que:
$htmlLi .= '>';
$html[] = $htmlLi;
if(preg_match('/\/static-/', $this->getCategoryUrl($category))) {
$link_url = str_replace("static-", "", $this->getCategoryUrl($category));
} else {
$link_url = $this->getCategoryUrl($category);
}
$html[] = '<a href="'.$link_url.'"'.$linkClass.'>';
$html[] = '<span>' . $this->escapeHtml($category->getName()) . '</span>';
$html[] = '</a>';
Allez maintenant à la gestion des catégories, la catégorie d'édition, changement de clé URL pour cela: "static-my-test-page" et décochez "Créer une redirection permanente pour l'ancienne URL" case à cocher. Après avoir sauvegardé la catégorie, vous aurez un lien vers ma page de test dans le menu des catégories supérieures de Magento. Donc, après tout ce qui change, vous pouvez convertir le lien de catégorie en lien de page statique en ajoutant le préfixe "static-" à la catégorie clé d'URL.
Nice c'est ce que j'ai prévu, bonne prise sur le no-route, pour obtenir le $ collection = Mage .... merde hors de la vue, vous pouvez le mettre dans une fonction dans le bloc. et appelez $ this-> getNavLinks(); –