Reklama

Kalendář v Drupalu 6 (videonávod)

Další pokračování série videonávodů pro redakční systém Drupal vás naučí, jak jednoduše implemenovat kalendářové rozhraní a vytvořit k němu příslušný obsah.

Reklama

S kalendáři se na webech setkáváme v nejrůznějších podobách. Mohou sloužit pro přístup do archivu článků, kde nám jednoduše vyfiltrují příspěvky publikované v určitém období. To je funkce, se kterou se často setkáváme třeba u blogů postavených (nejen) na Wordpressu. Kalendář můžete na webu implementovat i pro vytvoření seznamu plánovaných událostí. Své čtenáře tak můžete jednoduchým způsobem o těchto akcích informovat.

Základní jádro redakčního systému Drupal žádný kalendářový modul nenabízí. Můžete si však vypomoci doplňkovými moduly. V následujícím videu jsou zmíněny následující moduly, které si stáhněte a nainstalujte do své implementace Drupalu:

Kalendář pro existující články

Jakmile uvedenou kombinaci modulů zapnete, vznikne vám v seznamu Views nový pohled nazvaný calendar. Aktivujte jej odkazem Enabled a přepněte se do Administrace, Prvky webu, Bloky. Aktivujte nový blok Calendar a vyzkoušejte jej.

Zobrazí se boxík s jednoduchým kalendářem, kde si můžete vybrat některý den a podívat se, zda tehdy byly publikovány některé články. Kromě toho, že je kalendářík klikací, ukazuje dny s vydanými články také podtržením číslice.

Kalendář pro nový typ obsahu

Kalendář samozřejmě nemusíte používat pouze pro již existující typy obsahu, jako jsou třeba běžné články. Můžete si vytvořit zcela nový typ obsahu, který bude obsahovat políčko s datem. Typickým příkladem je nový typ obsahu pro nějaké akce, který kromě standardních obsahových polí nabídne informaci o tom, kdy se akce koná.

Tento příklad si můžete vyzkoušet krok za krokem na následujícím videu.

Alternativní postup

Výše uvedené video ukazuje, jak vytvořit kalendář zároveň s přípravou zcela nového typu obsahu. Pokud však chcete kalendář „naroubovat” na existující typ obsahu s nějakým datovým políčkem, postupujte tak, že naklonujete výchozí Views nazvané calendar a mírně jej upravíte.

Nejprve upravte filtr tak, aby se vám do View dostal jen určitý typ obsahu. Poté si v sekci Arguments přidejte políčko s datem, podle něhož budou články propojeny s kalendářem. Výchozí nastavení počítá s tím, že je obsah provázán dle data vydání uzlu.

Nastavení vzhledu kalendáře

S úpravou vzhledu kalendáře pomocí kaskádových stylů byste neměli mít problém. Stačí si uvědomit, že kalendář je vlastně klasické View upravené o několik nových prvků. Se stylováním vám může pomoci vygenerování šablony pomocí Views. Přepněte se do úpravy prvku pohledu a v sekci Theme klepněte na odkaz Information. Zobrazí se seznam možných souborů šablony, po kliknutí na něj se ukáže obsah, který byste do takového souboru v šabloně měli uložit. Poté jej stačí jen upravit a změnit vzhled pomocí kaskádových stylů.

Tento článek a v podstatě i video jsou určeny zkušenějším tvůrcům webu s Drupalem. Budete-li mít problémy se stylováním kalendáře a Views obecně, můžeme se tomuto tématu věnovat někdy příště. Před použitím modulu Calendar vřele doporučuji nastudovat, jak se vůbec pracuje s Views. Vše potřebné by vám měla odpovědět má kniha o Drupalu.

Tagy: 

Volná místa v IT

Další pracovní místa najdete na stránce Volná pracovní místa v IT.

Reklama

Komentáře

Díky za podělení se o zkušenosti.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Kdybych chtělo Upcoming i na pět nejbližších akcí (dle videa) i na úkoly na aktuální den - to musím Upcoming duplikovat? Nebo upravit někde jinde? Já bych nectěla dva kalendáře na jednom nodu.

Díky.

Dobrý den,

chtěl bych se ještě zeptat, kde se mění formát data pro upcoming. Jednou už jsem to dělal, ale teď to prostě nemohu najít. V jednom bloku mám St, 09/22/2010 a v druhám 9/22/2010 - 07:38, potřeboval bych, aby byly oba bloky stejné dle formátu St, 09/22/2010.

 

Za odpověď děkuji

To budu asi vědět já:

editace obsahu -  kde to chcete změnit (tyty obsahu) - Manage fields - a upravíte typ CCK, který zobrazuje to datum. Já to mám v "Datetime"

Nastavil jsem to ve fieldu daného views :-), díky za rady

Dobrý den,

mám problém ohledně instalace kalendáře. Po nainstalování výše uvedených modulů (calendar, date, Views) mi naskočila hláška 

The Date Popup module now requires the jQuery UI module as a source for the datepicker. Please install it immediately.

Díky tomu mi nefunguje téměř celý web. Nemohu se dostat na muduly abych doinstalovat výše zmíněný modul. V menu prvky webu je pouze blok a překlad rozhranní. Nevím jak muho doinstalovat modul bez nabídky seznamu modulů nebo v čem je problém.

Děkuji

Není nic snazšího, než tam doinstalovat ten modul, na který vám ona hláška rovnou nabízí odkaz.

Pokud se Vám rozhodilo menu, bude to asi něčím dalším, aktualizoval jsem teď v poslední době modul Date na několika webech, se stejným hlášením, ale bez problémů.

Jinak, odkaz na správu modulů je admin/build/modules.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Děkuji za rychlou odpověď, bohužel do menu se nedostanu žádnou cestou pokaždé mě to prespěruje na prvky vebu, kde jsou pouze ty 2 výše zmiňované volby.

Chyba se stala po instalaci výše zmiňovaných modulech.

Pro upřesnění Drupal 6.19 a moduly jsem stahoval aktuální ke dnešnímu dni. Zatim jedu na Localhostu Apache 2.4 a PHP 5.2.3.

Dají se zapnout jiným způsobem moduly??

Děkuji Jakub

Když zadáte adresu neco.cz/admin/build/modules, tak se Vám nezobrazí správa modulů?

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Přesně tak, nicméně jsem si hrál celý včerejší den a vytvořil novou instalaci drupalu a vše nastavil tak, jak jsem měl předtím, ale bojím se, aby se mi nestala stejná chyba. Pokusím se rozjet nejprve jQuery modul a snad budu mít více štěstí. Asi bych se měl podívat ještě na zálohování :).

I tak Vád děkuji, Váše návody a videa jsou k nezaplacení.

Děkuji

Dobrý den!

Pomocí Vašeho návodu se mi podařilo nastavit kalendář na našich stránkách http://schak.cz/

Už od samotného spuštění mi Drupal předkládá mnoho warningů podobného stylu:

Attempt to modify property of non-object v souboru /hosting/www/schak.cz/www/modules/calendar/includes/calendar_plugin_display_page.inc na řádku 47.

 

S ohledem na diskuzi pod Vaším článkem, jsem tyto upozornění ignoroval, ale bohužel to nestačilo.

Problém nastal ve chvíli, kdy jsem přidal několik Akcí...

Po nějakém čase (cca. 1 hodina) celé stránky spadly a vůbec se nenačítá vzhled, jsou pouze v textové podobě a když se zaloguji ručně přes URL do administrace, tak jsou zablokované Bloky a Kalendář nejde vypnout.

Už jsem zkoušel kompletní přeinstalování Drupalu a následné vytvoření celého webu, průběh byl bohužel 2x ten samý. Nejprve funkční kalendář i s Akcemi a následně pád celého webu.

PHP využíváme 5.3.4

Nenapadá vás prosím někoho, v čem by mohl být problém?

Vše na základní verzi Garland, 6.20 Drupal a poslední verze modulů (uváděných jako stabilní).

Tak jsem asi přišel na jednu z možných příčin... Měl jsem nastavenou velikost DB na 10MB a všechno zaplňuje tabulka watchdog, která má víc jak 8MB... Teď jsem zkusil web vytvořit ještě potřetí a se 100MB prostorem pro DB zatím vše běží, ale DB se stále zvětšuje...

Proto mi asi celá stránka spadla. Vzhledem k tomu, že se do logu píše šíleně moc chybových hlášek kvůli modulu calendar, jak jsem zmiňoval výše, roste DB velice rychle :o(

Máte nějaký nápad jak tento problém eliminovat?

Zdravím 10 MB je samozřejmě nepoužitelných, 100 MB je taky nic moc vzhledem k tomu, že watchdog uchovává různá hlášení. Čím vyšší návštěvnost, tím vyšší nároky na uložení dat.

Co se týče chyb, je to dáno tím PHP 5.3.x, bezproblémové je to na PHP 5.2.x.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobrý den, děkuji za videonávod - udělal jsem podle něj kalendář akcí na cz.kampocesku.eu a mám jednu prosbu, zda lze nějakým způsobem provádět hromadný import akcí do kalendáře, řádově se jedná o stovky akcí. Děkuji

Dobrý den, zkuste modul Import / Export API. Poskytuje rozhraní, ve které můžete importovat uzly třeba z XML nebo CSV. Jen je třeba vše pořádně naklikat. Moc zkušeností s ním nemám, zkoušel jsem jej kdysi na rozjíždějícím se webu a bylo tam potřeba po importu řešit různé další úpravy importovaných uzlů. Taky neuměl obrázky. Ale pro základní umístění dat do kalendáře by mohl asi stačit.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobry den mam dotaz jestli jde nejak upravit kalendar, jako zmenseni nebo  jestli jde posunout.

Na strance http://knm.szaa.org/ mam na levem boku kalendar a precuhuje pres levi blok.

Vuceb nevim jak to upravit uz si sitm hraji pekne dlouho.

Diky za radu

Dobrý den, jistě. Upravte si CSS. Jak jsem koukal, úplně by stačilo zrušit to odsazení pro blok s kalendářem.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobrý den,

díky za videonávod, funguje to bezvadně.

Chtěl jsem se zeptat, jestli máte někdo zkušenost s překladem do češtiny? Přeložil jsem si řetězce v překladu rozhraní (Administrace->Prvky webu->Překlad rozhraní), ale v kalendáři se mi zobrazují přeložené pouze názvy měsíců. Zkratky pro dny jsou stále anglické a výraz "MORE" v náhledu nejbližších akcí také. Cache jsem vyčistil.

Dny jsou uloženy jako jeden řetězec, který je třeba přeložit. Zkuste tohle, mám dojem, že to přeloží komplet: Jak na neustále aktuální český překlad Drupalu.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Moc díky, už to funguje. Já jsem předtím přeložil celý řetězec, ale stejně se mi ten překlad nezobrazoval. Nevím, v čem jsem dělal chybu. Teď už je to dobré. Ještě jednou díky.

Dobrý den,

v sekci upcoming se mi zobrazuje datum akce pouze pokud jsem přihlášen jako administrátor. Ostatním rolím  se nezobrazuje. Už jsem koukal všude do práv i nastavení zřejmě jsem něco přehlédl, nevíte prosím čím by to mohlo být?

 

Děkuji

Děkuji jsem slepy jako patrona.

Dobry den,
diky za super navod!

Dotaz 1:
Potreboval bych ale poradit jestli je mozne aby mi z vygenerovaneho bloku kalendare data odkazovaly rovou na patricne nody/akce a ne do dalsiho views s dennim/tydenim/mesicim zobrazenim.
Dotaz 2:
Jak na to aby v bloku kalendar byla kazda akce zvyraznena jinak barevne v zavislosti na zvolenem typu akce.?
Velice dekuji za kazdou radu. MnIT

Dobrý deň.

Vďaka tomuto videu som dokázal vytvoriť kalendár akcii, som začiatočník. 

avšak sa my vyskytol takýto problem, omylom som vytvoril dva kalendáre ... mám obe vo views.

v sekcii "vytvoriť obsah" mám typ obsahu Akcia, no po jeho otvorení mám dve okná pre zadávanie dátumu akcie s jedným titulkom.

Chcel by som obe kalendáre odstrániť a odstrániť aj všetko ostatné čo som v kalendároch skúšobne zverejnil , a začať s tvorbou kalendára akcii odznova.

Prosím Vás o radu ako to uskutočniť, aby som mal views v stave (čisté) ako pred prvou tvorbou kalendára,

aby som mohol začať odznova. 

Ďakujem ... prajem pekný deň.

Dobrý den, snadná pomoc. V Prvky webu > Views prostě ta nepovedená View smažte. je na to odkaz. Pak můžete třeba vypnout ještě modul pro kalendář a datum, následně jej odinstalovat, čímž smažete všechna data s ním spojená, znovu jej zapnout a zkusit to postavit znovu.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dakujem za pomoc, fakt jednoducjhe a uz mi funguje uplen novy kalendarik, idem teraz dumať a pátrať ako ho nastylovať a preložiť do SK. :-)

Dobrý den,
vytvořil jsme dle Vašeho návodu modul kalendář pro akce v drupal 7 a k němu přidal políčko město pro pozdější filtrování ve výpisu. Chtěl bych se zeptat zda a jak je možné toto pole před vyplnit podle aktuálně přihlášeného uživatele, který zadává tuto akci. K uživateli jsem přidal také pole město při registraci jako povinné.

Dobrý den, to půjde asi jedině přes nějaký doplňkový modul, nemělo by být složité jej vytvořit. Jen vezmete funkci hook_form() a upravíte výchozí hodnotu v políčku.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobrý deň.
TAk ako som uz minule spominal, kalndar mi podla vasho videonavodu funguje pekne.
mam vsak tentokrat otazku ohladom upravy jeho vzhladu nakolko sa mi na stranke zobrazuje akýsi rozhádzaný a velký. teda:
 - bolo by množné veľkosť zobrazovaného kalendárika v (mam ho v pravo) bloku zmensit?
 - ako ma urobit aby mi ikonky pre posúvanie mesiacov neprekrývali názov mesiaca?
 - a čo celková úprava vzhľadu kalendárika v bloku? viac sa mi páči ten ktorý je v jednoduchom module "Calendar Block".
 - na čo slúži modul "fullcalendar" ?

vdaka za rady a odpovede .

pekný úspešný týždeň prajem . 

 

Dobrý den, vzhled kalendáře lze samozřejmě upravit, stačí do tématu vzhledu doplnit upravené CSS. Otázka je, zda to zvládáte, nebo ne.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobrý deň.
Správna otázka  a odpoveď je jednoznačná, samozrejme nezvládam.
ako som spomenul som začiatočík ale posnažím sa nejako si poradiť, kdesi vygooglim návod. 

vďaka za pomoc.

DD, postupoval jsem podle video-návodu a vše je ok až do doby, kdy chci vytvořit událost. Když dám typ obsahu Akce, zobrazí se jen pole pro zadání data. Pole pro zadání času se nezobrazuje. Mám D6 poslední verze a aktualizován modul date. Nevíte, kde může být problém? Celé jsem to prolezl a nemůžu přijít na to, kde dělám chybu. Děkuji

dobry den postupoval jsem podle videonavodu a neco sem asi prehledl Muzete mi prosim poradit ?

Toto souvisí s verzí PHP, nemělo by to mít vliv na funkci. Stačí si ukrýt chybová hlášení.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Stránky