Меню страниц Magento CMS - PullRequest
       2

Меню страниц Magento CMS

1 голос
/ 18 января 2011

Я изменил код из Меню статических страниц Magento немного, чтобы включить класс для активной ссылки меню.

<div>
<?php $collection = Mage::getModel('cms/page')->getCollection()->addStoreFilter(Mage::app()->getStore()->getId());?>
<?php  $collection->getSelect()
      ->where('is_active = 1'); ?>
<ul id="nav-top-list">
<?php foreach ($collection as $page): ?>
  <?php $PageData = $page->getData(); ?>
  <?php if($PageData['menu']!= 'false') { ?>
  <li>
    <a href="/<?php echo $PageData['identifier']?>"<?php if ($url == "/".$PageData['identifier']) { ?>class="active"<?php } ?>><?php echo $PageData['title'] ?></a>
  </li>
  <?php } ?>
<?php endforeach; ?>

И я добавил новое поле на страницы CMS, чтобы указать, должна ли страница быть включена в меню, используя true или false. На самом деле, как вы можете видеть выше, я проверяю только настройку false, все остальное получит ссылку. Вам нужно будет добавить новое поле в таблицу cms_page, если вы собираетесь использовать это.

        $fieldset->addField('menu', 'text', array(
        'name'      => 'menu',
        'label'     => Mage::helper('cms')->__('On Menu'),
        'title'     => Mage::helper('cms')->__('On Menu'),
        'required'  => true,
        'disabled'  => $isElementDisabled
    ));

Я также добавил к страницам CMS еще одно поле с именем sortorder, которое содержит номер для порядка следования ссылок в меню. Кто-нибудь получил какие-либо советы о том, как я мог бы использовать новое поле сортировщика для сортировки порядка ссылок меню?

Приветствия

Ответы [ 2 ]

1 голос
/ 09 января 2012

@ Andy Flan

('sortorder') вызывает ошибку sql.

Работает лучше с

$collection = Mage::getModel('cms/page')->getCollection()->addStoreFilter(
    Mage::app()->getStore()->getId())->setOrder('**sort_order**', 'asc');
0 голосов
/ 21 января 2011

Вы пробовали что-то вроде?:

$collection=Mage::getModel('cms/page')->getCollection()->addStoreFilter(
    Mage::app()->getStore()->getId())->setOrder('sortorder', 'asc');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...