Меню состоит из пунктов-картинок, заданных CSS слассами. Сайт двуязычный, двуязычность реализована по директориям. Соответственно версии меню определяются исходя из текущей директории. Сама структура меню уже разделена и подключена, необходимо разделить оформление.
Собственно вопрос: как правильней разделить оформление для разных версий двуязычного меню сайта, использовать для этого два шаблона меню для разных версий и подключать их в коде вызова шаблона меню в основном шаблоне сайта в зависимости от директории, либо сделать это в одном файле шаблона меню, тоже в зависимости от директории, подставив необходимые классы с изображениями?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Дмитрий Якинцев пишет: Ну сделайте var_dump($arResult) в шаблоне меню и посмотрите, какая закономерность проскальзывает в значениях поля DEPTH_LEVEL. Тогда поймете мой предыдущий пост.
да я понимаю что в дип левел содержится информация об уровне вложенности меню, я не могу понять куда и как мне эту проверку впихнуть в коде шаблона меню
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Здравствуйте, умные люди, научите верстальщика вешать класс на последний пункт в стандартном шаблоне выпадающего многоуровневого меню битрикс кроме первого уровня т.е. необходимо на все последние li вложенных ul повесить класс.
вроде как нужно считать элементы меню как-то так <?if ($arItem["ITEM_INDEX"] != count($arResult) - 1):?>, если использовать счетчик элементов правильно, то как быть с вложенностью? в каком месте начинать считать?
уважаемые профи, подскажите пожалуйста.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Хотелось бы получить квалифицированный ответ на счет наличия либо отсутствия у битрикса решений относительно подсветки листингов кода. К примеру при публикации оных на страницах блога.
На бесплатные СMS существует огромное множество различных модулей, которые наура справляются с обеспечением данного, очень необходимого разработчикам и техническим писателям функционала.
Почитав немного, вылезшие в поиске битрикса темы, да и просто попользовавшись сайтом, на котором подсветки кода нет ни в блогах ни на форуме, понял что скорее всего готового решения не существует, так ли это?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Потребовалось, дабы минимизировать временные затраты на верстку и программирование, разделить верхнее выпадающее меню на две части.
Итого имеем в коде шаблона два блока с кодом вызова меню. В управлении структурой два типа меню (левая часть и правая часть)
Все работает, только вот нестыковочка одна когда открыта страница входящая в состав правой части меню, то в левой части остается активным пункт "главная" (тобишь срабатывает <?if ($arItem["SELECTED"]):?>) ведущий на индексную страницу. Как быть, подскажите пожалуйста.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Хм... значит теперь с появлением "сео оптимизация", добавление новых свойств через управление структурой работать не будет, пока через апи в шаблоне не пропишешь?
может есть еще способ? может в настройках что-то нужно донастроить? :)
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
создал свойство в управлении структурой, с именем yandex-verification затем зашел в "изменить" --> "свойства раздела" там это свойство появилось, ввожу конент, сохраняю. Но дело в том что ключевые слова и описание страницы вводится через модуль "сео оптимизация" и все что вводится стандартными средствами как-то перебивается сеоомтимизацией. И в код страницы метатег не вставляется.
Подскажите как бы осуществить добавление подобных метатегов через админпанель?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Значит полюбому у шаблона сайта должны быть два CSS файла и их вызов никак не удалить, чтобы не грузились зря, если один общий использовать?
Кстати, в битриксе не реализован механизм подгрузки основных файлов если они были модифицированы. хотя для файлов шаблонов компонентов в конце файла прибавляется date stamp. Очень неудобно когда нужно что-то поправить на довольно посещаемом сайте. Приходится подгружать дополнительные файлы. Можно ли это как-нибудь автоматизировать? Я здесь темку поднимал. Тут товарищ в ядре поковырялся даже) http://dev.1c-bitrix.ru/community/forums/messages/forum6/topic21661/message118768/?phrase_id=2503617#message118768
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Спасибо, Алексей, у меня в этой включаемой, которую нужно было показывать на всех страницах кроме одной, было немного незамысловатого html кода, вышел из положения просто использованием проверки на соответствие адреса апи функцией $APPLICATION->GetCurPage() по совету Евгения.
Цитата
Алексей Комаров пишет: вижу преимущества:
насчет преимуществ, меня в использовании нескольких шаблонов смущает одна вещь, как идеологически правильно добиться универсальности на уровне шаблонов компонентов и CSS? Я имею ввиду чтобы на все шаблоны был как один CSS файл, так и одни и те же шаблоны компонентов.
Моя версия - одинаковые для всех шаблонов, шаблоны компонентов выкладывать в шаблон .default (сам не пробовал но говорят будут доступны для всех шаблонов), а CSS файл подключать откуда-то из общей папки обыкновенным тегом link.
Насчет CSS я не уверен, может быть есть способ как-то по-другому подключить один файл для всех шаблонов?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Если вы имеете ввиду стандартный системный шаблон древовидного меню биртрикса "tree", то показом\скрытием дочерних пунктов у пункта-родителя по клику на изображении управляет скрипт "script.js", расположенный в папке с шаблоном меню.
В этом скрипте просто проверяется наличие\отсутствие класса "close" у родительского пункта. Если у пункта уже есть этот класс (а по умолчанию он выставлен в шаблоне), то он его убирает, если нет, то ставит.
В CSS этот стиль при его наличии просто скрывает дочерние пункты меню (по свойству display: none; скрывает вложенный список с дочерними пунктами):
Код
div.menu-sitemap-tree li.close ul
{
display: none;
}
Класс задан в шаблоне вот здесь (14 строчка в файле template.php системного шаблона):
Код
<?if ($arItem["IS_PARENT"]):?>
<li class="close">
Следовательно, для того чтобы дерево было в раскрытом положении, вам нужно избавиться от указания изначально этого класса в шаблоне. Т.е. удалить вот это "class="close"" При этом развернутые пункты будут также прятаться по щелчку на изображении.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Подскажите пожалуйста верстальщику как лучше минимизировать трудозатраты при создании сайтов на битриксе с очень разными макетами страниц, но одинаковым общим дизайном?
К примеру на сайте имеются страницы с разным количеством колонок, которые ничем другим как абсолютно иным html макетом не сверстать (с помощью включаемых областей тоже нельзя)
В битриксе выход есть, задавать каждой странице или разделу свой шаблон. Но в этом случае есть один нюанс, как добиться того, чтобы при каких-то мелких изменениях не проводить их в каждом шаблоне?
Для CSS выход вроде бы есть, подключить соответствующим образом один внешний файл для всех шаблонов, положив его в определенную папку.
Но вот что делать с шаблонами компонентов, которые одинаковы в этих шаблонах, ведь если возникнет необходимость что-то подправить, особенно на этапе разработки и интеграции, то придется вносить изменения в каждый общий шаблон?
Может быть есть какой-то способ задавать в вызове шаблонов компонентов общую директорию подобно подключению CSS, чтобы для каждого шаблона подключались шаблоны компонентов одни и те же, без их дублирования?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com