h1 заголовок для сайта

Подскажите, как прописать заголовок h1 через параметр?

Имеется:

<h1>{$page.name|escape}</h1>

Пробую так:

<h1>{if !empty($page.params.h1)}{$page.params.h1|escape}{else}{$page.name|escape}{/if}</h1>

Прописываю в категории сайта:

h1=Название

Но ничего не меняется. В чем ошибка?

2 ответа

  • 1
    replicant 9 апреля 2018 14:33 #

    Грубо говоря, если вы прописали у какой-то страницы h1=Название, то в шаблоне это будет {$page.h1}, а не {$page.params.h1}.

    Если же вы прописываете это в настройках какой-то категории, то выводить надо так {$category.params.h1}.

    Какое отношение страницы имеют к параметрам категорий из вопроса не очень понятно.

    • +1
      realteam realteam 9 апреля 2018 14:36 #

      Такой вариант я тоже пробовал:

      <h1>{if !empty($page.h1)}{$page.h1|escape}{else}{$page.name|escape}{/if}</h1>Не работает.

      Стоит заметить, что речь идет про приложение "сайт", а не "магазин"

      • +1
        replicant replicant 9 апреля 2018 14:49 #

        Сайт или магазин в принципе без разницы, если речь идет о параметрах страниц. Параметры прописываются в настройках конкретной страницы и обращаться к этим параметрам надо в шаблоне page.html.

        Изначально из вопроса не понятно где именно вы прописали параметр h1=Название. В категории чего именно?

        • +1
          realteam realteam 9 апреля 2018 14:55 #

          Так и делаю, вывожу код в шаблоне page.html, но не срабатывает. Попробовал еще вот так:

          <h1>{if !empty($category.params.h1)}{$category.params.h1|escape}{else}{$page.name|escape}{/if}</h1>
          <h1>{if !empty($category.params.h1)}{$category.params.h1|escape}{else}{$category.name|escape}{/if}</h1>
          

          Тоже не реагирует.

          • +1
            replicant replicant 9 апреля 2018 15:03 #

            Вы прикалываетесь что-ли? Ок. Начнем заново с наводящего вопроса.

            Где именно в точности вами была прописана строка h1=Название?

            • +1
              realteam realteam 9 апреля 2018 16:03 #

              В поле "Дополнительные параметры страницы" на созданной страницы сайта.

              • +1
                replicant replicant 9 апреля 2018 16:10 #

                На сайте в шаблоне page.html напишите где-нибудь {$page.h1} и посмотрите, что там выведется на экран при открытии именно той страницы, где вами были прописаны дополнительные параметры.

                • +1
                  realteam realteam 9 апреля 2018 16:13 #

                  Все дошло до меня, спасибо.

                  Ниже рабочий вариант:

                  <h1>{if !empty($page.h1)}{$page.h1|escape}{else}{$page.name|escape}{/if}</h1
                • +1
                  Владимир Коптелов Владимир Коптелов 6 сентября 2018 19:57 #

                  Добрый день.

                  Версия 7.1.3.64, page.html вставляю этот код:<font face="StemText-Bold, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif"></font>

                  <h1 class="page_name">{$page.h1}</h1>

                  Хочу вывести заголовок страницы - ничего не выводит.

                  Подскажите пожалуйста - как вывести заголовок страницы?

                  У самой страницы заголовок прописан.

                  Спасибо!

  • 1
    Алексей Соловьев 4 сентября 2019 13:14 #

    Здравствуйте.

    При проведении технического анализа сайта обнаружил:

    В приложении "Блог" не предусмотрена возможность заполнения и редактирования заголовка H1. Вот уже пару дней копаюсь в коде, не могу найти где прописать эту возможность.

    • +1
      replicant replicant 4 сентября 2019 16:06 #

      Возможность вывода H1 заголовка надо искать и закладывать в шаблон темы дизайна. Само приложение Блог тут не при делах совсем-совсем, потому что весь вывод оформляется шаблонными конструкциями html/css. Всё на уровне базовых знаний HTML делается за полминуты исключительно в файлах шаблонов.

      Приведу пример. Берем тему Дефолт и шаблон отдельной записи блога post.html. Открываем и видим в начале примерно такой код

      {strip}<div itemscope itemtype="http://schema.org/BlogPosting">
          <article class="post" role="main" id="post-{$post.id}">
              <h1>
                  <span itemprop="name">{$post.title}</span>
                  {* @event prepare_posts_frontend.%plugin_id%.post_title *}
                  {if !empty($post.plugins.post_title)}
                      {foreach $post.plugins.post_title as $plugin => $output}{$output}{/foreach}
                  {/if}
              </h1>

      <H1> в коде явно есть и на страницах сайта выводится заголовок поста в h1. Всё хорошо.

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

      Аналогично делается везде, где вам нужно что-то неподходящее превратить в H1. Заменяете ненужный html-тег на нужный вам. Хотя в Блоге едва ли кроме шаблона post.html и, возможно, page.html оправдано делать подобное где-то ещё.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите