Вход • Регистрация

Шаблон clauses.view.show_block используется на всех страницах

  • 19 января 2016 г.
  • Здравствуйте. Пытаюсь сделать статьи с категориями. На странице написал шаблонный тег <insert name="show_block" module="clauses" count="50">. Проблема в том, что программа везде использует один и тот же шаблон clauses.view.show_block. В результате на странице, где должен быть список статей и категорий, показывается только список всех статей. На странице категории тоже список всех статей. На странице со статьей снова показывается список всех статей. В настройках модуля «Статьи» стоят стандартные значения шаблонов.
    • 19 января 2016 г.
    • Андрей, а где вы написали
      Цитата
      На странице написал шаблонный тег <insert name="show_block" module="clauses" count="50">.

      Этот тег как раз и выводит список всех статей, точнее говоря 50 шт статей в вашем случае.
      • 19 января 2016 г.
      • Я понял, что <insert name="show_block" module="clauses" count="50"> выводит последние статьи. Другой тег, описанный в документации, <insert name="show_block_rel" module="clauses"> выводит похожие статьи. А какой тег использовать чтобы вывести на первой странице категории и список статей, а на странице статьи статью?

        Я пробовал поставить <insert name="show_body">. Работает как нужно, но выводит заголовок H1, а мне не нужно его выводить. Еще я хочу указать свой шаблон, а как его указать в <insert name="show_body"> не понял.
        • 19 января 2016 г.
        • Вы очень запутанно все объясняете.

          Если вы хотите чтобы у вас не было заголовка H1вы можете его выключить в дополнительных настройках страницы или убрать из <insert name="show_body"> /themes/functions/show_body.php
          Код
          if ($name)
          {
          echo '<h1>'.$name.'</h1>';
          }


          Можете вообще не использовать <insert name="show_body">, а вместо него использовать
          <insert name="show_h1"> // Выводит h1
          <insert name="show_text"> // Выводит контент страницы
          <insert name="show_module"> // Выводит контент модуля

          <insert name="show_body"> - включает в себя все 3 этих тега.
        • 19 января 2016 г.
        • Андрей, тег <insert name="show_block" module "clauses" ...> используется для вывода определенного количества статей на любой другой странице, не имеющей отношения к странице Статьи.
          Для того, чтобы корректно работал сам модуль Статьи или любой другой, вам необходимо создать страницу сайта и прикрепить к ней нужный модуль. Тогда по адресу этой страницы будет открываться страница по шаблону имямодуля.view.first_page (если подключены категории или имямодуля.view.list, если категории не подключены. Поэтому и править необходимо именно эти шаблоны.
          Чтобы не было заголовка h1 надо просто выводить содержимое страницы другим тегом: show_text - он выводит только содержимое страницы, без заголовка h1.
          Читайте документацию
        • 19 января 2016 г.
        • Если вам нужно изменить внешний вид статей, то идем по пути:
          Цитата
          /modules/clauses/views


          И там правим:
          clauses.view.id.php // Шаблон страницы статьи
          clauses.view.list.php // Шаблон списка статей
  • 19 января 2016 г.
  • Я сделал страницу в административной части, прикрепил модуль статей и сделал категории со статьями. Теперь добавил тег <insert name="show_module">. Все выводится как нужно. Спасибо за подсказку. Но как теперь указать свой шаблон чтобы не переписывать стандартный? Пробовал добавить атрибут template: <insert name="show_module" template="services"> чтобы он использовал мой шаблон clauses.view.first_page_services.php, но он продолжает использовать стандартный clauses.view.first_page.php.
    • 19 января 2016 г.
    • Это все описано в:
      Код
      /modules/clauses/clauses.model.php


      Правьте стандартный clauses.view.first_page.php если не знаете php
      • 19 января 2016 г.
      • Дело в том, что у меня будет два типа статей: статьи про услуги и остальные. Поэтому для каждого типа нужно использовать разное оформление (расположение блоков, стили), а соответственно разные шаблоны. Вот для этого и хочу сделать два отдельных шаблона. Если поправлю стандартный, то как выведу статьи с другим оформлением?

        Смотрел /modules/clauses/clauses.model.php. Испугался.
        • 19 января 2016 г. , редакция: 19 января 2016 г.
        • мой ответ ниже, плюс, совет)
          прикрепите модуль статьи к двум разным страницам, тогда сможете для каждой из них задать свои шаблоны через настройки модуля.
          Ну я всегда так делаю)

          PS. отдельные страницы нужны только чтобы задать различные шаблоны страницы site.php, чтобы для каждой категории статьи сделать свой шаблон вывода достаточно его сделать и указать в допнастройках: http://prntscr.com/9s536j
          • 19 января 2016 г.
          • Я пробовал указать свой шаблон в настройках модуля, но он использует стандартный. Тогда попробую сделать две страницы. Может так получится.
            • 19 января 2016 г. , редакция: 19 января 2016 г.
            • СМS использует тот шаблон, который указан в настройках.
              Значит что-то вы не так делали

              PS
              настройки можно задать как в настройках самого модуля, так и на странице категории/статьи в Дополнительных настройках.
              • 20 января 2016 г.
              • Все снес и попробовал заново указать шаблоны. Все получилось. Ниже опишу как делал.
    • 19 января 2016 г.
    • правьте стандартный clauses.view.first_page.php и делайте кастомизацию и все ваши исправленные файлы перенесутся в отдельную папку custom/имяшаблона.
      • 19 января 2016 г.
      • Вы предлагаете сгенерировать тему?

        Сделал тему и все стили и картинки слетели. Удалил ее и получил стандартный сайт. Буду восстанавливать изменения. )
        • 19 января 2016 г.

        • пути надо было проверить к картинкам и стилям.
          • 20 января 2016 г.
          • Сегодня сгенерировал тему, но не понял зачем это нужно было делать. Программа просто перенесла все файлы в папку custom и восстановила исходные файлы.
            • 20 января 2016 г.
            • это надо делать для того чтобы потом обновляться нормально. Свои файлики в папке кастом править.
              • 20 января 2016 г. , редакция: 23 января 2016 г.
              • Цитата
                это надо делать для того чтобы потом обновляться нормально.
                Я бы немного скорректировал. Это нужно чтобы не потерять свои изменения в файлах, которые могут быть заменены (затёрты) более новыми их версиями при обновлении.

                Ведь если в файл внесли доработки или закрыли уязвимость (вышло обновление) и в этот же файл вносились правки пользователем (до обновления), то файл будет помещён в custom при создании темы, а система обновит файл в родной директории. Но файл в custom останется нетронутым (не обновлённым).

                При этом файл в custom будет главным и изменения обновления системы как бы не коснутся, хотя и будут в ней номинально присутствовать. Так что custom в нектором роде сказывается на обновлении системы и файлы внутри custom нужно обновлять вручную.
    • 19 января 2016 г.
    • Цитата
      <insert name="show_module" template="services">

      Хмммм. А в документации у тега show_module разве есть параметр template?
  • 19 января 2016 г.
  • Мне нравится логика модуля «Меню». Я поставил тег <insert name="show_block" module="menu" template="topmenu"> где указал свой шаблон topmenu. Если понадобится вывести еще одно меню, то скопирую стандартный шаблон, изменю и поставлю его имя в атрибут template. В статьях хочется увидеть такой же принцип.
    • 19 января 2016 г.
    • Это есть в настройках админ панели.
      Многие пользователи Диафана любят делать изменения в админке и не лазить в код.
  • 19 января 2016 г. , редакция: 19 января 2016 г.
  • Цитата
    Пытаюсь сделать статьи с категориями. На странице написал шаблонный тег
    Зачем выводить что-то шаблонным тегом, если у вас модуль без проблем цепляется к странице и делайте дальше что угодно без всяких тегов.
    Цитата
    Дело в том, что у меня будет два типа статей: статьи про услуги и остальные. Поэтому для каждого типа нужно использовать разное оформление
    Нет никакой проблемы. Создаёте страницу, прикрепляете к ней модуль. Заходите. Создаёте категории и внутри них уже пишете свои статьи. Каждой категории можете в админке ("доп.параметры") указать любой шаблон страницы. Шаблоны модуля статей лежат в modules/clauses/views. Копируете основной шаблон, переименовываете (дописываете в конец имени _shablon). Не забываете внутри файла поменять имя шаблона, чтобы в админке не путаться. Всё. Дело двух минут. См. скриншот.
    • 20 января 2016 г.
    • Цитата
      Зачем выводить что-то шаблонным тегом, если у вас модуль без проблем цепляется к странице и делайте дальше что угодно без всяких тегов.

      Если никаких тегов не указывать, то статьи не будут выводиться. Нужен как минимум <insert name="show_module">.

      Цитата
      Нет никакой проблемы. Создаёте страницу, прикрепляете к ней модуль. Заходите. Создаёте категории и внутри них уже пишете свои статьи. Каждой категории можете в админке ("доп.параметры") указать любой шаблон страницы. Шаблоны модуля статей лежат в modules/clauses/views. Копируете основной шаблон, переименовываете (дописываете в конец имени _shablon). Не забываете внутри файла поменять имя шаблона, чтобы в админке не путаться. Всё. Дело двух минут. См. скриншот.

      По вашему методу можно установить различные шаблоны для страницы с текстом статьи и шаблон выводящий список статей одной категории. Чтобы поставить шаблон для первой страницы модуля нужно действовать по другом. Ниже опишу.
      • 20 января 2016 г.
      • Цитата
        Если никаких тегов не указывать, то статьи не будут выводиться. Нужен как минимум <insert name="show_module">.
        Если пустой шаблон сделать свой совсем без тегов, то да. Но по-умолчанию используется дефолтный основной шаблон сайта site.php, а там всегда есть тег show_body, который выводит заголовок, контент страницы и результат работы модуля, если таковой имеется.
        Цитата
        По вашему методу можно установить различные шаблоны для страницы с текстом статьи и шаблон выводящий список
        Я просто указал где искать и что. В настройках можно все три шаблона в принципе заменить на свои.
  • 20 января 2016 г.
  • Сегодня полдня мучился и понял как все правильно сделать.
    1 Сделал две страницы. Первая для статей про услуги, вторая для других статей.
    2 Прикрепил к каждой странице свой модуль статей.
    3 В каждом модуле сделал свои подкатегории и статьи.
    4 Потом нажал на кнопку «Настройки модуля». Из выпадающего списка «Все» выбрал Статьи про услуги и задал ему нужный Шаблон для первой страницы модуля (если подключены категории). Сохранил и выбрал Другие статьи. Так же задал этой странице свой шаблон.

    Благодарю Инну и Павла Любимова что навели на правильные мысли.
    • 20 января 2016 г. , редакция: 20 января 2016 г.
    • Цитата
      1 Сделал две страницы. Первая для статей про услуги, вторая для других статей.
      2 Прикрепил к каждой странице свой модуль статей.
      3 В каждом модуле сделал свои подкатегории и статьи.
      Если у вас не слишком сложная структура предполагается и нет необходимости головную страницу модуля оформлять в двух вариантах, то можно обойтись и одной страницей с модулем, двумя категориями с разным оформлением и статьи в них писать.
      Цитата
      Благодарю Инну и Павла Любимова что навели на правильные мысли.
      • 21 января 2016 г.
      • Цитата
        Если у вас не слишком сложная структура предполагается и нет необходимости головную страницу модуля оформлять в двух вариантах, то можно обойтись и одной страницей с модулем, двумя категориями с разным оформлением и статьи в них писать.

        Я пробовал так делать когда экспериментировал с шаблонами. Да, так будет проще если все категории и статьи будут на одной странице.

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке.