Эпиграф:
Админы! Учите админку!
На написание сего опуса меня сподвигло несколько недавних вопросов, заданных на соседних форумах. Вопросы эти... как бы так помягче сказать... ммммммм... свидетельствуют о дремучем, о вопиющем невежестве вопрошающих.
Порылась тут в поиске - мде... так уж сложилось исторически: ну вот не принято было разжёвывать азы. Во времена, когда одна из самых популярных причин бана была "Мозг отсутствует", естественный отбор проходил легко и быстро: кто админку не освоил, тот тут не задержался.
Ну ок, ок, лучше поздно, чем никогда. Будем исправлять ситуацию.
Напоминаю:
Программа "Ликбез" актуальна всегда. Желающие присоединиться - велкам.
Авторский блок:
В рамках программы "Ликбез"
Эксклюзивно для vBSupport.org
Владельцам форумов сходной тематики: пожалуйста, воздержитесь от копипаста текста статьи, просто дайте ссылку... обычно я обновляю первые посты в "ликбезовских" статьях, так что тут информация всегда актуальная.
Спасибо за понимание.
Итак, мы будем говорить о стилях и шаблонах.
Вопросы, которые мы обсудим в этой статье:
Что такое
master-стиль или
основной стиль
Что такое
Default Style или
дефолтный стиль и почему его не надо удалять
Что такое, собственно,
стиль и почему не надо путать слова
стиль,
шаблон и особенно -
тема
Что такое
шаблон
Затем, после "разжёвывания азов", мы поговорим об установке продуктов, которые требуют ручной правки шаблонов и о том, как минимизировать собственные трудозатраты в этом каторжном процессе.
Все основные моменты, в общем, одинаково актуальны как для тройки, так и для 4ки (и местами даже для 5ки)
Начнём с самого начала. В этот раз я хочу предложить новичкам не только прочесть текст, но и выполнить несколько практических операций. И те, кто не поленится, не пожалеет времени и выполнит на практике несколько довольно простых действий, пусть и не станут тру-админами за один сеанс, но как минимум, будут лучше ориентироваться в админке
Мы установили форум
Сразу после установки форума мы получаем один стиль: Default Style, по-простому "дефолтный".
Давайте поставим дебаг
Debug Mode From AdminCP [vB 3.5.x - 3.8.x] и посмотрим.. ну, чтобы раз и навсегда решить этот вопрос! Четвёрошники, ставьте, в админке работает без вопросов. Пятёрошники, сорри.. ничем помочь не могу
Для тех, кто совсем в первый раз:
Установка продукта: Админка - Продукты и модули - Управление продуктами. Там нажать [Добавить/импортировать продукт], дальше разберётесь. После импорта - Основные настройки - найти название только что установленного продукта, открыть (кликнуть дважды) и настроить
Так... вот теперь, при подключенном дебаге, Стили и шаблоны - Управление стилями, что мы видим:
Два стиля: Основной, он же master-стиль, и Default Style.
В папке /install/ дистрибутива есть только один XML стиля, vbulletin-style.xml, это и есть Основной (он же Мастер-стиль). Именно он импортируется при установке. Именно он обновляется при обновлении. Только Основной. Других стилей в дистрибутиве - нет.
Откуда же тогда взялся дефолт?
styleid=1 (стиль с ИД 1) был автоматически сгенерирован движком из Мастера.
Внимание! Важный момент! Момент, который нужно понять раз и навсегда. Физически стиля с ИД 1, он же дефолтный, на момент "сразу после установки" нЕ существует. Он не лежит нигде как отдельный стиль, он нЕ "занимает место на сервере". Это фикция. Он существует только как запись в таблице стилей о том, что есть стиль ИД 1.
Проверьте, это легко, попробуйте его вынуть: Стили и шаблоны - Сохранить/загрузить стили - в выпадалке выбрать Default Style - "Загрузка с сервера"
Вобла напишет:
Quote:
Предмет, который вы пытаетесь скачать, не содержит изменений.
|
непонятный текст...
сейчас мы его проясним
Измените один шаблон
Давайте, давайте, новички, не ленимся! Выполняем практические занятия! Стили и шаблоны - Поиск в шаблонах - пусть будет postbit_legacy, с ним всё просто, кроме того, именно этот шаблон редактировать приходится чаще всего, привыкайте) - вбили в поиск postbit_legacy, Искать только в заголовках - Да, вперёд
В результатах поиска даблклик по названию шаблона откроет шаблон на редактирование (Осторожно! нЕ master, открываем Default Style)
найдите место
Code:
<!-- sig -->
<div>
__________________<br />
$post[signature]
</div>
<!-- / sig -->
Видите вот это: __________________
это "разделитель подписи", в сообщениях под текстом собственно сообщения перед подписью по дефолту - вот такая линия, простецкая, из нижних пробелов, без заморочек
ну и... замените _ на *, или добавьте/уберите один символ _
изменение пустяковое, шаблон вы не испортите, но это - изменение шаблона, движок запишет это изменение. Сохранить.
Теперь, если мы опять поищем в шаблонах postbit_legacy, в результатах поиска будет так:
Название шаблона стало крррасным
Почему?
Да там же легенда, прямо в админке:
В этом стиле шаблон был изменён. Он отличается от Мастера.
Все остальные шаблоны стиля остались "чёрными":
ОК, теперь давайте ещё раз вынем дефолтный стиль: Стили и шаблоны - Сохранить/загрузить стили, в выпадалке снова выберем Default Style - вперёд. О! Ситуация поменялась, вобла предлагает сохранить файл. Сохраняем и открываем любым (вменяемым) текстовым редактором.
Смотрим.
Содержимое вынутого нами файла vbulletin-style.xml будет таким:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<style name="Default Style" vbversion="3.8.6" product="vbulletin" type="custom">
<templategroup name="частиц сообщений">
<template name="postbit_legacy" templatetype="template" date="1416088515" username="Admin" version="3.8.6"><![CDATA[ ***тут весь код шаблона postbit_legacy***]></template>
</templategroup>
</style>
Мы вынули дефолтный стиль, о чём чётко сказано: style name="Default Style"
и в этом стиле присутствует всего 1 (один) шаблон, а именно - отредактированный нами postbit_legacy
Вау... что же это получается? как это так получается? в стиле вообще сколько шаблонов?
На последний вопрос отвечу быстро. В 3.8.х - 580 шаблонов (включая CSS Special Templates), в 4.2.2 - 693
А вот "почему так получается" - об этом я уже сказала, читать надо было внимательнее
Quote:
Физически стиля с ИД 1, он же дефолтный, на момент "сразу после установки" нЕ существует. Он не лежит нигде как отдельный стиль, он нЕ "занимает место на сервере". Это фикция.
|
Нет этого стиля как отдельной сущности, нет его шаблонов, они нЕ хранятся движком как отдельные шаблоны этого стиля. Есть только запись о существовании такого стиля.
Это концептуальный момент.
Шаблон сохраняется как шаблон этого конкретного стиля только в том случае, если шаблон
был изменён (отредактирован). Пока никаких изменений нет - шаблон берётся из Мастера.
Таким образом, теперь (надеюсь), уважаемые новички, вы понимаете, насколько смешно звучит утверждение "я удалил дефолтный стиль, потому что у меня мало места на сервере"
Я вот не поленилась, экспортировала из таблицы style строку с записью про дефолтный стиль
37,9 кБ (37902 байта) - зашибенно много...
Кстати, с удалением английского языка - то же самое, точь-в-точь: пока фраза не редактировалась, она берётся из Мастера (Основной язык, то же, что Основной стиль, концепция - та же), так что удаление английского "в целях экономии" - такая же ерунда... но это немного другая история
Обратите внимание, в шапке вынутого стиля написано: type="custom"
"Кастомный" (нЕ ругательство, слово здесь употребляется довольно часто) - "свой", "заказной", "изменённый"... "кастомизированный"
В отличие от type="master", как написано в шапке стиля из дистрибутива.
В дальнейшем мне будет проще любой дополнительно установленный или правленный стиль называть "кастомным"
Почему не нужно удалять дефолтный стиль?
Если Вы установили какой-то стиль, более подходящий вашему форуму - замечательно. Сделайте его "стилем по умолчанию", запретите пользователям выбирать дефолтный стиль и оставьте дефолт в покое...
Если вы не будете вносить в него никаких изменений при установке продуктов (хаков), он останется как "образец". Если вдруг при редактировании шаблона другого стиля случится "косяк", ситуация "всё сломалось", то можно будет посмотреть, как выглядит страница на форуме без этих изменений. Речь идёт не о коде шаблона - код можно посмотреть и в Мастере. Но в Мастере нельзя просматривать форум, а в дефолте - можно.
Уточним:
Если вот тут
подвести курсор к названию стиля, появится подсказка "Посмотреть форум в этом стиле". При наведении на Основной стиль подсказка тоже появляется, и тоже можно кликнуть, и движок сгенерирует ссылку /forum/index.php?styleid=-1 и откроет форум. Но это - дефолтный стиль, а не Мастер.
Смотрите, вот я кликнула по названию "ОСНОВНОЙ стиль", открылся форум "в этом стиле"
Но я не вешала рыбок в Мастер-стиль
Шаблоны header и headinclude изменены в дефолтном стиле, эта "новогодняя мотня" добавлена только в дефолт
Совсем наглядная ситуация будет, если дефолт удалён. По клику на "Основной стиль", при ссылке ?styleid=-1 откроется не стиль с самым маленьким ИДом (как можно было бы предположить), а стиль, который в основных настройках (Настройки стиля и языка) выставлен как "Стиль по умолчанию"
// кто заинтересуется, что за рыбки - вообще-то это шарики новогодние, так и искать, "новогодняя мотня"
Кроме того, нельзя забывать об обновлениях.
Пожалуй, тут надо сказать пару слов подробнее.
Что происходит при обновлении?
Подробная статья - вот:
Обновление форума, но там про стили - вскользь.
При обновлении форума, какое бы минорное ни было это обновление, движок затянет и обработает vbulletin-style.xml, то есть, говоря простыми словами, перезапишет Мастер-стиль.
Как следствие -
все изменения, которые вы вносили в Мастер, исчезнут бесследно, об этом мы ещё поговорим в блоке про установку продуктов.
Естественно, все изменения, произошедшие с Мастером, тут же отобразятся в дефолтном стиле (при условии, что мы его не редактировали). После обновления можно переключиться на дефолтный стиль и посмотреть, что как выглядит. Вряд ли это актуально для троешников... но вот для четвёрошников - очень актуально! (про 5ку молчу, чур, изыди, нечистая)
Кстати, о 4ке... скоро будет два года, как я попросила
Quote:
Originally Posted by Luvilla
так уж получается, что про 4ку я расписывать пока морально не готова
поэтому, господа четвёрошники, если есть желающие - будет очень и очень уместна подробная статья о работе со стилем после обновления, все эти четвёрошные заморочи "слияние шаблонов прошло неуспешно" или как-там-она-пишет
Есть добровольцы?
|
вопрос всё ещё актуален. Есть добровольцы?
Но мы отвлеклись... итак, нетронутый
молью правками дефолт будет весьма полезен при обновлениях
Секундочку... что же это получается? После каждого обновления нужно срочно искать подходящий стиль?
Да, как это ни печально, но для 4ки ситуация обстоит именно так: стиль должен соответствовать линейке.
Для тройки всё значительно проще, хотя при обновлениях с 3.6 или 3.7 с кастомным стилем придётся поработать: подправить несколько шаблонов.
Почему только "несколько"?
Дело в том, что практически в любом кастомном стиле
нет полного набора шаблонов.
Помните, мы с этого начали: если название шаблона в списке - крррасное, то шаблон изменён внутри этого стиля. Чёрное - нЕ изменён. И путём весьма нехитрых операций мы с вами убедились в том, что "чёрных" шаблонов вообще физически нет в стиле. И несмотря на то, что их "нет", форум прекрасно работает, страницы показываются. Почему? Потому что для любого кастомного стиля действует общая концепция: если шаблона в стиле нет - берём его (шаблон) из Мастера.
Для примера, из широко известного: в стиле BluEVO - 43 шаблона, в CyborgDark - 47. В используемом мною Pewter Palette - 234 шаблона, в Гламурном (стиль называется M3N), при всей его внешней наворочанности - 48 шаблонов, а в "Зимний стиль как в IPB" - всего 33. (все примеры - стили для тройки)
Что это означает на практике?
Что если мы обновляли тройку с 3.7 до 3.8.7, проблемы могут возникнуть только в тех шаблонах, которые "красные". А те, которые "чёрные" - это шаблоны Мастер-стиля, они всегда актуальны.
Лью! Я тут с твоими "практическими занятиями" испортил себе дефолтный стиль! У меня теперь postbit_legacy - крррасный!
поправимо на раз-два:
Нажать один раз на название шаблона, потом - на кнопку "Вернуть"
Вобла переспросит:
Quote:
Вы уверены что хотите вернуть шаблон 'postbit_legacy'?
Имейте ввиду, что если этот шаблон унаследован подстилями, на них не отразятся изменения, которые вы сделали для этого шаблона.
Эта операция необратима.
|
Жмите "Да"
Шаблон будет удалён. Да-да, именно так, "Вернуть" = "Удалить", а вы как думали? Чтобы шаблон был "чёрным", его вообще не должно быть в этом стиле.
Прочёл. Проникся. Осознал. Но я уже удалил дефолтный стиль! Всё пропало!!! что делать?
поправимо на раз-два
Стили и шаблоны - Управление стилями. Под списком всех установленных стилей найдите текст [Добавить новый стиль] - это ссылка, нажимаем. На открывшейся странице в выпадалке "Родительский стиль"
оставляем то, что там есть, а именно "Нет родительского стиля". Все остальные поля оформляем по своему усмотрению, например, заголовок - Default Style... Сохранить. Это и будет дефолтный стиль, клон от Мастера.
Аналогично можно восстановить английский язык... но это опять-таки совершенно другая история
При желании так можно создать "дочерний" стиль от любого установленного кастомного стиля. "Дочерние" стили отображаются и в меню выбора стиля в футере, и в админке в управлении стилями "лесенкой"
Зачем могут понадобиться дочерние стили?
Ну мало ли... можно, например, слегка сменить бекграунды под времена года
===
На этой счастливой ноте я беру тайм-аут
Продолжение - через несколько дней.
Если есть чисто практические вопросы по уже изложенному материалу - спрашивайте