Писать на форуме DIAFAN.CMS могут только зарегистрированные пользователи. Войдите или зарегистрируйтесь.
Как вывести статьи в блок?
-
02 апреля 2015 г.
-
Суть в следующем, я создал новую страницу и прикрепил к ней модуль статьи, как вывести в блок статьи из этой страницы, это же ведь не категория статей, а отдельная страница с прикрепленным модулем. За ранее спасибо за ответы.
-
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Я правильно понимаю, Александр предлагает использовать шаблонный тег <insert name="show_block" module="clauses" count="5" site_id="22"> где в значении site_id указывается номер страницы на которой прикреплен модуль «Статьи»?
Такая конструкция выводит только 5 статей. А как сделать чтобы выводились все статьи с категориями и использовался шаблон указанный на странице со статьями?
На картинке я показал что хочу сделать. Есть страница «Все статьи». К ней прикреплен модуль «Статьи» и на странице выводятся все статьи и категории. Модуль использует специально заданный шаблон. Как на главной и на странице статьи вывести содержимое страницы «Статьи»? -
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Андрей, внимательнее и вдумчивее читайте документацию. В вашем вопросе уже содержится ответ:Разумеется, ведь count="5", поставьте count="1000".Цитата<insert name="show_block" module="clauses" count="5" site_id="22">
Такая конструкция выводит только 5 статей.
У модуля "Статьи" 2 шаблонных тега. Вы можете выводить статьи по категориям в различных блоках, используя атрибут cat_id. ID категории можно узнать, например, наведя мышку в админке на нужную категорию (см. скриншот). -
-
-
-
23 января 2016 г.
-
Павел, наверное ТС хотел не привязываться к количеству, а вывести все. count="all" разве не выводит все имеющиеся?
-
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Я думаю, что выведет. Меня немного смутило, что в документации это не отмечено. В опросах есть, в баннерах есть, а в статьях - нет.
Не люблю я документацию, которую нужно додумывать. указали атрибут, укажите диапазон значений, которые он принимает.
Проверил на рабочем сайте, у меня не выводит. Видимо all работает только там, где явно указан в документации.А модуль всё-равно выведет всё, что найдёт и оно будет меньше 5000. Это ж сколько клавиатур надо извести, чтобы 5000 статей написать?ЦитатаПавел, наверное ТС хотел не привязываться к количеству -
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Я наверное непонятно объяснил что именно хочу. У меня есть страница со статьями (см. вторую картинку или вживую на http://diafan.orenburgdesign.ru/services) и мне нужно чтобы все эти статьи без изменений показывались на главной. Поставил тег <insert name="show_block" module="clauses" count="5" site_id="22"> на главную (я знаю что будет если увеличить атрибут count). Но вместо оформленного списка статей и категорий вывелся список последних статей (см. первую картику или вживую на http://diafan.orenburgdesign.ru). Мне нужно чтобы статьи на главной выводились так же как и на странице Статьи.
-
-
-
-
23 января 2016 г.
-
Насчет двух шаблонных тегов у модуля «Статьи». Первый <insert name="show_block" module="clauses"> выводит последние статьи. Он не подходит потому что выводит последние статьи без категорий. Второй <insert name="show_block_rel" module="clauses"> выведет похожие статьи и тем более не подойдет. Если просто к главной прикрепить модуль «Статьи», то он никак не будет взаимодействовать с таким же модулем на странице со статьями.
-
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Не совсем верно. Вариант №1 решения вашей задачи:ЦитатаЕсли просто к главной прикрепить модуль «Статьи», то он никак не будет взаимодействовать с таким же модулем на странице со статьями.
Прикрепить к главной 2-ой модуль Статей, создать в нём категории. На странице первого модуля в настройках статей указать в качестве доп.категории те, которые создали для главной.
Оформление сохраняется. Вас этот вариант устроит? -
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
В моем представлении должен быть шаблонный тег, в котором можно указать id страницы откуда нужно взять результат работы модуля и вывести на любой другой странице. Идея с дополнительными категориями хорошая, но их количество будет увеличиваться пропорционально страницам.
-
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
С вашей задумкой в эту сторону даже смотреть не стоит. Эта идея не расширяемая. На каждую новую страницу получится новая доп.категория.ЦитатаИдея с дополнительными категориями хорошая, но их количество будет увеличиваться пропорционально страницам.
Шаблонный тег по-умолчанию содержиттак что тоже не подойдёт.КодArray
(
[rows] => Array
(
[0] => Array
(
[id]
[name]
[anons]
[site_id][link]
[date]
[tags]
[rating]
)
У меня, к сожалению, уровень компетенции не шибко высокий. Сейчас выходные, в рабочие дни народу побольше, вам наверняка подскажут подходящий вариант решения. У меня идеи есть, но всё упирается в доработку файлов. У меня ощущение, что есть простое решение, просто я о нём не знаю.
Вообще, если учесть, что шаблонный тег выводит всё-таки все статьи (если его попросить), можно от него добиться необходимого результата. Берём вьюху шаблонного тега, переписываем там вывод статей, исходя изclauses/o-pokhodakh/ - это ведь категория. Можно либо пересобрать массив, либо проверку написать в цикле. Задать соответствие фрагментов ссылок с названиями существующих категорий и вывести. Придётся переписать шаблон и оформить также, как шаблон модуля.Код[link] => clauses/o-pokhodakh/ispytano-na-sebe/
Хотя, как мне кажется, стоит поискать/подождать более элегантное решение. -
-
-
-
23 января 2016 г.
-
Цитатамне нужно чтобы все эти статьи без изменений показывались на главной.
Попробуйте сделать так:
Скопировать ваш код из clauses.view.list.php в clauses.view.show_block.php
Я не гарантирую что это сработает (нет времени проверить), но я бегло просмотрел код и вроде как данные ля блока вывода те же самые.
На всякий случай указывайте site_id="" и count="" превышающий общее число статей. -
-
-
-
23 января 2016 г. , редакция: 23 января 2016 г.
-
Из документацииЦитатаАтрибуты:
— cat_id – категории статей, если в настройках модуля отмечено «Использовать категории». Идентификаторы категорий перечисляются через запятую. Можно указать отрицательное значение, тогда будут исключены статьи из указанной категории. Можно указать значение current, тогда будут показаны статьи из по текущей (открытой) категории или из всех категорий, если ни одна категория не открыта. По умолчанию категория не учитывается, выводятся все статьи;
Возможно придется добавить и атрибут cat_id="" с перечислением всех категорий -
-
-
-
24 января 2016 г.
-
ЦитатаСкопировать ваш код из clauses.view.list.php в clauses.view.show_block.php
В clauses.view.list.php и clauses.view.show_block.php идентичный код. Да и clauses.view.list.php не подходит потому что выведет только статьи одной категории. А мне нужно вывода всех категорий поэтому я скопировал код из clauses.view.first_page.php. На главной поставил тег <insert name="show_block" module="clauses" count="100" site_id="22" cat_id="11,12,13">. Ничего не вывел потому что не прошла проверка if (empty($result["rows"]). -
-
-
-
24 января 2016 г. , редакция: 24 января 2016 г.
-
Это первое, что я попробовал - просто перекинуть код шаблонов (исходя из того, что разбираться в них и править - не совсем подходящий для Андрея (andkozinskiy) вариант). Ничего не вышло.ЦитатаСкопировать ваш код из clauses.view.list.php в clauses.view.show_block.php
Видимо, правки в модели вам не избежать, если хотите увидеть именно ту работу шаблонного тега, которую описывали. Можно скорректировать способ, описанный мной выше, разСделать несколько шаблонных тегов (по одному на категорию). Объединить их в один блок через раздел "Страницы > Блоки на сайте" и выводите этот блок одним шаблонным тегом везде, где нужно. Останется только оформить это через CSS. Но тут проблемы нет.ЦитатаЕсли это не поможет то придется править clauses.model.php
До такого еще не дорос. -
-
-
-
24 января 2016 г.
-
А, типа такого кода сделать Блоком на сайте и поставить его в любое место шаблона:Код
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="11">
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="12">
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="13">
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="14">
Еще можно изменить шаблон clauses.view.show_block чтобы для вывода использовались нужные классы и порядок следования блоков. Потом при добавлении новой категории дописать код Блока на сайте. Хорошая идея! Спасибо. -
-
-
-
24 января 2016 г. , редакция: 24 января 2016 г.
-
Можете просто обернуть шаблоныые теги статей в отдельный DIV с IDЦитатаЕще можно изменить шаблон clauses.view.show_block чтобы для вывода использовались нужные классыи сделать отдельную группу CSS-стилей для него с префиксом #clauses_block. Шаблонные блоки выводят нормальную иерархию - весь вывод тега в блоке, название категории в отельном вложенном блоке, статьи - тоже в отдельном вложенном.Код
<DIV id="clauses_block">
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="11">
<insert name="show_block" module="clauses" count="100" site_id="22" cat_id="12">
</DIV> -
-
-
-
24 января 2016 г.
-
Если порядок следования совпадает.
-
-
-
-
24 января 2016 г.
-
Делайте цитату - к чему конкретно относится ваш ответ, а то не всегда понятно. Если имеется ввиду сортировка, то сами категории сортируете руками в блоке. А статьи выводимые сортируете посредством атрибута каждого тега статейКод
<insert name="show_block" module="clauses" sort="date">
-
-
-
-
24 января 2016 г.
-
ЦитатаДелайте цитату - к чему конкретно относится ваш ответ, а то не всегда понятно.
Не будущее запомню. -
-
-
-
24 января 2016 г.
-
Что значит ТС?
-
-
-
-
24 января 2016 г.
-
Да, извиняюсь, ТС получился я)) Хотя имел ввиду Андрея, просто не увидел, что это продолжение темы, а подумал, что новая тема с новым вопросом)))
-
-
-
-
24 января 2016 г. , редакция: 28 января 2016 г.
-
Про такие ситуации говорят: "Я - не я и хата не моя!"
Мне всё-таки интересно, что там с count="all"... Я на 6.0.0.5 попробовал - у меня не получилось.
Андрей утверждает, что оно работаетВы предположили, что оно работаетЦитатаАндрей (andkozinskiy) Вчера, 22:19
count="all" выведет все статьи.Итого имеем неопределённость в 3-х вариантах: да/нет/наверное. Кто-то ведь прочтёт, может даже по поиску выйдет на это обсуждение. Надо этот момент прояснить окончательно.Цитата[Партнер-разработчик] Сергей (darkheart) Вчера, 21:47
Павел, наверное ТС хотел не привязываться к количеству, а вывести все. count="all" разве не выводит все имеющиеся? -
-
-
-
24 января 2016 г. , редакция: 24 января 2016 г.
-
можем на дефолте попробовать. Сейчас скачаю 6,0,0,6 и отпишусь. Андрей, на какой версии CMS у вас работает count="all" ?
-
-
-
-
28 января 2016 г.
-
У меня стоит 6.0.0.4. Когда экспериментировал со статьями где-то получалось, где-то нет. Сейчас <insert name="show_block" module="clauses" count="all" site_id="22"> ничего не выводит.
-
-
-
-
28 января 2016 г.
-
Осталось подождать результат Сергея, но что-то мне подсказывает, что count="all" не заработает и у него.
-
-
-
-
28 января 2016 г. , редакция: 28 января 2016 г.
-
Уважаемые коллеги, Вам необходимо просто проверить shop.model.php на предмет реакции функции на параметр count="all". Вот и все. Если такой реакции у функции нет, то также просто ее добавить. Да и незабыть про shop.php
-
-
-
-
28 января 2016 г.
-
Виталий, это всё понятно. Вы конечно же имели в виду clauses.model.php и clauses.php. Можно и функцию написать и неопределённые атрибуты использовать. Это не сложно. Я больше переживаю за тех, кто не увидит разницы между shop.model.php и clauses.model.php в наших сообщениях.
-
-
-
-
29 января 2016 г.
-
Прошу извинения за поздний ответ. Срочно нужно было улететь в Москву. Да проверил на последеней. Уже на 6.0.0.7 - ничего не выводит
-
-
-
Новости
-
18 июня
-
В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
-
24 апреля
-
В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
-
12 января
-
После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке.
Блоги
-
24.04.2024
-
Выпустили новую сборку DIAFAN.CMS 7.1.4.
Блоги
-
12.01.2024
-
В данном руководстве познакомим вас с панелью управления DIAFAN.CMS