HTML в заголовке ноды

Главные вкладки

Аватар пользователя scr1pt scr1pt 27 января 2012 в 1:31

Подскажите как сделать так, чтобы HTML теги обрабатывались друпалом в заголовке?
Нужно это для того, чтобы с помощью выводилась подсказка при наведении на заголовок.

Комментарии

Аватар пользователя scr1pt scr1pt 27 января 2012 в 2:18

ser_house wrote:
include html in node title drupal 7

видел, но в моем случае нужно вводить что-то типа <p class="beautytips" title="текст подсказки">заголовок</p>, а там я так понял решение только для случаев типа <p>заголовок</p>
поправьте, если неправильно понял

Аватар пользователя ser_house ser_house 27 января 2012 в 10:15

В THEME_preprocess_node что-нибудь вроде:

<?php
  
if ($variables['view_mode'] == 'teaser') {
        
$variables['title_attributes_array']['class'][] = 'beautytips';
        
$variables['title_attributes_array']['title'] = t('tips for title of node');
  }
?>

Будет показываться в заголовке анонса.

Аватар пользователя scr1pt scr1pt 29 января 2012 в 21:55

ser_house wrote:
В THEME_preprocess_node что-нибудь вроде:

<?php
  
if ($variables['view_mode'] == 'teaser') {
        
$variables['title_attributes_array']['class'][] = 'beautytips';
        
$variables['title_attributes_array']['title'] = t('tips for title of node');
  }
?>

Будет показываться в заголовке анонса.


а подробнее можно?

Аватар пользователя ser_house ser_house 29 января 2012 в 22:19

В папке темы в файле template.php в функцию моя_темя_preprocess_node(&$variables) надо добавить этот код (без <?php и ?>). Если такой функции нет - добавить.

Если подсказка нужна не только в анонсе, то условие if ($variables['view_mode'] == 'teaser') лишнее.

<?php
$variables
['title_attributes_array']['class'][] = 'beautytips'; - добавляет класс к заголовку ноды
?>
<?php
$variables
['title_attributes_array']['title'] = 'моя подсказка'; - добавляет текст подсказки
//еще вариант:
$variables['title_attributes_array']['title'] = 'Не смотрите полное содержимое материала ' $variables['node']->title;
?>
Аватар пользователя scr1pt scr1pt 29 января 2012 в 22:22

ser_house wrote:
В папке темы в файле template.php в функцию моя_темя_preprocess_node(&$variables) надо добавить этот код (без <?php и ?>). Если такой функции нет - добавить.

Если подсказка нужна не только в анонсе, то условие if ($variables['view_mode'] == 'teaser') лишнее.

<?php
$variables
['title_attributes_array']['class'][] = 'beautytips'; - добавляет класс к заголовку ноды
?>
<?php
$variables
['title_attributes_array']['title'] = 'моя подсказка'; - добавляет текст подсказки
//еще вариант:
$variables['title_attributes_array']['title'] = 'Не смотрите полное содержимое материала ' $variables['node']->title;
?>


спасибо, а как в таком случае вводить заголовок?

Аватар пользователя ser_house ser_house 29 января 2012 в 23:01

Заголовок-то Вы вводите в форме добавления. В этом коде заголовок это $variables['node']->title - то, что было введено в форме добавления.

Аватар пользователя drupby drupby 30 января 2012 в 0:37

сделайте дополнительное текстовое поле , скройте его и потом при наведении на тайтл BeautyTips будет его показывать - почитайте для начала докуменацию к BeautyTips , там описано как это делается.