- HTML и CSS
- CSS3 shape-outside или обтекание картинки текстом
- Маштабируемый фон background css
- CSS выравнивание по вертикали
- Хранение картинок в css с помощью base64
- Как сделать ссылку, якорь?
- CSS3 для Internet Explirer 6 и старше
- Вёрстка для мобильных устройств
- Растягиваем html на всю страницу
- Таблица цветов CSS
- Выравнивание тега LI в контенте
- Оооох какой прекрасный box-sizing
- Делаем таблицу при помощи div и css
- Как сделать кросбраузерный linear-gradient без особых усилий
- CSS прозрачность для всех
- CSS для печати @media print
- Выравнивание блоков с помощью css {display: inline-block}
- Замечательное значение inherit
- Тень блочных элементов в CSS3
- Обводка текста с помощью CSS
- Полезные html символы
- Хаки или CSS для Internet Explorer-ов
- Делаем трёхуровневое меню на css
- jQuery, javaScript
- Устанавливаем на Яндекс Карте свою картинку вместо стандартной метки
- Адаптивные фотогалереи, слайдеры, карусели для сайта
- Узнаём координаты для установки скрипта Яндекс Карт
- Собственный фильтр для селекторов. Выбираем случайный элемент на jQuery
- closeClick true fancyBox 2, closeClick :true
- jquery ui slider, дробные числа, float values
- Парсер параметров из адресной строки jQuery
- Подсказки по javascript
- Выпадающее горизонтальное меню
- Работа с объектами в JavaScript: теория и практика
- Работа с массивами в jquery
- PHP
- Регулярные выражения онлайн
- Как определить путь к файлу текущего класса
- PHP скрипт для поиска. Удаление вируса с сайта
- UMI-CMS
- UMI CMS rel canonical
- UMI CMS API Шаблоны данных Добавить префикс к полю
- UMI CMS API Шаблоны данных Вывести текст из подсказки
- Если надо в UMI CMS открыть доступ к файлу в корне сайта htaccess
- Как перенести контент со старой UMI на новую UMI CMS с помощью umiDump
- Отправка письма с вложением UMI CMS API
- Как вывести из набор изображений одну картинку UMI CMS API (или случайную)
- UMI CMS Основные поля для отправки формы в модуле Конструктор форм
- Функции API UMI CMS для добавления, редактирования, удаления объектов каталога
- Функции API UMI CMS для добавления, редактирования, удаления объектов каталога
- UMI CMS Фильтрация спама на сайте
- Работа с набором изображений (multiple_image) TPL в UMI.CMS
- UMI CMS Ошибка "I expect value in request for param"
- UMI.CMS USEL кириллица не работает
- UMI Добавление дополнительных настроик на примере модуля catalog
- Подключение шаблонов в UMI.CMS в TPL шаблонизаторе
- UMI.CMS - забыл пароль администратора. Как восстановить?
- UMI Selector USEL фильтрация в PHP
- Передать в xslt xpath в запросе знак амперсанда
- Работа с system makeThumbnail
- Вывести названия методов в UMI
- UMI CMS API загрузка модуля
- UMI CMS карта сайта с помощью Usel
- UMI выгрузка из 1C поиск страницы копии, удаление копии
- Как в UMI.CMS изменить адрес домена в sitemap.xml и robots.txt. Изменить HTTP на HTTPS
- Вывод баннеров/слайдера в umi xslt
- UMI.CMS нет вкладок в админке
- XSLT вывод ссылки в которой присутствует знак амперсанда &
- UMI CMS Выгрузка из 1С нужно чтобы название товара (страницы каталога) не менялось
- Как в UMI поставить всем страницам галку на просмотр гостю
- Как узнать у страницы id шаблона данных через api?
- UMI.CMS работа с debug config.ini фильтрация по IP
- Как задать заголовок H1 (header) на странице созданного метода UMI CMS
- Выводим случайную статью в UMI CMS с помощью usel в tpl
- UMI.CMS Открыть закрытые поля в шаблонах данных ?skip-lock=1
- Как отредактировать облако тегов
- Как узнать позицию страницы среди соседних страниц в UMI
- umi cms usel вывод страниц каталога c фильтрацией
- Вывод справочника при помощи usel
- Как в umi узнать umiHierarchyElement из id umiObject
- Карта сайта на UMI CMS с помощью кастомного метода
- Редирект со страницы на страницу
- Создание, обслуживание, поддержка сайта
- Как удалить в картинке jpg, jpeg, gif? eval или base64_decode
- Основные технические ошибки, допускаемые при создании сайта
- Как выбрать домен?
- Хостинг, что это и для чего он нужен
- htaccess редиректы
- Наполнение сайта
- Цены на разработку сайта в Петербурге
- Какова может быть стоимость поддержки сайта?
- Важные мелочи!
- Каким должен быть сайт по версии яндекса
- 5 советов верстальщику
- Копирайтинг, seo, продвижение
- Ранжирование сайтов в поисковиках, выдача поисковых систем, поисковый алгоритм, поисковое ранжирование сайта
- Что нужно делать чтобы сайт был на первых местах?
- Копирайтинг - что это?
- Добавить сайты в индекс поисковых систем, регистрация в поисковиках
- Почему сайт не может приносить прибыль сразу?
- Почему следует вкладывать деньги в сайт?
- SEO статья о SEO-копирайтинге (seo copyrighting, seo copywriting). Кто seo копирайтер, что такое seo текст сайта, как помогают seo статьи и зачем нужна оптимизация?
- Как верстать сайт для SEO?
- Контекстная реклама
Выводим случайную статью в UMI CMS с помощью usel в tpl
Задача: Требуется вывести на главной странице одну случайную (random) статью из раздела со статьями. Чтобы при перезагрузке страницы выводились всегда разные статьи. Система управления: UMI.CMS. Шаблонизатор TPL.
Для выполнения этой задачи воспользуемся так называемым протоколом usel ( подробней о нём можно прочитать в документации ), с помощью него можно совершать выборки страниц и объектов из базы данных. Среди прочих параметров описанных в мануале у него есть параметр сортировки sort где можно задать случайную сортировку элементов/страниц.
Приступим к написанию шаблонов usel и tpl для вывода статей. Для начала создадим в папке usels файл с именем: get_random_page.xml и запишем в него:
<?xml version="1.0" encoding="utf-8"?>
<selection>
<target result="pages">
<type module="news" method="item" />
<category depth="1">{1}</category>
</target>
<sort>rand()</sort>
<limit page="0">1</limit>
</selection>
Если в краце описать что он делает, то, сначала мы сообщаем usel, что нам надо вытащить из базы просто страницы (<target result="pages">
), затем говорим что эти страницы должны относится к типу новости и быть простыми страничками ( <type module="news" method="item" />
) есть ещё в модуле новости рубрики или как их можно называть ленты или разделы, суть от этого не меняется, тогда бы мы их искали так: <type module="news" method="rubric" />
. Дальше "говорим" что категория/раздел к которому должны относится страницы должен быть равен {1} с максимальной вложенностью 1 ( depth="1"
). Вместо {1} мы можем написать сюда любой id или просто url раздела (подробней можно почитать тут). Потом идёт <sort>rand()</sort>
который говорит что нужно выводить страницы произвольно и <limit page="0">1</limit>
говорит вывести один элемент/страницу.
Всё, выборка готова. дальше настраиваем вывод.
Чтобы обратится к usel шаблону get_random_page.xml из tpl нам понадобится "макрос" % data doSelection()%, вызывать его будем так: % data doSelection(default, get_random_page,21)% его нужно будет вставить в шаблон самого сайта который находится в папке tpls/content, в моём случае это был tpls/content/index.tpl