2010-06-15 1 views

ответ

0

Это зависит от того, как вы выполняете поиск.

Если вы используете представления для создания поиска, вы можете сами решить, что показывать.

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

Edit:
Для модуля ядра поиска Drupal вам нужно перезаписать поиск-result.tpl.php в вашей теме, чтобы изменить как распечатываются результаты поиска. Здесь вы можете добавить или удалить информацию. Если вам нужно больше переменных, вы можете создать их для использования в шаблоне в process hook. Это базовая тематика Drupal, проверьте handbook.

+0

Спасибо! Нет проблем с Views, но не может найти решение для основного модуля поиска Drupal. Может быть, у вас есть пример? – romandor

2

Вам необходимо переопределить поиск-результат-tpl.php в своей теме. Скопируйте его из модулей/поиска в каталог тем, очистите кэш тем, и вы настроены. Вы увидите, что имеется массив, доступный для файла темы с именем «result», который содержит кучу данных, включая объект узла. Таким образом, ваш файл выглядит примерно так:

<dt class="title"> 
    <a href="<?php print $url; ?>"><?php print $title; ?></a> 
</dt> 
<dd> 
<?php 
// Here is the change 
print $result['node']->field_name_of_cck_field['view']; 
?> 
    <?php if ($snippet) : ?> 
    <p class="search-snippet"><?php print $snippet; ?></p> 
    <?php endif; ?> 
    <?php if ($info) : ?> 
    <p class="search-info"><?php print $info; ?></p> 
    <?php endif; ?> 
</dd> 

Удачи вам!

+0

Это может быть просто $ node->, а не $ result ['node']. У меня нет установленной установки для проверки. – cam8001

+0

['view'] не работает, вместо этого я использую ['значение']. – romandor

+0

Значение представляет собой необработанное поле ввода пользователя, поэтому потенциально это может содержать небезопасные данные. Просмотр обрабатывается и гарантируется безопасным. – cam8001

1

1 Копия поиск-result.tpl.php файл из модулей/поиска в папке темы

2 Для CCK текстового поля добавить:

<?php if ($result['node']->field_name[0]['value']): ?> 
    <h4><?php print($result['node']->field_name[0]['value']); ?></h4> 
<?php endif; ?> 

3 Для ImageField с ImageCache:

<?php if ($result['node']->field_logo[0]['filename']): ?> 
    <img src="/sites/default/files/imagecache/path_to_file/<?php print $result['node']->field_logo[0]['filename']; ?>" /> 
<?php endif; ?> 

4 CSS стиль следующий.

Thanx для cam8001 & googletorp!