Если вы используете модуль Image Attach для прикрепления изображений к материалам, было бы полезным снабдить прикрепляемое изображение подписью, т.к. не каждый посетитель догадается навести на картинку мышь с тем, чтобы почитать подпись. Исправим это – добавим подпись к изображению. Тем самым улучшим жизнь пользователей, а кроме того, поможем сайту повысить картиночный seo-skill
Все до безобразия просто. Откройте файл template.php вашей темы офомления и вставьте туда функцию следующего содержания, заменив «THEME» на название вашей темы:
<?php
function THEME_image_attach_body($node) {
$img_size = variable_get('image_attach_size_body_'. $node->type, IMAGE_THUMBNAIL);
if (
$img_size != IMAGE_ATTACH_HIDDEN) {
drupal_add_css(drupal_get_path('module', 'image_attach') .'/image_attach.css');
$image = node_load($node->iid);
if (!node_access('view', $image)) {
// If the image is restricted, don't show it as an attachment.
return NULL;
}
$info = image_get_info(file_create_path($image->images[$img_size]));
$output = '<div style="width: '. $info['width'] .'px" class="image-attach-body">';
$output .= l(image_display($image, $img_size), "node/$node->iid", array('html' => TRUE));
$output .= $image->teaser."\n";
$output .= '</div>'."\n";
return
$output;
}
}?>
Функция начисто выдрана из модуля, добавлена лишь строка $output .= $image->teaser."\n";, так что о производительности можете не беспокоиться – она не пострадает.
Если вы не делаете подписей к фото, а вводите лишь заголовок, замените teaser на title.
Сохраните изменения, сбросьте кеш (/admin/settings/performance) и любуйтесь результатом!
Темизация производится традиционно – путем правки css-файлов.
зы. Протестируйте, пожалуйста, в 5-рке.
Комментарии
Полезно.
По моему надо собрать все такие фокусы в подборку по темизации.
есть же модуль image_caption
делает подпись из альта, обрамляет дивами, прекрасно темизируется
Не люблю модули