Това беше просто, но ефективно решение, използващо cck и изгледи:
Създайте тип съдържание „заглавни снимки“. Добавете полета за изображения, url и списък за избор „покажи кога“.
Изображения Използвах качване на изображения с модул за изрязване, ограничен до 400 пиксела ширина на 100 пиксела височина, за да се побере в заглавния блок.
„покажи кога“ изберете списък, който попълних с лято, зима, есен, Хелоуин, Коледа, Ден на ветерана и т.н.
url не е задължителен.
В изглед филтрирайте по тип = header_pic и show_when = каквото искате да се показва сега, limit = 1.
Нуждаете се от добавката за PHP модул Customfield за изгледи и добавете:
<?php
$temp = node_load($data->nid);
if ($data->node_data_field_header_pic_url_field_header_pic_url_url) {
echo '<a href="/bg' . $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