Ребят, представим меню к которому прикреплено скажем 5000 страниц, какого открыть это меню? Возможно ли с ним работать при таком кол-ве страниц, а то и еще большем? Есть ли какие-то советы/возможности, например, просматривать меню по уровням, а не выводить все 5к страниц и т.д
Поделитесь опытом
Спасибо
Комментарии
views?
... + таксономия?
зачем?
и то правда. Нах в одном меню все страницы выводить?
что бы они были в 2 клика и сапа приносила больше денег)
ТОгда вынести на главную, будет в один клик))
Брэд какой то! 5000 страниц это уже не визитка:)Надо оптимизировать навигацию...
Меня скорее всего не поняли, я имел ввиду вывод меню не на сайте, а в административной части, вывод то есть просмотр самого дерева меню (admin/build/menu/list)
Одно меню так как меню сильно разветленное и удобнее работать если оно одно.
ddi26
Ну конечно не визитка, как оптимизировать навигацию, если у нас 5к страниц с иерархией?!
При просмотре дерева меню в административной части /admin/build/menu-customize/menu-...
дерево меню выводится полностью в не зависимости от того сколько там страниц и весь вопрос как с таким меню проще работать?
Надо менять постановку задачи. Однозначно. Безотносительно на чём это сделано.
views?
v1adimir@drupal.org
Вывести views можно, но как управлять?
Ребят я про управление деревом меню в административной части
Когда меню сильно разрастается управлять им все сложнее и сложнее, да не часто, но порой требуется. В этом мой и вопрос как управлять меню, если кол-во пунктов в нем становится несколько тысяч. Совершенно ни как не пойму при чем тут views, сайт визитки, оптимизация, таксономия или сапа
Сталкивался ли кто с таким вопросом?
Можно организовать views где будут необходимые кнопки для управления вхождениями в пункты меню. Но это не решит главной проблемы – это донельзя корявое решение, когда нужно вручную править меню с 5k+ элементами.
Такая система должна управляться только автоматически через набор правил. Например, через модуль Rules или что-то аналогичное.
Откуда в этом меню может взяться 5000 пунктов? Откуда вообще в меню может взяться столько пунктов?
Видимо не надо засовывать все материалы в меню. Надо делать выборки по ним при помощи views, упорядочивать таксономией, etc.
Скриншот был, чтобы меня верно поняли, о чем конкретно я веду речь.
Таксономия в моем случае мне не помощник так как мне требуется именно меню где ссылка на каждую страницу имеет свое постоянное место
Нашел модуль, который решает моею задачу [module=bigmenu] но смущает кол-во пользующихся и статус
Есть обсуждение на д.орг аналогичного вопроса http://drupal.org/node/1063004 там у автора вопрос о нескольких десятках тысяч страниц в меню, хоть ему и намекают о проблемах в структуре меню, но тем не менее и меню с огромным код-во страниц имеет право на существование и таксономией полностью задачу не решить
Как потенциальное решение это раскидать 5к-10к страниц меню на 10-20 меню с кол-вом в каждом на приемлемом уровне 500-1к, но оно неудобное
В каком месте, эту задачу не решить таксономией?
У вас на сайте где-то выводится полное меню? Наверняка нет, т.к. это ад. Даже если и так, то никто не мешает строить его динамически по таксономии.
Зачем вам использовать модуль menu для работы с такими наборами данных абсолютно не понятно, т.к. не предназначен он для этого.
Видимо, ваша ошибка в том, что вы идеологически связываете меню показываемое где-то на сайте с модулем меню. А это просто список пунктов, который можно сделать десятком способов. Например с помощью views, или taxonomy_menu или...
Я бы скорее думал о сервере, а не о количестве меню.
Стандартная система меню друпала херовато такие количества переваривают
bsyomov да, действительно меню (визуально) я связываю с модулем меню, но в тоже время понимаю, что этот список пунктов может быть выведен другими способами
RxB эх чую пройдусь я в будущем по граблям. Хотелось бы конечно в общих чертах узнать уровень "хероватости" скажем соотношение нормального к ненормальному, если это возможно выразить подобным
Удобно использовать меню крепя его с помощью hierarchical select, а с помощью menu block выводить различные куски в нужное место.
Думаете лучше переделать по сути весь сайт дабы заменить модуль меню на что-то менее ресурсоемкое для сервера? Да возможно серверу будет лучше, но станет ли удобнее управлять...
Таксономию я конечно и так использую для материалов у которых есть неявные параметры, такие как время актуальности или общий тип, например, новости или материалы с общим тегом, но чтобы все страницы подвязать на таксономию... при сохранении структуры в пути типа
node-alias/node-alias/node-alias/title
я даже не знаю...
Может, хотя бы в общих чертах поделитесь задачей, в которой условие - привязать несколько тысяч нод именно к меню? Чисто из прозекторского интереса, понятно же, что в реальной жизни такие задачи долго не живут... Ну кроме говносайтов под сапу канешна
На счет как долго живут откуда у вас статистика?
В общих чертах имеем ряд объектов (образно) у каждого объекта может быть несколько своих объектов и в свою очередь у любого объекта может быть свойство кол-во которых может быть до нескольких сотен
Объект и свойство это ноды
вот в общих чертах
если для аминистратора - вьюс с фильтрами по таксономии, по полям с конечным кол-вом значений..
Чем Node Reference не устраивает для решения этой задачи?
Ноде референсе я тоже использую, но не подумал, что с помощью него можно структуру городить, подходит ли он только для этого.. пока не попробуешь не узнаешь
У вас реально попутаны понятия или слабое знание сущностей Друпала, простой совет:
- для воссоздания в Друпале структуры ваших данных, используйте Node Reference, как наиболее подходящий инструмент для создания связей вида "один ко многим" и т.п.
- для отображения этих данных в каком-либо виде, удобном реальному пользователю вашего сайта, используйте Views, как наиболее подходящий инструмент для вывода данных с использованием критериев, фильтрации и аргументов
- для создания меню на сайте (в его нормальном понятии - просто меню вида "Главная", "Новости") используйте возможности работы Друпала с меню, для всего остального использовать меню просто какая-то странная практика...
Все то что вы перечислили я так же использую половина сайта выводится через views и еще %25 через таксономию. Остальное же по мелочи и потенциально крупный раздел с помощью модуля menu + block_menu
"один ко многим" это частность в моем случае
Не знал, что с модулем menu потенциально столько возможных проблем и его лучше использовать только для вывода меню с 5-ю пунктами, а для создания большого дерева оно потенциально плохо приспособлено
Первое утверждение у вас разве не связь "один ко многим"?
Да, наверное. Меню на основе Node Reference выводится либо views либо своим кодом верно? А как вложить 1 пункт меню в другой так, чтобы разные уровни меню можно было выводить на разных страницах + показывать блоки только на отдельных кусках меню с общей структурой основываясь на алиасе?
Что вы привязались к этому меню? Сформулируйте задачу конкретно, по кускам, по одному куску за один раз. Меню тут вообще не при чем, если у вас проблема сформулировать задачу типа "вывод информации о связях текущей ноды в удобоваримом для посетителя виде". Эта задача перед вами стоит?
У вас есть нода типа "объект", у нее есть связи типа "объект-объект" и "объект-свойства", так? Node Reference выводит ссылки на "свои" связи прямо в шаблон ноды. Зачем вам меню при этом, вообще не понимаю? Цель какая? Дать посетителю понять, что текущая нода связана с другими нодами? Ну так вот они, связи-то - ссылки на другие объекты и ноды в отдельных блоках (если использовать Fieldgroup).
marazmus видимо вы правы, спасибо за разжевывание. Остался ряд вопросов по хлебным крошкам и алиасам, но это уже видимо надо пробовать, суть я понял.
Три вопроса в продолжение темы
1. при структуре "объект-объект" и "объект-свойства" все ясно, как выстраивать меню, меню показывается основываясь на родителе, но как быть, если меню от какого-то родителя нужно показывать на всех страницах подродителей. Какие правильно указать аргумент? При использовании модуля menu с этой задачей справлялся модуль block menu показывая навигации по уровням + настройки видимости блока по алиасу
2. Если страницы крепятся к меню, то вопросов с хлебными крошками нет вообще они выстраиваются сами вида:
линк-1 - линк-2 - линк-3 - нет ссылки
То при выстраивании меню через node reference и views вопрос, как настроить через custom breadcrumb, получается только 2-х уровневое меню, а уже при 3-м непонятно, какими паттернами вытаскивать нужные данные, а лучше бы 1 паттерном, который бы строил путь но не весь сразу, а по частям, чтобы иметь возможность перейти в середину пути
3. В настройках меню есть 2 поля название ссылки и собственно то меню к которому прикрепляется страница. Если заполнять поле название ссылки, это нагружает систему, то есть считается, что используется модуль menu со всеми его затыками или нет?
Сложные наверное вопросы, чтобы получить на них ответ либо сама реализация сложная не зная сайта тяжело дать решение?
Верно?
Для начала вам надо изучить Node Reference и построить на его основе хотя бы часть структуры ваших данных. Поковырять шаблоны, изучить вывод полей. После этого половина ваших затупов по поводу неуместного использования меню в неподходящей этому модуле задаче пропадут сами собой. Остальные вопросы вполне решаемы самостоятельно.
Node Reference я использую в том числе и для построения навигации, но выстраиваются они по принципу зависимости от текущей ноды.
То есть, если мы находимся в ноде-А то видим все объекты, которые к ней прикреплены, но если перейдем на любой объект дальше, то все зависимые объекты имеющие зависимости от ноды-А пропадут. Часть структуры у меня есть, неясно какие использовать аргументы для решения задачи выше.
Может и самостоятельно решается остальное, но помощь в виде подсказки все равно необходима. Все паттерны, которые есть в custom breadcrumb не дали нужного результата, может тут нужен другой модуль?
И про поля в модуле меню я тоже сам буду копать очень долго
С помощью Views можно вытащить ноды, которые ссылаются на текущую ноду
Это понятно до такой степени, что давно именно так и работает
Вопрос в том, что если перейти дальше... ща нарисую лучше
Навскидку схема:
ноды 2, 3 и 4 через node reference имеют связь к ноде 1
ноды 5, 6, 7, 8 имеют связь к ноде 2
Находясь в ноде 1 мне понятно, как вывести ноды с этой связью (то есть показать на этой же странице ссылки на ноды 2 3 и 4), но находясь на ноде 5 мне не понятно, как показать линейку навигации из нод 2, 3 и 4. В этом и вопрос
модуль Node Hierarchy
смотри mustardseedmedia.com/podcast/episode45
drupby Огромное спасибо, судя по описанию это быть может то что надо
Покрутил модуль и не совсем понятно подходит ли оно
Модуль работает с menu block, а menu block, в свою очередь, работает с навигацией основанной на модуле menu