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

Как проще исправить h1 в некоторых разделах

  • 12 марта 2014 г. , редакция: 12 марта 2014 г.
  • Добрый день, знатоки!

    Подскажите, пожалуйста, как не используя кастомный шаблон с конструкцией вида
    <h1><insert name="show_h1"></h1>
    сделать в некоторых разделах свой принцип построения заголовка h1.

    Например с помощью переопределения стандартной функции function show_h1:
    if (текущая страница принадлежит разделу) {
    h1 = 'Крутой заголовок ' . h1;
    }

    А может быть какой-то другой метод посоветовать можете? Спасибо.
    • 12 марта 2014 г.
    • Вариант прикрепления к разделу отдельного шаблона и атрибутом к <body> прописать уникальный идентификатор, подходит? Допустим:
      <body id="page2"> и назначить стиль для <h1> на этой странице как пожелаете.
    • 12 марта 2014 г. , редакция: 12 марта 2014 г.
    • Если нужно оформление с привязкой к модулям, например, можно через function.php:
      Код
      public function h1_style()
      {
      if ($this->diafan->titlemodule AND $this->diafan->module == "faq")
      {
      echo "<STYLE>h1 {color:white;}</STYLE>";
      }
      }
      А потом перед </head> в шаблоне поставить
      Код
      <insert name="h1_style">
      И всё. Без лишних шаблонов. Или вам надо содержание заголовка менять, а не оформление?
      • 13 марта 2014 г.
      • Да, именно содержание.
        Я так понимаю, что подобный кусок:
        if ($this->diafan->titlemodule AND $this->diafan->module == "faq")
        можно добавить в стандартную функцию show_h1 — это и будет выход из ситуации.
        • 13 марта 2014 г.
        • Тогда Н1 будет выходить только у вопрос-ответов
          • 15 марта 2014 г. , редакция: 15 марта 2014 г.
          • Как пример, нужно, чтобы на странице просмотра фотографии заголовок формировался:
            "Фотография " . $name
            чтобы не набирать в админке каждый раз "Фотография ..."

            Что-то типа такого (function.php / show_h1):
            Код

            if ($this->diafan->titlemodule AND $this->diafan->module == "photo") {
            $name = 'Фотография ' . $name;
            }

            но мне нужно, чтобы этот код выполнялся только на странице просмотра фотографии (не в категориях/альбомах)!

            Как проверить, что мы находимся именно на странице просмотра отдельной фотографии?
            • 19 марта 2014 г. , редакция: 19 марта 2014 г.
            • Мужчины, подскажите, пожалуйста, как все же проверить где мы находимся — узнать текущий адрес страницы или название элемента view, который отвечает за ее вывод?

              P.S. Обещаю купить еще одну лицензию!
  • 13 марта 2014 г.
  • Погодите, а зачем функции переопределять?
    Задачи-то какие? Чтобы на некоторых страницах в Н1 был какой-то особенный текст?
    Самая первая возможность - это галка "Не копировать заголовок автоматически с Н1", который затем можно прямо в визуальнике вписать в нужном виде.

    Если версткка не позволяет, то есть в "Дополнительно" тег "Заголовок title", который отменяет все назначения заголовка и выводит его как вписано в это поле. Правда для title только.
    Поэтому можно забацать в function.php
    Код
    public function h1_style()
    {
    if ($this->diafan->titlemodule_meta)
    {
    echo '<h1>'.$this->diafan->titlemodule_meta.'</h1>';
    return true;
    }
    }

    как говорит Павел и эта функция будет выводить H1 как он записан в поле тайтл в дополнительном.
    Если нужно, чтобы тайтл и Н1 отличались, то можно еще одно поле добавить

Новости

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

Форум