Autor | Zpráva | ||
---|---|---|---|
ZdenekPNJ Profil |
#1 · Zasláno: 29. 11. 2014, 08:40:19 · Upravil/a: ZdenekPNJ
Zdravím všechny,
pracuji na kompletním předělání redakčního systému a napadlo mně, že by bylo dobré si vytvořit funkci, díky které bych měl možnost jednoduše spravovat a generovat veškeré odkazy. Chtěl byl znát názor zkušenějších, jestli je to správná cesta či existuje lepší možnost jak zajistit níže uvedené. Příklad: Namísto současné podoby, kdy je v kódu <a href="clanek.php?cisloclanku=123&idrubriky=4&idpodrubriky=5&seonazev=nadpis-clanku-vygenerovany-z-nadpisu-v-db" title="Název článku">Název článku</a> či <a href="hledej.php?idrubriky=4&idpodrubriky=5" title="Vyhledávání v rubrice 4 a podrubrice 5">Vyhledávání v rubrice 4 a podrubrice 5</a> bych chtěl, aby tam bylo něco podobného: <a href="<?php function dodejURL('clanek.php', '4', '5', '123', 'nadpis-clanku-vygenerovany-z-nadpisu-v-db'); ?>" title="Název článku">Název článku</a> či <a href="<?php function dodejURL('hledej.php', '4', '5', '', ''); ?>" title="Vyhledávání v rubrice 4 a podrubrice 5">Vyhledávání v rubrice 4 a podrubrice 5</a>. Proč to chci udělat? 1. Dalo by se pomocí funkce dodejURL($soubor, $rubrika, $podrubrika, $seonazev) jednoduše zajistit, aby v celém red. systému byly adresy ve stejném tvaru Při jakékoliv změně v budoucnu by veškerá editaci byla mnohem rychlejší, než všude přepisovat původní podobu a href. Budu vděčný za každou radu. ZdenekPNJ: A hlavně mě ještě napadlo, že by bylo vhodné do toho ještě přiděla převod na cool URL, co myslíte? |
||
Alphard Profil |
Tak nápad dobrý, některé frameworky to podporují již mnoho let. Ještě lepší je neuvažovat jen o generování odkazů, ale o přímé součinnosti s routerem. Jako odkazy se pak zadávají přímo názvy Controllerů, akcí a parametry k nim. Z nich je dle pravidel definovaných v Routeru vygenerováno cool url.
Viz příklad z Nette a Latte: <a n:href="Product:show $productId">detail produktu</a> $productId .
|
||
ZdenekPNJ Profil |
#3 · Zasláno: 29. 11. 2014, 09:45:52
Alphard:
Díky za nasměrování, to vypadá dobře. Jen je to pro mně teda zcela neprobádaná oblast, hned jsem hledal na webu odkazy na články, které o tomto pojednávají, ale zatím bojuju s tím to pochopit, jak to funguje:-) |
||
Alphard Profil |
#4 · Zasláno: 29. 11. 2014, 10:06:33
Ten kód je z doc.nette.org/cs/2.2/presenters#toc-odkazy-v-sablonach.
Šlo by to volat samozřejmě jako <?php $presenter->link(...) ?> . Ta uvedená syntaxe n:href Nette makra vyžaduje Latte parser, který si to zpracuje. Spojuje se v tom víc věcí dohromady.
|
||
ZdenekPNJ Profil |
#5 · Zasláno: 29. 11. 2014, 10:33:52
Alphard:
Možná se teď zeptát asi hloupě, asi bych potřeboval nakopnout. Možná v tom zbytečně hledám něco složitého |
||
Časová prodleva: 9 let
|
0