Это было простое, но эффективное решение с использованием cck и представлений:
Создайте тип контента «Изображения в шапке». Добавьте поля для изображений, URL-адреса и списка выбора «Показать, когда».
Изображения Я использовал загрузку изображений с модулем обрезки, ограниченным до 400 пикселей в ширину и 100 пикселей в высоту, чтобы поместиться в блок заголовка.
«Показать, когда» выберите список, который я заполнил летом, зимой, осенью, Хэллоуином, Рождеством, Днем ветеранов и т. Д.
URL не является обязательным.
В представлении фильтруйте по типу = header_pic и show_when = все, что вы хотите отображать сейчас, лимит = 1.
Нужен аддон модуля Customfield PHP для представлений и добавьте:
<?php
$temp = node_load($data->nid);
if ($data->node_data_field_header_pic_url_field_header_pic_url_url) {
echo '<a href="' . $data->node_data_field_header_pic_url_field_header_pic_url_url
. '" title="' . $data->node_data_field_header_pic_url_field_header_pic_url_title
.'"><img src="/' . $temp->field_header_image[0]['filepath'] . '" /></a>';
}
else {
echo '<img src="/' . $temp->field_header_image[0]['filepath'] . '" />';
}
?>
Где поля, которые я отметил, соотносятся с вашими фактическими полями.
Что это делает, так это оборачивает изображение этим полем URL-адреса, только если поле URL-адреса заполнено.
Затем установите представление в блочном отображении и установите этот блок в области заголовка. В зависимости от темы вам, возможно, придется немного взломать page.tpl.php, чтобы переместить эту область блока заголовка в реальную область заголовка (но как только вы попадете туда, легко увидеть, что вам нужно сделать).
Вы даже можете создать представление страницы для этого же представления, чтобы отобразить все ваши замечательные изображения заголовков одновременно на странице (/headerpics) со ссылкой для редактирования для каждого из них для удобства управления.
Это сработает, если вам нужны только сезонные изображения. Это простая форма для нетехнических пользователей для загрузки и обрезки изображений. Единственное, что нужно администратору, — это периодические изменения сезона (показывать, когда) в фильтре просмотра.
person
Kirk Hings
schedule
06.11.2009