Оба вопроса касаются приватных настроек шаблона, поэтому я отвечу с листингами исходного кода, чтобы принцип изменения параметров и вообще где они расположены по файлам - вот чтобы это всё было понятно вашему вебмастеру. Ему скорее всего и придётся лазить в настройки шаблона в случае необходимости что-то поменять.
Как найти файл настроек шаблона
Сначала скажу два абзаца по азам шаблонизации, иначе любому вебмастеру, которого могут пригласить поддерживать сайт, с первого прикосновения к неведомому ему шаблону SplashMaster не понять, какая отправная точка ведёт нас именно к такому началу поиска настроек.
Итак Когда посетитель открывает страницу сайта, браузер отправляет на вебсервер запрос сгенерировать содержимое странички по такому-то URL (урлу, то есть интернет адресу). Вебсервер передаёт этот запрос в установленную на сайте CMS - так называют систему управления контентом. Допустим, у той системы в процессе настройки сайта были созданы какие-то зависимости между адресами страниц и обрабатывающими модулями, какие присутствуют в данной сборке системы. Значит, на всякий запрос страницы срабатывает какой-то системный модуль, и в ответ генерирует страничку на основе какого-то шаблонного макета, сопоставленного каждому модулю и хранящегося в текущем шаблоне (иногда его называют - тема) сайта под видом tpl- или htm-файла. Скажем, модулю новостей сопоставлен макет news.htm, модулю обратной связи сопоставлен макет feedback.htm и так далее.
Если внешний вид страниц сайта подчиняется единому дизайну, тогда шаблон строят по универсальной схеме двухпроходной отрисовки. Похожим образом устроен и SplashMaster, и кстати многие другие популярные ныне шаблоны сайтов. Такая схема в два шага используется из соображения упростить кодовую основу, то есть не повторять в каждом макете те же самые элементы дизайна, что присутствуют на всякой странице (к примеру логотип, шапка, подвал, вспомогательная формочка или боковая панель и тому подобное). В итоге, на первом шаге отрисовки некий вызванный системный модуль по сопоставленному ему макету генерирует центральную часть страницы, но без всякого внешнего оформления. А второй шаг генерации всегда использует один и тот же макет index.tpl - это общий вид страницы, как раз то самое единое внешнее оформление, куда и вставляется результат первого шага отрисовки.
Так вот Из описания схемы шаблонизации нам становится ясно, что разметка и теги бизнес-логики, используемые в сопоставленном макете системного модуля, сработают только на странице, связанной с этим модулем. А теги в файле общего макета страницы сработают ВЕЗДЕ.
Следовательно, если при поисковом визите человека на произвольную страницу сайта нам всегда приходит СМС-уведомление, и притом мы предполагаем, что бизнес-логика всяких там СМС-ок и писем реализована именно в шаблоне, то есть в виде так называемых визуальных модулей (именно шаблонных, а не системных модулей), тогда поиск точки подключения подобного модуля наверное следует начать именно с файла index.tpl.
Продемонстрирую ход поиска настроек на собственном примере.
- Открываю меню админпанели дизайн » Файлы шаблона
- Нахожу в списке файл index.tpl
- Щёлкаю файл на редактирование
- Открылось окно, там исходный код файла
- В концу вижу подключение пяти каких-то модулей инструментов
- Наверно, это и есть нужное нам:
- Я обозначил подключение таким цветом
- Ещё чтобы были понятны участки бизнес-логики, я обозначил:
- таким цветом - контент страницы, полученный на первом шаге отрисовки
- таким цветом - теги, относящиеся только к демо сайту (их можно удалить из вашего шаблона)
Смотрим Вот как это выглядит в исходном коде макета index.tpl.
{strip}
{modCheck404}
{ifAjax}
{content}
{/ifAjax}
{ifNotAjax}
<!DOCTYPE html>
<html lang="ru">
<head>
<base href="{site}">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="generator" content="Impera CMS {version} ({versionYMD})">
<title>{title}</title>
<meta name="description" content="{metaDescription}">
<meta name="keywords" content="{metaKeywords}">
<link rel="canonical" href="{canonicalUrl}">
<link rel="shortcut icon" href="{theme}images/favicon.ico">
<link rel="stylesheet" href="{theme}css/styles.css">
<link rel="stylesheet" href="{theme}css/restyle.css">
<script>
function scalePage () { };
function onLoadImage ( img ) {
img.setAttribute('data-loaded', 'true');
scalePage();
};
</script>
{otherMeta}
</head>
<body onload="scalePage()" onresize="scalePage()">
{modDemoRemark}
<div class="wrapper">
{content}
<section class="slave">
<div class="wrapper">
{seoText}
</div>
</section>
{modBrands}
{modCountries}
<footer>
<div class="wrapper">
<p>© {year} {siteName}</p>
<p>© {year} {companyName}</p>
<a href="{developerSite}" rel="nofollow" target="developWindow">{developer}</a>
<a href="{developerSite2}" rel="nofollow" target="developWindow">{developer2}</a>
<a href="{developerSite3}" rel="nofollow" target="developWindow">{developer3}</a>
<a href="/" rel="nofollow" target="developWindow">Скрипт сайта - ImperaCMS</a>
</div>
</footer>
{modDemoThemes}
<script src="{theme}js/scripts.js"></script>
{otherJS}
<div class="counters">
{counters}
</div>
</div>
{modTools}
{modTools2}
{modTools3}
{modTools4}
{modTools5}
</body>
</html>
{/ifNotAjax}
{ifDemo}
{headerExpires plus=0}
{/ifDemo}
Теперь, когда я узнал, как назван тег интересовавшего меня визуального модуля, ну допустим это будет тег {modTools2}, я могу зайти в папку модулей, найти там его файл tools-2.htm и посмотреть логику работы того модуля. Эти сведения нужны мне лишь для того, что коль скоро модуль отправляет СМС-ки, то вероятно опирается на какие-то настройки шаблона, и тогда мне интересно взглянуть, откуда именно они извлекаются или может быть подключаются в виде ещё одного файла-модуля.
Продолжаю демонстрацию хода поиска настроек на собственном примере.
- Открываю меню админпанели дизайн » Файлы шаблона
- Переключаюсь в папку modules
- Нахожу в списке файл tools-2.htm
- Щёлкаю файл на редактирование
- Открылось окно, там исходный код файла
- В верхней части вижу интересующее меня подключение настроек (я обозначил его таким цветом)
Смотрим Вот как это выглядит в исходном коде макета modules/tools-2.htm.
{strip}
{ifNotAdmin}
{modSettings}
{ifVisitorIp except=$tplSettings.exceptIp}
{ifNotRefererDomain}
{ifNotDemo}
{ifTemplateFlag name=smsVisit}
{sendSms}
{modSms2}
{/sendSms}
{/ifTemplateFlag}
{ifTemplateFlag name=emailVisit}
{capture assign=txt}
{censor change=$tplSettings.emailCensor}
Аналитика {siteDomain} / Переход / {visitorIp} -> {title}
{/censor}
{/capture}
{sendEmail subject=$txt}
{modEmail2}
{/sendEmail}
{/ifTemplateFlag}
{/ifNotDemo}
{/ifNotRefererDomain}
{/ifVisitorIp}
{/ifNotAdmin}
Теперь, когда я узнал, как назван тег и соответственно имя файла интересовавшего меня модуля настроек, я могу рассмотреть содержимое файла. Вот как выглядит модуль настроек modules/settings.htm. Имена настроек я выделил таким цветом.
{strip}
{$params = []}
{$params['exceptIp'] = [
'unknown',
'0.0.1*.*',
'127.0.0.1'
]}
{$params['smsSearch'] = TRUE}
{$params['emailSearch'] = TRUE}
{$params['smsVisit'] = TRUE}
{$params['emailVisit'] = TRUE}
{$params['smsCensor'] = [
'/чтоИщем1/u' => 'наЧтоМеняем1',
'/чтоИщем2/u' => 'наЧтоМеняем2'
]}
{$params['emailCensor'] = [
'/чтоИщем1/u' => 'наЧтоМеняем1',
'/чтоИщем2/u' => 'наЧтоМеняем2'
]}
{$tplSettings = $params scope=global}
Извиняюсь за множество букв, которые тут написал. Но далее по ветке обсуждения, когда будем упоминать настройки шаблона, вы или ваш вебмастер сообразит, о чём идёт речь и где такая настройка находится.