Извините, Евгений, значит я неправильно понял что вы имели ввиду под "Для каждой новой страницы создай включаемую область, скопируй из уже имеющейся код".
Мой способ говорит, о том, как бы понял это простой пользователь не программист (я не программист, а верстальщик, немного разные понятия). И я понимаю что трудозатраты очень велики.
Простоя пытаюсь понять, почему вообще разработчики битрикса так реализовали этот механизм включаемых областей, не продумав такой случай задания этой области с исключением в одну страницу или просто я что-то упустил
А в курсе по интеграции про работу с включаемыми областями сказано очень мало и согласитесь понять простому смертному тот бред сразу довольно сложновато Я не говорю уже про объяснение работы с шаблонами включаемых областей, кои у меня так и не заработали, наверное руки кривоваты
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Евгений Жуков пишет: Если так, уж простите, на язык просится цитата из известного анекдота - "поручик был большой забавник". Зачем Вы этакую свинью подкладываете девочке - контент-менеджеру? Для каждой новой страницы создай включаемую область, скопируй из уже имеющейся код, при удалении страницы не забудь удалить включаемую область? А если в корне будет хотя бы 2-3 десятка страниц? Это сколько лишней работы?
Евгений, видимо Вы не до конца разобрались с работой включаемых областей в битриксе. Не печальтесь, я тоже многого не понимал причем очень долго
В данном случае совсем не нужно для каждой страницы создавать в коде шаблона включаемую область, как я и отметил в самом начальном своем посте. Достаточно определить в коде шаблона, вызов всего лишь двух включаемых областей, одну "для страницы", вторую "для раздела". Та которая "для страницы" будет отображать включаемые области заданные для каждой страницы по шаблону названиестраницы_inc.php(если они есть), т.е. в настройках этой первой включаемой области мы выбираем "для страницы" и ставим индекс inc, т.е. если для страницы test.php есть одноименный файл включаемой области test_inc.php, то включаемая область на странице test.php отобразится, а если такого файла не будет - то нет. Я что-то не пойму, откуда Вы взяли то, что в коде шаблона нужно указывать для каждой отдельной страницы вызов включаемой области? Бедной девочке контент-менеджеру не нужно будет ничего копировать и создавать, будет много гемороя у програмиста, просто копировать дополнительно файл включаемой области для каждой страницы в корне сайта.
Да и пример этот я привел, просто для того, чтобы понять, как делать ПРАВИЛЬНО с точки зрения разработчиков БУСа.
Все что я узнал (даже не из курсов, потому что в курсах я не нашел нормального объяснения работе с включаемыми областями), о работе с включаемыми областями и позволило мне описать этот способ.
Я просто хочу докопаться до истины. Как же всетаки правильно "по-битриксовски" что-ли поступить в таком случае.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Попов Кирилл пишет: <?php if(!CSite::InDir("/test/")):?> а тут включаемая область которая не покажется только в папке "/test/" <?endif;?>
кстати мне нужно не показывать область для определенной страницы (к примеру "test.php"), расположенной в корне сайта, как будет выглядеть код в этом случае?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Евгений Жуков пишет: в приведенном Вами коде как раз нет определения, какую область показывать.
Позвольте, позвольте, тезка, как же это нет определения какую показывать?) перечитайте мою монстроподобную идею еще разок, Вы кажется не все поняли, мой вариант вполне рабочий, если все файлы раскидать куда надо, и определить эти две включаемые области в шаблоне и выставить им соответствующие настройки. Просто файла ведь для той страницы на которой показывать не нужно не будет, а включаемая область для раздела не покажется, потому что файлы включаемой области для разделов будут в папках разделов, а в корне этого файла не будет
А за кодик спасибо, теперь буду знать
А про правильность, я просто хочу для себя выяснить, как же всетаки правильно осуществить такую возможность. Ведь должен же быть правильный способ (как бы это сделали сами разработчики битрикса) и много разных вариаций как его так и просто костылей.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Ясно, спасибо. У кого еще какие идеи? Может из самого битрикса кто-нибудь заглянет сюда
Плодить шаблоны из за одной включаемой, имхо извращение еще то
Ольга, а можно поконкретнее, как именно это можно осуществить, примерчик бы кодика
И почему Вы это считаете некрасивым костылем? Ведь как я понял других (менее затратных) способов,кроме того, который привел я ведь нет? И кстати, если во всем следовать идеологии построения шаблона битрикса, то мой вариант самый "правильный" ?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
А по поводу использования каких-то нестандартных уникальных шрифтов кроме как кое-где в заголовках, я бы Вам не советовал Хорошее исследование на эту тему провел бывший верстальщик яндекса, а ныне веб-евангелист компании опера Вадим Макеев http://pepelsbey.net/2009/12/web-fonts-vs-fonts-for-web/
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Здравствуйте, умные люди. Научите пожалуйста верстальщика правильно укрощать включаемые области
Структура сайта такова: есть как огромное количество отдельных страниц расположенных просто в корне сайта, так и большое число разделов (папок со страницами).
Задача: повесить на все страницы сайта в шаблоне включаемую область, за исключением одной единственной страницы, расположенной в корне сайта.
В мой неокрепший мозг приходит единственный вариант использования двух одинаковых по содержанию включаемых областей , для всех страниц, расположенных в корне сайта (за исключением той для которой область показывать не нужно) задать эту включаемую область "для страницы" файлом "названиестраницы_inc.php":
Здравствуйте, да, возможно, только тогда нужно будет использовать яваскрипт и кнопка при выключенном яваскрипте работать не будет (хотя сегодня яваскрипт в браузерах в основном отключают разработчики, да и то на время, в целях тестирования) Вам нужен метод submit()
сам я никогда кнопки не переделывал, вот что за недолгую беседу мне поведал гугл:
А можно полюбопытствовать каким методом вставляете? Есть довольно неплохой метод интеграции флеш-объектов на html страницу - SWFObject 2: http://habrahabr.ru/blogs/webdev/31615/
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
ну не хочу я джейквери еще прикручивать, ради иммитации ховеров для одного единственного элемента шаблона только лишь чтобы заставить несговорчивого старичка-ie делать то что нужно , есть ведь уже стандартный скрипт
как-то неправильно очень это будет
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Здравствуйте умные люди, в яваскрипте я не очень силен.
Нужно для ie6 повесить ховеры на элеметы списка древовидного меню.
выдираю скрипт из стандартного выпадающего горизонтального и пихаю в скрипт древовидного, получается вот так:
Код
function OpenMenuNode(oThis)
{
if (oThis.parentNode.className == '' || oThis.parentNode.className == 'display_yes')
oThis.parentNode.className = 'close';
else
oThis.parentNode.className = '';
return false;
}
var jshover = function () {
var sfEls = document.getElementById("menu_list").getElementsByTagName("li");
for (var i=0; i<sfEls.length; i++)
{
sfEls[i].onmouseover=function()
{
this.className+=" jshover";
}
sfEls[i].onmouseout=function()
{
this.className=this.className.replace(new RegExp(" jshover\\b"), "");
}
}
}
if (window.attachEvent)
window.attachEvent("onload", jshover);
после этого ховеры появляются, но неправильно начинает работать само меню, раскрывается только по двум щелчкам по папке, видимо скрипт на ховер "съедает" клик...
подскажите пожалуйста, как можно "подружить" эти два скрипта? джейквери использовать не хочется...
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Ritter пишет: if ($APPLICATION->GetCurPage() == "/index.php")
Кстати, если Вы обновляли ядро до 8.5.0, то там в функцию параметр добавили и теперь чтобы она возвращала "/index.php" нужно добавлять true - GetCurPage(true), иначе она возвратит "/"
Для тех кому влом читать: Какими способами принудительно, на стороне клиента, можно перегружать главные css файлы шаблона?
Наверняка у многих из Вас возникала следующая проблема:
У проекта с довольно внушительной посещаемостью, меняется главная таблица каскадных стилей. Естественно в кеше у всех пользователей лежит старый файл. Изменения в новом файле довольно внушительные, и все пользователи со старой таблицей видят некорректно отображаемую структуру страницы.
Файлы компонентов отлично перегружаются (в зависимости от настроек кеширования), им ведь добавляется идентификатор типа style.css?1257844589.
А вот как быть с главными файлами стилей?
Можно конечно извратиться, и на определенное время менять названия и принудительно подгружать в коде шаблона новые версии файлов, но ведь это довольно гемморно. Или такой способ имеет место быть за неимением автоматизации?
Поделитесь пожалуйста Вашими соображениями по этому поводу.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Спасибо, Антон, довольно полезное извращение Я вот думаю, не займет ли это столько же времени и действий как простое архивирование шаблона, в моем случае, вроде по действиям уж лучше шаблончик лишний раз загрузить к себе на машинку
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Вопрос, собственно озвучен в теме. Есть папочка с шаблончиком компонента, нужно скачать только ее. Возможно ли каким-либо образом через админку битрикса сие чудо осуществить? Или это невозможно, так как компания битрикс посчитала что архивировать и скачивать еще и отдельные папочки, это слишком жирно?
Может механизм есть отдельный архивации какой-нибудь?
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Александр, выше все уже понятно, классы описаны в шаблоне компонента bitrix:system.show_message
Переопределить стиль конечно можно, как в главном css шаблона, непосредственно в шаблоне system.auth.authorize либо его css файле, но переопределение работает только с !important, да и вообще "переопределять" стили да еще и с !important - не совсем правильно. И особенно это не правильно если имеется предусмотренный в системе способ не делать это через одно место
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com