1

Тема: ✖ Настройка меню: исключение существующих и добавление новых пунктов

Пытался сделать простой, классический сайт.
То есть, одно горизонт. меню: главная, контакты и.т.п.
второе вертикальное. Разочарование не заставило себя ждать.
Однако сама идея движка очень нравиться, потому хотелось бы:

Как минимум: возможность исключать страницы из меню, для того, чтобы ссылки на них ставить в ручную с "шапки".
Отдельное (настраиваемое) меню для избранных тоже спасло бы.

Альтернатива: сделать второе меню типа (s2_menu2) с возможностью, вводить пользовательский разделитель. (Главная | Контакты | ....)

В идеале: меню для каждой категории и/или набора страниц.

2

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

А что вам мешает вписать html-код меню напрямую в шаблоны? Убираете в шаблоне главной страницы метку s2_menu, пишете вместо нее список ссылок вручную, оставляя только нужные пункты. Ссылки в шапке прописываете во всех шаблонах. Обычно я делаю именно так.

3

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

тогда и движок не нужен )
но он нужен, так как не все могут добавлять статьи в ручную.

18.10.2012 22:31:56. Текст был изменен (jonybs).

4

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

Движок нужен для автоматизации однообразных рутинных действий.

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

5

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

Роман пишет:

Движок нужен для автоматизации однообразных рутинных действий.

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

Навигационные ссылки, да. Но выписали:

Убираете в шаблоне главной страницы метку s2_menu

А если не убирать то:
1) Если страницы в главной категории, то они маячут, там где быть не должны.
    От сюда пожелание "возможность исключать страницы из меню";
2)Если запихнуть их в отдельную категорию, то при переходе на одну из этих страниц, пропадает главное меню, и отображается меню категории.
    От сюда пожелание "сделать второе меню";

6

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

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

Дело в том, что по поводу меню я получал разные отзывы. Вы хотите исключать пункты. Меня просили возможность наоборот добавлять ссылки (например, на внешние ресурсы). Третьи пользователи придумают еще что-нибудь.

Мне как разработчику совершенно очевидно, что ручное управление меню усложнит интерфейс и всё равно не покроет возможных потребностей. Поэтому лучше оставить за меткой <!-- s2_menu --> ее текущую функциональность (список дочерних элементов в разделах и список соседних элементов на страницах) и использовать ее только для соответствующих задач.

7

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

jonybs пишет:

Альтернатива: сделать второе меню типа (s2_menu2) с возможностью, вводить пользовательский разделитель. (Главная | Контакты | ....)

В идеале: меню для каждой категории и/или набора страниц.

Это называется вёрстка шаблона. Берется код (точнее в данном случае метка) отвечающая за вывод нужного элемента и настраивается с помощью HTML+CSS в каком хотите виде. Ни какой разработчик движка не будет Вам делать 100,000 шаблонов на все случаи жизни.

21.10.2012 16:46:50. Текст был изменен (Igor1).

8

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

и настраивается с помощью HTML+CSS в каком хотите виде.

Прикольно, а покажите как при помощи HTML+CSS преобразовать список UL LI в горизонтальное меню. ))
(Главная | Контакты | ....)

9

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

Роман пишет:

Не уверен, что до конца понимаю, что именно вы хотите.

Я расскажу как я выкрутился, и все станет ясно.

в файле /_include/articles.php нашел где формируется меню
к sql запросам в строках 806 и 931 добавил ...AND favorite = 0
то есть исключил из меню избранные
нужные страницы пометил избранными, и поставил на них ссылки из шаблона
в общем получил две не пересекающиеся менюшки, статическую(Главная | О компании | Контакты | ...) и динамическую с прочим контентом.

22.10.2012 01:45:28. Текст был изменен (jonybs).

10

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

Прикольно, а покажите как при помощи HTML+CSS преобразовать список UL LI в горизонтальное меню. ))
(Главная | Контакты | ....)

С такими вопросами обычно к Гуглу обращаются :)
Вот неплохой способ: http://neolot.com/uroki-i-priemy/pravil … elitelyami

Его можно изменить: вставлять символ '|' через псевдоэлемент :before, а у первого элемента (:first-child:before) не вставлять, но это не сработает в IE6 и IE7. А еще выстроить элементы по горизонтали можно не за счет float: left, а за счет display: inline-block.


Если сами раскопали, какие запросы нужно изменить, то вы легко сможете оформить эти изменения правильно, чтобы потом, при обновлении движка, не возникло проблем. Изменения нужно вынести в хуки простейшего расширения. Код ниже помещается в файл _extensions/my_test/manifest.xml и потом это расширение устанавливается.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE extension SYSTEM "ext-1.0.dtd">

<extension for="S2" engine="1.0">
    <id>my_test</id>
    <title>Test extension</title>
    <version>1.0a</version>
    <description>Hides favorite pages from menu</description>
    <author>Roman Parpalak</author>

    <minversion>1.0b3</minversion>
    <maxtestedon>1.0b3</maxtestedon>

    <hooks>
        <hook id="fn_s2_parse_page_url_pre_get_children_qr,fn_s2_parse_page_url_pre_get_neighbours_qr"><![CDATA[
$query['WHERE'] .= ' AND a.favorite = 0';
        ]]></hook>
    </hooks>
</extension>

11

Re: ✖ Настройка меню: исключение существующих и добавление новых пунктов

О как! не ожидал, потому и не гуглил. спс.
Отдельное спасибо за расширение.