1) в своей теме, в файле template.php Вы можете использовать themename_image() (скопировав из файла theme.inc функцию theme_image() ), в модуле будет называться phptemplate_image() ;
2) Вам нужен параметр $attributes Через него можно добавить class.
Возможно 2 варианта -
1) не работает в теме - попробуйте имя phptemplate_image
2) Картинки выводятся не через theme('image ...
тогда пишим js и функция php не нужна
Комментарии
через phptemplate_image()
А можно поподробнее? Это в каком файле и самое главное как прописать?
1) в своей теме, в файле template.php Вы можете использовать themename_image() (скопировав из файла theme.inc функцию theme_image() ), в модуле будет называться phptemplate_image() ;
2) Вам нужен параметр $attributes Через него можно добавить class.
Извиняюсь за дотошность - первое сделал, а как теперь через $attributes добавить class? Что прописать и где?
Ну вот смотрим фрагмент
<?php
...
$attributes = drupal_attributes($attributes);
...
return '<img src="'. check_url($url) .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. (isset($image_attributes) ? $image_attributes : '') . $attributes .' />';
}
...
?>
Чтобы добавить например "my-class"
вставляем в начало скопированной функции:
$attributes['class'] .= ' my-class';
} else {
$attributes['class'] = 'my-class';
}
готово.
Вот что получилось, но результата нет, где я ошибся, подскажите? Добавил эту функцию в template.php:
if(isset($attributes['class'])){
$attributes['class'] .= ' my-class';
} else {
$attributes['class'] = 'my-class';
}
if (!$getsize || (is_file($path) && (list($width, $height, $type, $image_attributes) = [user=getimagesize]getimagesize[/user]($path)))) {
$attributes = drupal_attributes($attributes);
$url = (url($path) == $path) ? $path : (base_path() . $path);
return '<img src="'. check_url($url) .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. (isset($image_attributes) ? $image_attributes : '') . $attributes .' />';
}
}
PS Orange - это название темы.
Возможно 2 варианта -
1) не работает в теме - попробуйте имя phptemplate_image
2) Картинки выводятся не через theme('image ...
тогда пишим js и функция php не нужна
jQuery("img").addClass("my-class");
js сроку можно добавить в js для темы
sas@drupal.org, ему нужен класс к картинкам в нодах, а не ко всем картинкам на сайте.
Я использую для загрузки TinyMCE+IMCE
Только через JS в таком случае можно реализовать данную задумку?
Через js почти точно и почти везде будет работать