Нормальный заголовок H1

White_S

Постоялец
Регистрация
27 Май 2009
Сообщения
479
Реакции
100
Друзья, скажу сразу что не слишком хорошо знаю drupal, cen проблемы в том что на сайте есть структура с категориями и конкретными позициями, заголовок на страницах выводится
Код:
<h1 id="page-title"><?php print $title ?></h1>
на страницах категории он берется
dfb9f46895adc423a379c02c031cafbe.png

а на страницах конкретной позиции
a866889e52bcdd425a89e7b243f4b216.png

из поля артикул, да еще и прячется на странице через дисплей нон кодом в шаблоне данного типа страниц. Скажите, может быть есть способ победить это и каким-то образом вывести тут нормальный редактируемый заголовок? Может есть компонент такой или инструкция?
 

VVS

Постоялец
Регистрация
6 Апр 2006
Сообщения
95
Реакции
15
Не совсем ясна суть, что победить? Заголовок может переопределяться модулем в настройках типа ноды, гляньте там.
 

White_S

Постоялец
Регистрация
27 Май 2009
Сообщения
479
Реакции
100
Не совсем ясна суть, что победить? Заголовок может переопределяться модулем в настройках типа ноды, гляньте там.
в общем тогда я создал для нода новое поле field_h1 и для страницы типа node--flat.tpl.php сделал так:
Код:
 <!--object head -->
      <?php if($field_h1): ?>
  <h1 style="font-size: 22px; color: #111; font-weight: bold;"><?php print render($content['field_h1']); ?></h1>
      <?php else: ?>
 

      <div id="objHead">
      <div class="flatTitle"><?php print render($content['field_flat_rooms']); ?></div>
      <div id="kva">&nbsp;квартира по адресу&nbsp;г.</div>
      <div id="flatCity"><?php print render($content['field_city']); ?></div>
      <div id="coma">,&nbsp;</div>
      <div id="flatAdr"><?php print render($content['field_address']); ?></div>
      <?php endif; ?>
      <!--/object head -->
т.е. если поле field_h1 заполнено то в заголовок выводится оно, ели не заполнено то результат работы кода ниже, это понятно.
Но у нас еще есть заголовок первого уровня который создается на уровне выше (page.tpl.php), там такой код сделал:
Код:
<?php if($field_h1): ?>
      <?php else: ?>
  <h1 id="page-title"><?php print $title ?></h1>
      <?php endif; ?>
т.е. когда есть поле заголовка типа ничего не выводить, а когда нет то принт тайтл, в принципе такой костыль работает, но вот только в админке показывает предупреждение то переменная field_h1 не определена для page.tpl.php.
 

VVS

Постоялец
Регистрация
6 Апр 2006
Сообщения
95
Реакции
15
Правильный notice говорит, вы откуда берёте значение поля? Его надо получать из $node.
 

AlexPop

Постоялец
Регистрация
30 Апр 2016
Сообщения
83
Реакции
57
определи $field_h1, потом
PHP:
<?php if(isset($field_h1)): ?>
<h1 id="page-title"><?php print $field_h1; ?></h1>
<?php else: ?>
  <h1 id="page-title"><?php print $title; ?></h1>
<?php endif; ?>
 

Suvan

Писатель
Регистрация
26 Окт 2013
Сообщения
4
Реакции
1
Можно и так:
<?php if(isset($node->field_h1) : ?>
<h1 id="page-title"><?php print $node->field_h1[LANGUAGE_NONE]['value']; ?></h1>
<?php else: ?>
<h1 id="page-title"><?php print $title; ?></h1>
<?php endif; ?>
 

f483796

Постоялец
Регистрация
24 Фев 2015
Сообщения
49
Реакции
2
Я так понял это какой-то разраб закостылил заголовок в отдельное поле?
 

AlexPop

Постоялец
Регистрация
30 Апр 2016
Сообщения
83
Реакции
57
все от темы зависит
 
Сверху