DomůČlánkyTipy a trikyJoomla jako publikační systém

Joomla je spíše zaměřena na využití jako blogovací systém, to znamená, že ve článcích zobrazuje datum vytvoření článku a řadit dokáže rovněž pouze data vytvoření článku. Pokud chceme však Joomlu využít jako publikační systém, tedy když máme určeno kdy článek vyjde a toto datum mít zobrazeno jako datum vytvoření článku a podle tohoto data články taky řadit stačí provést jenom několik menších změn v Joomle.

Jako první vyřešíme, aby se nám zobrazovalo datum publikace článku místo data vytvoření, což je úplně jednoduché, stačí přepsat výchozí vzhledy šablony pomocí souborů v adresáři /templates/jmeno_sablony/html/com_content, kde vytvoříme adresáře frontpage, section, category a article a do nich zkopírovat soubory z odpovídajících podadresářů v /components/com_content/views/pohled/tmpl/. Ze všech jmenovaných adresářů mimo article zkopírujeme soubor blog_item.php, z adresáře s názvem article představujícím zobrazení samotného článku překopírujeme soubor default.php.

Ve všech bude stačit provést jednoduchou náhradu, kdy po nalezení řádku

<?php echo JHTML::_('date', $this->item->created, JText::_('DATE_FORMAT_LC2')); ?>

V něm nahrádíme $this->item->created za $this->item->publish_up, takže řádek bude vypadat následovně:

<?php echo JHTML::_('date', $this->item->publish_up, JText::_('DATE_FORMAT_LC2')); ?>

Zbývá nám provést ještě druhou změnu a to řazení podle tohoto údaje. Zde začneme přidáním možností tohoto řazení do rozbalovacího seznamu Primární řazení při tvorbě položky v menu. Definice těchto položek se nachází v souborech /components/com_content/views/pohled/tmpl/blog.xml, kde pohled je postupně frontpage, section a category. Tady si najdeme řádky:

<param name="orderby_sec" type="list" default="" label="Primary Order" description="PARAMORDERBYSEC">
                                <option value="">Default</option>

pod které přidáme

<option value="pdate">Oldest first(by publish date)</option>
<option value="rpdate">Most recent first(by publish date)</option>

následně se přesuneme do adresáře /components/com_content/helpers, kde si otevřeme soubor query.php a zde si ve funkci orderbySecondary přidáme do switche tyto řádky:"

                        case 'pdate':
                                $orderby='a.publish_up';
                                break;
 
                        case 'rpdate':
                                $orderby='a.publish_up DESC';
                                break;
 
 

Takže celý blok bude vypadat takto:

function orderbySecondary($orderby)
        {
                switch ($orderby)
                {
                        case 'pdate':
                                $orderby='a.publish_up';
                                break;
 
                        case 'rpdate':
                                $orderby='a.publish_up DESC';
                                break;
 
                        case 'date' :
                                $orderby = 'a.created';
                                break;
 
                        case 'rdate' :
                                $orderby = 'a.created DESC';
                                break;
 
                        case 'alpha' :
                                $orderby = 'a.title';
                                break;
 
                        case 'ralpha' :
                                $orderby = 'a.title DESC';
                                break;
 
                        case 'hits' :
                                $orderby = 'a.hits DESC';
                                break;
 
                        case 'rhits' :
                                $orderby = 'a.hits';
                                break;
 
                        case 'order' :
                                $orderby = 'a.ordering';
                                break;
 
                        case 'author' :
                                $orderby = 'a.created_by_alias, u.name';
                                break;
 
                        case 'rauthor' :
                                $orderby = 'a.created_by_alias DESC, u.name DESC';
                                break;
 
                        case 'front' :
                                $orderby = 'f.ordering';
                                break;
 
                        default :
                                $orderby = 'a.ordering';
                                break;
                }
 
                return $orderby;
        }
 

A tímto máme hotovo. Stačí naše soubory nahrát na ftp a máme z Joomly publikační systém. Ještě pokud chceme mít nově přidané volby při tvorbě nového menu v češtine stačí do souboru /languages/cs-CZ/cs-CZ.com_content.ini přidat tyto řádky:

OLDEST FIRST(BY PUBLISH DATE)=Nejstarší nejdříve(podle data zveřejnění)
MOST RECENT FIRST(BY PUBLISH DATE)=Nejnovější nejdříve(podle data zveřejnění)
Komentářů (0)
Přidat komentář
YOUR_CONTACT_DETAILS:
Komentářů:
[b] [i] [u] [s] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
SECURITY
Prosím=vložte text z obrázku (anti-SPAM ochrana

Zprávičky

Napsat novou zprávičku  |  Vše

sh404SEF 2.0.3.545

Nová verze

Napsal Peter Smrčák | 13.08 22:12

Kunena 1.6 RC1

Nová verze

Napsal Peter Smrčák |  9.08 15:28

Vyšla nová Kunena RC1 pre pripravovanú Joomlu 1.6.

EasyBook reloaded!

Nová verze

Napsal Peter Smrčák |  4.08 06:41

Vyšla stabilná verzia obľúbenej návštevnej knihy EasyBook reloaded vo verzii 2.0.4.

VirtueMart 1.1.5

Nová verze

Napsal Peter Smrčák | 28.07 15:11

Práve vyšiel nový VirtueMart.

Táto verzia opravuje rôzne problémy.

changelog | download

Joomla 1.5.19

Bezpečnost

Napsal Filip Bartmann | 16.07 18:30

Dnešním dnem spatřila světlo světa další aktualizace stabilní řady Joomly 1.5, tentokrát s pořadovým číslem 19 a kódovým jménem Wojmamni ama batani. Jedná se o opravu několika menších bezpečnostních chyb v administraci a také novou verzi js frameworku Mootools.

Více...

Jméno Joomla!® je použito pod limitovanou licenci od Open Source Matters ve Spojených státech a ostatních zemích. Joomladev nemá spojení s Open Source Matters, nebo projektem Joomla! a není součástí jejich podpory
Logo Joomla!® je použito pod limitovanou licenci od Open Source Matters ve Spojených státech a ostatních zemích. http://joomladev.eu nemá spojení s Open Source Matters, nebo projektem Joomla! a není součástí jejich podpory