Дмитрий Кондин

Создание шаблона для статичной страницы

Recommended Posts

Из соображений безопасности мы отключили добавление js-кода через редактор.

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

Для этого нужно:

1. Через редактор форм добавить в таблицу page колонку template с типом данных safe_string (в новых версиях cms это поле уже есть)

2. Через редактор шаблонов создать шаблон custom.tpl (можно свое название) с таким кодом

{$main}
Тут будет свой код, можно JS.Например, карта схемы проезда
<script type="text/javascript" charset="utf-8" src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=LwkOcwFdI8Fi3T-HBWQ7M3Y0J6Y_gjn0&width=600&height=450"></script>

3. Заходим в редактор страниц и в новое поле template вписываем custom.tpl

4. Теперь при открытии этой страницы будет загружаться шаблон custom.tpl и вы увидите свой текст и код из шаблона.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть вопрос, наверное сюда будет ближе к теме.

 

Есть необходимость создания страниц с фреймом, однако его размеры не совсем умещаются в форматирование шаблона Realia (сбоку выводятся агенты, новости и т.п.) Как-бы это всё исключить, чтобы на странице только была основная информация?

 

Если ближе к теме, то ипотечный сервис мне прислал ссылку, которую желательно разместить во фрейме.

<iframe width="1024px" height="700px" src="https://unicom24.ru/ipoteka_iframe/?key=psrgeownkatwkimeumbjrrfotnbzxjkc"></iframe>

Увы, фрейм по размеру не влазит в формат страницы...

 

Переход на страницу подключается к кнопке "Заявка на кредит" при просмотре объявления, как например здесь - http://urbanus.ru/arenda-kvartir/reg_moskva/okrug_uzao/rayon_severnoe-butovo/ulica_koktebelskaja/dom_11/18736/ , при клике на которую в вышеуказанный фрейм отправляются параметры объявления а ипотечный сервис выдает расчет и одобрение.

 

Можно конечно просто ссылку прицепить на кнопку или в меню, но работоспособность не гарантируется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для него лучше в main.tpl сделать ветку для разметки всей доступной области.

смотрите на примере layout_basic.tpl

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

подскажите а можно как то сделать страницы с переходом? то есть страница 1,2,3,4,5 .....последняя 16 и так далее
то есть у нас есть например статичная страница в ftp создали файл spravka.tpl например, в нем используем html и другую разметку 

для чего делается:  есть справочник например агентств недвижимости всего их например 200 in
если сделать все на одной странице то страница "тяжелая" получается. лучше разбить ее на несколько. а фактически разместить только 20адресов картинок и телефон агентств следующие 20 как бы уже с переходом на следующую и тд

то есть по мере добавления они будут разбиваться на страницы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Варианты:

Сделать главную страницу - содержание или буквы в алфавитном порядке и к ним привязать через якори последующие страницы с агентствами начинающимися на конкретную букву из списка, например как у меня здесь и здесь

Можно сделать отдельный шаблон с аккордеоном (например accordion.tpl) и встроить его на единую страницу. Принцип тот-же, каждая вкладка аккордеона начинается на определенную букву в алфавитном порядке (или по улицам/населенным пунктам), грузиться будет не вся страница сразу а только фрагмент из активной вкладки аккордеона. Пример кода:

<h2 class="page-header">Агентства недвижимости города Н-ск</h2>

<div class="property-detail">
    <div class="accordion" id="accordion2">
        <div class="accordion-group">
            <div class="accordion-heading">
                <a class="accordion-toggle active" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
                    <span class="sign"></span> Заголовок на А
                </a>
            </div>
            <div id="collapseOne" class="accordion-body collapse in">
                <div class="accordion-inner">
                    <p>Здесь агентства на А</p>
                </div>
            </div>
        </div>
        <div class="accordion-group">
            <div class="accordion-heading">
                <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
                    <span class="sign"></span> Заголовок на Б
                </a>
            </div>
            <div id="collapseTwo" class="accordion-body collapse">
                <div class="accordion-inner">
                    <p>Здесь агентства на Б</p>
                </div>
            </div>
        </div>
        <div class="accordion-group">
            <div class="accordion-heading">
                <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseThree">
                    <span class="sign"></span> Заголовок на В
                </a>
            </div>
            <div id="collapseThree" class="accordion-body collapse">
                <div class="accordion-inner">
                    <p>Здесь агентства на В</p>
                </div>
            </div>
        </div>
    </div>
</div>

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

При создании страницы, просто указываем заголовок и шаблон - accordion.tpl, всё что напишите в текстовом редакторе будет выше аккордеона.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

аккордеон интересно -о не практично, так как скорее всего страница не проиндексируется полностью, и например забив через поисковик название агентства -шанс попадания через ссылку на нас практически равно нулю :((

может как то лучше сделать спавочник ?? чрез админку?  вопрос как его потом выводить и как правильно с ним работать? например ставить приоритетное место   например был на 121 месте (видимо по id)  раз и вручную приделали id 2, и следовательно в справочнике агентство будет выходить на первых местах, ну и сделать листинг страниц

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, doma сказал:

может как то лучше сделать спавочник ?? чрез админку?

запросто. берется любой модуль с основной задачей "оперирования каким-то объектами - вывод в список, показ объекта". например застройщики, ЖК (хотя он избыточен), статьи, да даже те же новости.

потом тут Дима давал видео как сделать свое приложение. делать особо уже конечно нечего, так как есть готовая заготовка и нужно в основном переподключить другую модель, поменять манифестный файл, переименовать ключевые переменные связывающие приложение с БД, нафасовать своих конфигурационных переменных по аналогии, и подправить под свои нужды фронт-часть.

если полноценная фронт-часть в виде приложения не нужна, то заводится просто модель объекта в Редакторе форм и навешивается на него стандартная админка через кнопочку со звездочкой. а вывод на сам сайт уже можно решить в main.php шаблона самым простым перехватом нужных адресов и невычурными запросами сразу в БД за данными.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, abushyk сказал:

запросто. берется любой модуль с основной задачей "оперирования каким-то объектами - вывод в список, показ объекта". например застройщики, ЖК (хотя он избыточен), статьи, да даже те же новости.

потом тут Дима давал видео как сделать свое приложение. делать особо уже конечно нечего, так как есть готовая заготовка и нужно в основном переподключить другую модель, поменять манифестный файл, переименовать ключевые переменные связывающие приложение с БД, нафасовать своих конфигурационных переменных по аналогии, и подправить под свои нужды фронт-часть.

если полноценная фронт-часть в виде приложения не нужна, то заводится просто модель объекта в Редакторе форм и навешивается на него стандартная админка через кнопочку со звездочкой. а вывод на сам сайт уже можно решить в main.php шаблона самым простым перехватом нужных адресов и невычурными запросами сразу в БД за данными.

и все же если использовать базу данных -то с точки зрения программирования с этими данными "нужно как то работать", то есть извлекать. Следовательно лучше использовать обычный "текстовый!" файл статичной страницы, то есть все вписывать и изменять ручками, просто редактируя текстовую часть, а не вытаскивать из БД.
Вот только как разбить страницу на несколько страниц, чтобы например не в ручную делать страница 1,2,3, а как то более автоматизированно, например есть файл tpl в нем забито 200 организаций например, а она автоматически разбивается на страницу где только 20 организаций.

На одном сайте увидели даже "поиск"   - вписываете начальные буквы организации и выводится весь список организаций по критерию - видимо используют справочник организаций через БД.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Цитата

Вот только как разбить страницу на несколько страниц, чтобы например не в ручную делать страница 1,2,3

Если страница верстается вручную, то и разбивка ее идет вручную. А если уже есть "нечто, что автоматически разбивает какие-то данные на страницы по 20", то это уже совершенно не вручную.

 

3 часа назад, doma сказал:

На одном сайте увидели даже "поиск"   - вписываете начальные буквы организации и выводится весь список организаций по критерию - видимо используют справочник организаций через БД.

Почти уверен, что да. Хотя, вариант поиска по тексту в некотором сформированном вручную статическом файле, я тоже не откидываю полностью. (Это шутка, не пытаться воспроизвести это в домашних условиях)))) ).

 

NB. Вручную имеет смысл формировать только то, что НИКОГДА или ПРАКТИЧЕСКИ НИКОГДА не будет изменяться ни в плане отображения, ни в плане состава. Все остальное вручную не делается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас