We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 49080
    • 7 Posts
    Доброго времени суток, я решил избавиться от CMS UCOZ и перенести сайт на CMS Modx, мелкая загвоздка возникла с переносом. Дело в том что UCOZ использует уловные операторы и спец код (чанки на языке Modx) ниже я приведу отрывок кода где встречаются эти сами условные операторы (операторы сравнения) а в низу распишу их обозначение.

    Моя задача реализовать этот код с синтаксисом Modx, помогите пожалуйста я в modx второй вечер только

    <div id="top"  <?if($URI_ID$!='page1')?>    class="fixed"   <?endif?>>
    
     <div id="navi">
     <div id="top-logo">
     <span>Текст</span> еще текст
     </div>
     <nav>
    
     <?if($URI_ID$='page1')?>
    
     <ul>
     <li class="current"><a href="#home">Главная</a></li> 
     <li><a href="#service">Услуги</a></li>
     </ul>
    
     <?else?>
    
     <ul>
     <li class="current"><a href="$HOME_PAGE_LINK$#home">Главная</a></li> 
     <li><a href="$HOME_PAGE_LINK$#service">Услуги</a></li>
     </ul>
    
     <?endif?>
    
     </nav>
     </div>
     </div>



    Синтаксис условных блоков ucoz следующий:

    <?if(выражение)?>истинный_код<?else?>ложный_код<?endif?>

    $URI_ID$! - уникальный код для каждой страницы

    $HOME_PAGE_LINK$ - адрес главной страницы сайта

    This question has been answered by knuklus. See the first response.

    • discuss.answer
      • 49080
      • 7 Posts
      Напишу ответ сам, на тот случай кто будет бежать с ucoz сюда и столкнется с этой проблемой

      Для тех у кого меню на главной имеет один вид, а на остальных страницах другой вид

      На моем примере , если расшифровать код с верху на человеческий язык то это означает.

      Если страница главная (имеет id=1) то выводить меню такое

      <li class="current"><a href="#home">Главная</a></li> 
       <li><a href="#service">Услуги</a></li>
       


      Если же страница любая другая (не главная), то выводить меню такое:

      <li class="current"><a href="$HOME_PAGE_LINK$#home">Главная</a></li> 
       <li><a href="$HOME_PAGE_LINK$#service">Услуги</a></li>


      Теперь подставим этот код под синтаксис Modx, воспользовавшись чанками, создаем чанк для меню на главной странице, придумываем имя, и в содержимое чанка вставляем:

      <div id="top">
                 <div id="navi">
                 <div id="top-logo">
      	   <span>мой</span> сайт
      	   </div>
                 <nav>
      	   <ul>
      	   <li class="current"><a href="#home">Главная</a></li> 
      	   <li><a href="#service">Услуги</a></li>
      	   </ul>
      	   </nav>
                 </div>
           </div>


      После чего сохраняем и вставляем имя чанка в нужное место шаблона для главной

      Теперь переходим к меню которое должно отображаться на остальных страницах, создаем чанк для меню остальных страниц, придумываем имя, и в содержимое чанка вставляем:

      <div id="top" class="fixed">
      	<div id="navi">
      	<div id="top-logo">
      	<span>мой</span> сайт
      	</div>
      	<nav>
      	<ul>
      	<li class="current"><a href="[(site_url)]/#home">Главная</a></li> 
      	<li><a href="[(site_url)]/#service">Услуги</a></li>
      	</ul>
      	</nav>
      	</div>
       </div>


      После чего сохраняем и вставляем имя чанка в нужное место шаблона для "всех страниц"