We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 28814 ☆ A M B ☆
    • 1,086 Posts
    Привет, народ!

    Есть такая структура сайта:

    -раздел 1 (например, про кошек)
    ----страница 1.1
    ----страница 1.2
    ----страница A (страница о компании)
    ----страница B (контактная информация)
    ----страница 1.3

    -раздел 2 (про собак)
    ----страница 2.1
    ----страница 2.2
    ----страница A (страница о компании)
    ----страница B (контактная информация)
    ----страница 2.3

    C главной страницы сайта 2 баннера - информация про кошек (ссылка на раздел 1) и про собак (раздел 2).
    Заходя в любой из этих разделов, я вижу соответствующее меню со страницами этого раздела.
    Например, я зашел в раздел 1 и вижу набор ссылок

    ----страница 1.1
    ----страница 1.2
    ----страница A
    ----страница B
    ----страница 1.3

    В MODx это сделать легко, конечно. НО. Есть 2 страницы A и B, одинаковые для всех разделов. Самый тупой и самый простой способ - создать 2 страницы в каждом разделе и заполнить их одинаковым содержанием. Это, понятно, не подходит. Нужно, чтобы редактировались все страницы в одном месте.

    Можно сделать веб-линки в каждой категории на внутренние страницы A и B, которые [вероятно] сами по себе вынесены в отдельный раздел.
    Таким образом легко редактировать эти страницы и не надо копировать их много раз для каждого раздела. Т.е. как-то так:

    -раздел 1
    ----страница 1.1
    ----страница 1.2
    ----веб-линк на страницу A
    ----веб-линк на страницу B
    ----страница 1.3

    -раздел 2
    ----страница 2.1
    ----страница 2.2
    ----веб-линк на страницу A
    ----веб-линк на страницу B
    ----страница 2.3

    -раздел 3 (скрытый)
    ----страница A
    ----страница B

    Но опять проблема. Если я зашел в раздел 1, то, кликнув на страницу A, я потеряю связь с текущим разделом, т.к. попаду в совершенно другой раздел.
    И, соответственно, в меню у меня уже не будет возможности переключиться на внутренние страницы раздела 1.

    Какие будут мысли? Это вообще возможно в MODx - сделать такую структуру сайта на MODx и при этом не терять связь с выбранным изначально разделом? smiley
      Разработка сайтов и программных модулей на MODX.
      Опыт работы на MODx с 2005 года. Высокое качество.
      Компания Baltic Design Colors: http://www.bdcolors.ru.
      • 22301
      • 1,084 Posts
      привет-привет!

      Вопросы:
      -- в чём смысл делать страницы A и В внутри каждого раздела.
      -- если сделать веблинки, то зачем закрывать раздел 3.

      наличие дублей часто указывает на то, что не до конца продуманна структура.

      я думаю, что страницы A и В надо выносить в отдельный открытый раздел, а вопрос навигации по сайту решать с помощью дизайна. возможно, вообще делать отдельное меню для 3-го раздела, что-то типа такого (активный раздел 2):


      О компании Контактная информация
      --------------------------------------------
      |
      --Раздел 1 |
      |
      |
      --------------
      --Раздел 2
      ----страница 1.1
      ----страница 1.2
      ----страница 1.3
      --------------
      |
      |
        [img]http://jurist-info.ru/pic/rrr.jpg[/img]

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

        Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
        • 28814 ☆ A M B ☆
        • 1,086 Posts
        Полностью согласен. Тем не менее, структура сайта должна быть именно такова, как я описал sad. Пока все-таки остановился на решении с веб-линками. К сожалению, при этом доступ к выбранному разделу будет теряться, но другого выхода в этой ситуации я пока не нашел.
          Разработка сайтов и программных модулей на MODX.
          Опыт работы на MODx с 2005 года. Высокое качество.
          Компания Baltic Design Colors: http://www.bdcolors.ru.
          • 16545
          • 358 Posts
          Попробуй модифицировать ManagerManager mm_synch_fields для синхронизации полей в нужных документах.
            • 28814 ☆ A M B ☆
            • 1,086 Posts
            Quote from: labasus at May 21, 2010, 01:45 AM

            Попробуй модифицировать ManagerManager mm_synch_fields для синхронизации полей в нужных документах.
            Я не представляю, как работает этот плагин для синхронизации полей.
            Если я правильно понял, подразумевается, что в каждом разделе будут одинаковые документы, при редактировании которых соответственно изменится информация во всех других разделах?
              Разработка сайтов и программных модулей на MODX.
              Опыт работы на MODx с 2005 года. Высокое качество.
              Компания Baltic Design Colors: http://www.bdcolors.ru.
              • 785
              • 2,113 Posts
              А что такое «доступ к выбранному разделу»? Если подразумевается содержание меню, то следует в конкретных документах строить меню не на основании фактического нахождения документа в каком-то разделе, а на основе того, с какой страницы был переход, при этом следует запоминать эту информацию, если страница будет перезагружаться. Можно, например, в каждом из разделов устанавливать значение в $_SESSION, а на нужных страницах строить меню в соответствии с этим значением (естественно, не кэшируя меню). Если кроме меню требуется изменить вывод и других элементов, то подход может быть таким же.
                Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                Статьи о MODx, регулярно новые публикации
                • 32773
                • 118 Posts
                Помоему снипет GetField поможет справится вам с вашей задачей:
                [[GetField? &docid=`id_скрытого ресурса` &field=`pagetitle`]]
                [[GetField? &docid=`id_скрытого ресурса` &field=`content`]]
                

                и т.д
                  • 28814 ☆ A M B ☆
                  • 1,086 Posts
                  Quote from: AKots at May 21, 2010, 02:43 AM

                  А что такое «доступ к выбранному разделу»? Если подразумевается содержание меню, то следует в конкретных документах строить меню не на основании фактического нахождения документа в каком-то разделе, а на основе того, с какой страницы был переход
                  Да, подразумевалось меню. Но использовать здесь сессии.. ох-хо-хо.. Как это уже слишком сложно получается.
                  Quote from: x3m4ik at May 21, 2010, 02:49 AM

                  Помоему снипет GetField поможет справится вам с вашей задачей:
                  Вот, кстати, это интересная идея, спасибо. Надо ее повертеть, обдумать smiley
                    Разработка сайтов и программных модулей на MODX.
                    Опыт работы на MODx с 2005 года. Высокое качество.
                    Компания Baltic Design Colors: http://www.bdcolors.ru.
                    • 785
                    • 2,113 Posts
                    GetField, если я правильно понял, что предлагается, фактически создает на сайте две одинаковые страницы, но с разными адресами. Это плохо, как с точки зрения поисковых систем, так и с точки зрения посетителей – правильнее иметь одну страницу, пусть и с несколько изменяющимся содержимым. И в чем сложность сессий, мне непонятно, но дело хозяйское… В принципе есть решения и без сессий, используя $_SERVER["HTTP_REFERER"] (есть и другие), но тут могут быть свои проблемы.
                      Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
                      Статьи о MODx, регулярно новые публикации
                      • 28814 ☆ A M B ☆
                      • 1,086 Posts
                      Друзья, спасибо, Ваши советы помогли smiley Особенное thanks для Akots smiley Решил все-таки написать код с использованием сессий.

                      GetField не подошел только по единственной причине - кроме дублирования страниц A и B мне бы пришлось еще и продублировать их подразделы - я изначально не учел, что у этих страниц тоже есть свои подразделы. Таким образом, у меня было бы слишком много дублирующих страниц, которые на самом деле не содержат никакой информации. И управлять этим хозяйством было бы очень геморройно smiley.

                        Разработка сайтов и программных модулей на MODX.
                        Опыт работы на MODx с 2005 года. Высокое качество.
                        Компания Baltic Design Colors: http://www.bdcolors.ru.