We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 9305
    • 4 Posts
    Установил Wayfinder, как написано тут http://wiki.modxcms.com/index.php/Wayfinder200
    Вставил в шаблон [!Wayfinder? &startId=`0`!]
    Получил html-код
    <ul><li class="active"><a href="http://site.ru/" title="Главная" >Главная</a></li>
    <li><a href="/page1.html" title="Page1" >Page1</a></li>
    <li><a href="/page2.html" title="Page2" >Page2</a></li>
    <li class="last"><a href="/page3.html" title="Page3" >Page3</a></li>
    </ul>
    


    Но я бы хотел получить следующий код
    <TR align=left>
              <TD><A class=mainlevel
                href="http://site.ru/">Главная</A></TD></TR>
            <TR align=left>
              <TD><A class=mainlevel 
                href="page1.html">Page1 
                </A></TD></TR>
            <TR align=left>
              <TD><A class=mainlevel id=active_menu
                href="page2.html">Page2</A></TD></TR>
            <TR align=left>
              <TD><A class=mainlevel 
                href="page3.html">Page3</A></TD></TR>
    


    Где можно настроить вывод в нужном виде? Куда необходимо поместить шаблон вывода?
      • 6623
      • 127 Posts
        • 9305
        • 4 Posts
        Допустим я создал шаблон для &rowTpl
        <TR align=left><TD><A class=mainlevel href="[+wf.link+]">[+wf.linktext+]</A></TD></TR>

        Куда я его должен поместить? Предполагаю, что это либо в сниппет Wayfinder, вот его код
        <?php
        /*
        ::::::::::::::::::::::::::::::::::::::::
         Snippet name: Wayfinder
         Short Desc: builds site navigation
         Version: 2.0
         Authors: 
        	Kyle Jaebker (muddydogpaws.com)
        	Ryan Thrash (vertexworks.com)
         Date: February 27, 2006
        ::::::::::::::::::::::::::::::::::::::::
        Description:
            Totally refactored from original DropMenu nav builder to make it easier to
            create custom navigation by using chunks as output templates. By using templates,
            many of the paramaters are no longer needed for flexible output including tables,
            unordered- or ordered-lists (ULs or OLs), definition lists (DLs) or in any other
            format you desire.
        ::::::::::::::::::::::::::::::::::::::::
        Example Usage:
            [[Wayfinder? &startId=`0`]]
        ::::::::::::::::::::::::::::::::::::::::
        */
        
        $wayfinder_base = $modx->config['base_path']."assets/snippets/wayfinder/";
        
        //Include a custom config file if specified
        $config = (isset($config)) ? "{$wayfinder_base}configs/{$config}.config.php" : "{$wayfinder_base}configs/default.config.php";
        if (file_exists($config)) {
        	include_once("$config");
        }
        
        include_once("{$wayfinder_base}wayfinder.inc.php");
        
        if (class_exists('Wayfinder')) {
           $wf = new Wayfinder();
        } else {
            return 'error: Wayfinder class not found';
        }
        
        $wf->_config = array(
        	'id' => isset($startId) ? $startId : $modx->documentIdentifier,
        	'level' => isset($level) ? $level : 0,
        	'includeDocs' => isset($includeDocs) ? $includeDocs : 0,
        	'excludeDocs' => isset($excludeDocs) ? $excludeDocs : 0,
        	'ph' => isset($ph) ? $ph : FALSE,
        	'debug' => isset($debug) ? TRUE : FALSE,
        	'ignoreHidden' => isset($ignoreHidden) ? $ignoreHidden : FALSE,
        	'hideSubMenus' => isset($hideSubMenus) ? $hideSubMenus : FALSE,
        	'useWeblinkUrl' => isset($useWeblinkUrl) ? $useWeblinkUrl : TRUE,
        	'fullLink' => isset($fullLink) ? $fullLink : FALSE,
        	'nl' => isset($removeNewLines) ? '' : "\n",
        	'sortOrder' => isset($sortOrder) ? strtoupper($sortOrder) : 'ASC',
        	'sortBy' => isset($sortBy) ? $sortBy : 'menuindex',
        	'limit' => isset($limit) ? $limit : 0,
        	'cssTpl' => isset($cssTpl) ? $cssTpl : FALSE,
        	'jsTpl' => isset($jsTpl) ? $jsTpl : FALSE,
        	'rowIdPrefix' => isset($rowIdPrefix) ? $rowIdPrefix : FALSE,
        	'textOfLinks' => isset($textOfLinks) ? $textOfLinks : 'menutitle',
        	'titleOfLinks' => isset($titleOfLinks) ? $titleOfLinks : 'pagetitle',
        	'displayStart' => isset($displayStart) ? $displayStart : FALSE,
        );
        
        //get user class definitions
        $wf->_css = array(
        	'first' => isset($firstClass) ? $firstClass : '',
        	'last' => isset($lastClass) ? $lastClass : 'last',
        	'here' => isset($hereClass) ? $hereClass : 'active',
        	'parent' => isset($parentClass) ? $parentClass : '',
        	'row' => isset($rowClass) ? $rowClass : '',
        	'outer' => isset($outerClass) ? $outerClass : '',
        	'inner' => isset($innerClass) ? $innerClass : '',
        	'level' => isset($levelClass) ? $levelClass: '',
        	'self' => isset($selfClass) ? $selfClass : '',
        	'weblink' => isset($webLinkClass) ? $webLinkClass : '',
        );
        
        //get user templates
        $wf->_templates = array(
        	'outerTpl' => isset($outerTpl) ? $outerTpl : '',
        	'rowTpl' => isset($rowTpl) ? $rowTpl : '',
        	'parentRowTpl' => isset($parentRowTpl) ? $parentRowTpl : '',
        	'parentRowHereTpl' => isset($parentRowHereTpl) ? $parentRowHereTpl : '',
        	'hereTpl' => isset($hereTpl) ? $hereTpl : '',
        	'innerTpl' => isset($innerTpl) ? $innerTpl : '',
        	'innerRowTpl' => isset($innerRowTpl) ? $innerRowTpl : '',
        	'innerHereTpl' => isset($innerHereTpl) ? $innerHereTpl : '',
        	'activeParentRowTpl' => isset($activeParentRowTpl) ? $activeParentRowTpl : '',
        	'categoryFoldersTpl' => isset($categoryFoldersTpl) ? $categoryFoldersTpl : '',
        	'startItemTpl' => isset($startItemTpl) ? $startItemTpl : '',
        );
        
        //Process Wayfinder
        $output = $wf->run();
        
        if ($wf->_config['debug']) {
        	$output .= $wf->renderDebugOutput();
        }
        
        //Ouput Results
        if ($wf->_config['ph']) {
            $modx->setPlaceholder($wf->_config['ph'],$output);
        } else {
            return $output;
        }
        ?>

        либо в файл /assets/snippets/wayfinder/wayfinder.inc.php.

        В папке /assets/snippets/wayfinder/configs лежат конфиги, как их использовать пока не понятно.

          • 22301
          • 1,084 Posts
          код надо вставлять не в спиппет, а в чанк rowTpl
            [img]http://jurist-info.ru/pic/rrr.jpg[/img]

            Безжалостный пияр!
            Artima -- неуч!
            Осторожно: преступная локализация -- modx-cms.ru
            Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

            Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
            • 6623
            • 127 Posts
            Quote from: exvion at Feb 14, 2010, 08:53 AM

            Допустим я создал шаблон для &rowTpl
            <TR align=left><TD><A class=mainlevel href="[+wf.link+]">[+wf.linktext+]</A></TD></TR>

            Вообще знаете о том что wayfinder принимает параметры?
            В вашем случае:
            [!Wayfinder? &startId=`0`&rowTpl =`@CODE <TR align=left><TD><A class=mainlevel href="[+wf.link+]">[+wf.linktext+]</A></TD></TR>` !]
            дак вот то что идет после ? в виде &nameParam это и есть параметры... Вообще почитайте все что по той ссылке, которую я дал.
              • 22301
              • 1,084 Posts
              DAS, не сбивай человека:)

              весь смысл вывода оформления в чанки в разделении кода и оформления.
                [img]http://jurist-info.ru/pic/rrr.jpg[/img]

                Безжалостный пияр!
                Artima -- неуч!
                Осторожно: преступная локализация -- modx-cms.ru
                Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

                Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
                • 9305
                • 4 Posts
                Создал чанк rowTpl с содержимым
                <TR align=left><TD><A class=mainlevel href="[+wf.link+]">[+wf.linktext+]</A></TD></TR>

                В шаблон вставил
                [!Wayfinder? &startId=`0`!]

                В результате получаю то же самое
                <ul><li class="active"><a href="http://site.ru/" title="Главная" >Главная</a></li>
                <li><a href="/page1.html" title="Page1" >Page1</a></li>
                <li><a href="/page2.html" title="Page2" >Page2</a></li>
                <li class="last"><a href="/page3.html" title="Page3" >Page3</a></li>
                </ul>

                Что я делаю не так?
                  • 22301
                  • 1,084 Posts
                  в вызов сниппета надо добавить параметр &rowTpl=`имя_созданного_чанка`
                    [img]http://jurist-info.ru/pic/rrr.jpg[/img]

                    Безжалостный пияр!
                    Artima -- неуч!
                    Осторожно: преступная локализация -- modx-cms.ru
                    Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

                    Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
                    • 9305
                    • 4 Posts
                    Спасибо. Заработало.
                    Теперь пробую сделать вывод ’id=active_menu’ у активного пункта меню. По умолчанию получается class="active".
                    Какой параметр за это отвечает?
                      • 7662 ☆ A M B ☆
                      • 276 Posts
                      измени в css
                      id="active_menu"
                      на
                      class="active"

                      и не мучайся smiley
                        http://modx.im - Russian community
                        http://extras.evolution-cms.com - Repository for Evolution