2012-01-04 2 views
0

Я пытаюсь уменьшить размер моих просмотров. Они отображают изображения в виде галереи и вставляют их в классы imagecache. Мне удалось удалить большую часть нежелательного кода, но две части остаются проблематичными. Вот код (часть вида только один снимок в строке в данном случае):Как удалить классы imagecache в представлении в Drupal

<tr> 
<td> 
<div class=""> 

<div class="views-field-field-FIELDNAME"> 
<span class="field-content"><div class=""> 
<a href="/address"><img width="XYZ" height="XYZ" class="imagecache imagecache-XYZ imagecache-default imagecache-XYZ_default" title="TITLE TEXT" alt="ALT TEXT" src="XYZ.jpg"></a></div></span> 
</div> 

<div class="views-field-field-FIELDNAME"> 
<span class="field-content"> 
<div class=""> 
<a href="/address">TITLE</a></div></span> 
</div> 
</div> 
</td> 
</tr> 

То, что я хочу, чтобы удалить это часть

<div class=""> 

, потому что он пуст и ненужным.

Второе эту мне нужно удалить, являются «класс» классы:

class="imagecache imagecache-XYZ imagecache-default imagecache-XYZ_default" 

Есть слишком много из них, и я не нужен. Если это невозможно, то я бы хотел оставить только один, а не 4 из них.

Я предполагаю, что это должно быть разрешено внутри content-field -... tpl.php, но я не вижу там никакого кода, который можно удалить, чтобы удалить эти части.

ответ

1

Чтобы удалить классы Imagecache:

Вы можете найти функцию theme_imagecache_formatter_default() в местах/все/модули/ImageCache/imagecache.module.

Вы можете переопределить это, указав свою собственную функцию, опустив определения «$ class».

Возможно, вам понадобится thread on Drupal.org about overriding theme_iamgecache_formatter_default.

Что касается divs с пустыми классами: используете ли вы какие-либо переопределения шаблонов представлений? Я не понимаю, что пустое

<div class=""> 

код на своих сайтах, что заставляет меня задаться вопросом, если вы изменяете или переопределение любой из шаблонов Views. Если это так, вы можете попробовать отменить эти изменения, чтобы увидеть, исчезли ли div-классы пустого класса.

+0

@ KristiWatcher Спасибо за ваш ответ! Чтобы переопределить часть с помощью «класса», я искал функцию «функция THEME_imagecache_formatter_PRESETNAME_linked» и удалил строку 696 ($ class = «imagecache ...). Эта функция overriden относится к template.php. Что касается классов div, я использую переопределяющий шаблон для этого но он идентичен шаблону по умолчанию в этой части (я добавляю только текст под изображением). У меня даже нет никаких дополнительных классов div, так что меня действительно путают. – take2