Úvodní stránka › Fórum podpory WordPressu › Čeština pro WordPress › Rozdělení dlouhého příspěvku a výpisu rubrik na více stran
Štítky: get_template_part(), mothers dresses, Stránkování, Stránkování stránek, the_content(), the_excerpt(), WP-PageNavi, wp_link_pages()
Zvolené téma obsahuje celkem 34 odpovědí. Do diskuze (3 účastníci) se naposledy zapojil uživatel admin a poslední změna je stará 12 let, 7 měsíců.
-
AutorPříspěvky
-
13. srpna 2011 (6:00) #8846
Tak to ja vám neřeknu, to jsem dofal, že mi to pomůžete objasnit. Je to šablona co jsem našel volně ke stažení na stránkách wordpressu a vypadala podle mého názoru vhodně pro můj web.
13. srpna 2011 (9:16) #8847Hlavní je, že to funguje.
Ještě požádám o vyjádření admina, ten je znalejší a určitě o tom něco bude vědět…
13. srpna 2011 (9:27) #8848Perfektní, děkuji. Ja vím že jsem otravný, ale rád vím jak to funguje a nerad se spokojím jen s výsledkem, že to funguje :-)
13. srpna 2011 (10:10) #8849Samozřejmě, a to je dobře :-)
Admin by se měl během několika hodin vyjádřit.
13. srpna 2011 (19:38) #8850Ano, admin je částečně na dovče a neteyescz to tu naštěstí zachraňuje :-) Každé takové vlákno je ale hlavně pro admina asi hodina práce, protože to musí přečíst, pochopit a pokusit se vysvětlit případné záhady, případně problém uvést do souvislostí. A protože se na fóru objevuje stále více dotazů a zároveň mám mnoho placené práce a připravuju novou verzi fóra, tak by se musel admin velmi brzo zbláznit :-)
Prošel jsem si už ale celé vlákno a jen to nakonec celé shrnu a trochu okomentuju…
Je třeba rozlišovat rozdíly mezi stránkami a příspěvky. Pokud máte nějakou stránku (dlouhý text), tak je možné ji rozdělit na několik částí pomocí
<!--nextpage-->
. Dříve bývalo v editoru speciální tlačítko, které sice postupně zmizelo, ale jde “obnovit” a funkčnost zůstala zachována. V šabloně pak musíte ještě použít funkci wp_link_pages(). Jde ale pouze o rozdělení jedné stránky (textu). Uvedený kód (BorgMcz) je zajímavý a na první pohled mě nenapadá jednodušší řešení tak, aby byly v odkazech jak čísla, tak textové odkazy (ale zkusím se na to ještě podívat). Zajímavý je také zmíněný plugin Number My Post Pages, jakou funkci jste nakonec vložil do šablony? Je možné někde vidět online, jak nakonec toto rozdělění stránky vypadá?Trochu se plete také pojem “stránka” (jako nějaký text) a stránka ve výpisu příspěvků (či obecně stránka webu), která vznikla stránkováním mnoha příspěvků a není to vlastně nic jiného než rozdělěný výpis příspěvků na dílčí stránky (které ale nemůžete upravovat v administraci). Pro stránkování je ideální plugin WP-PageNavi (další pluginy jsem ani neznal, díky za zmínku, neteyescz). Výše uváděný kód
<?php if( function_exists( 'wp_pagenavi' ) ) { wp_pagenavi(); } ?>
je však třeba vložit až na konec výpisu příspěvků (tedy po ukončení loopu = smyčky).
Používaná šablona Engineering and Machinering využívá funkce get_template_part() (novinka WordPressu 3.0), která je už trochu složitější na pochopení, ale stručně řečeno jde o to, že např. z klasického souboru pro zobrazení příspěvku (single.php) vyčleňuje samotnou smyčku (loop) pro výpis příspěvku a odkazuje na příslušný soubor loop-single.php, který to řeší samostatně. Cokoliv je ale součástí souboru loop-cokoliv.php, tak je součástí loopu (pro související obsah webu). A pokud tedy potřebujete něco vložit až za konec loopu, musíte to provést v původním souboru (tedy např. single.php či archive.php), a to až po funkci get_template_part(). Je to ale námět na celý dlouhý článek :-)
Takže výše uvedený kód pro stránkování by se správně neměl dávat do souboru footer.php (načítá se na všech stránkách), ale pouze tam, kde bude potřeba, tedy ve výpisu příspěvků v rubrikách (v našem případě tedy soubor category.php) + případně ve výpis příspěvků z různých rubrik na úvodní stránce (tedy soubor index.php). Soubory attachment.php a loop-attachment.php slouží pro zobrazování nahraných souborů z Knihovny médií na vlastních URL adresách…
Očekávám další doplňující dotazy :-)
14. srpna 2011 (5:54) #8851Super, dekuji za fakt vycerpavajici odpoved. Vysledek obou strankovani je mozne prohlednout na techto dvou odkazech:
http://dccmm.dyndns.info/index.php/elektro-mm/lusmat/2
http://dccmm.dyndns.info/index.php/category/elektro-mm
Kazdopadne je uz rozdeleni kategorie presunuto na spravne misto, tedy alespon myslim protoze jsem to presunul do souboru category.php .
Pro rozdeleni samotneho prispevku jsem pouzil ten uvedeny plugin, ale jen proto, ze vypadal lepe, nez me puvodni zobrazeni pridanim me upravy kodu, vadilo mi vypsani pri prvni strance ze chybela i jen neaktivni moznost linku “předchozi”.
Jeste se zeptam, netusite, jakym spusobem (myslim jake soubory se pouziji) , kdyz zvolim, ze uvodni stranka ma byt vypis prispevku? Jde mi o to, ze bych rád, aby se vypisovali jen zacatky prispevku, jako nahledy, jako v rubrikach. Protože se mi vypisuji prispevky cele, pokud jsou na uvodni starne.
14. srpna 2011 (7:00) #8852Zdravím,
V menu najdete nastavení+zobrazování – zobrazit nejnovější příspěvky.
Dále pak v souboru loop.php vyměníte funkci
<?php the_content(); ?>
za<?php the_excerpt(); ?>
.Doporučuji kouknout na dokumentaci.
14. srpna 2011 (7:39) #8853Dekuji za radu, ale bohuzel nefunguje pro tuto sablonu. Ona totis ten nahled v rubrice vytvari sama, bez nutnosti pouzivat <!–more–>. Takže to takto nefunguje. Zkusim opet drze pockat na admina, ten uz myslim tu sablonu prozkoumaval a treba mi opet poradi s upravou kodu.
15. srpna 2011 (8:50) #8854Tak jsem metodou pokus omyl po navedeni na stranku loop.php a funkce <?php the_content(); ?> za <?php the_excerpt(); ?> dospel ke zdarnemu vysledku, take jsem pri te prilezitosti zjistil, ktere dalsi funce co delaji a tak je mozne se presvedcit o vyslednu http://dccmm.dyndns.info
Takze velice dekuji za pomoc a trpelivost. Ted uz si jen musim pohrat s menu, ktere chci upravit v zahlavi, ale to uz bych mel zvladnout snad bez pomoci. Takze dekuji jeste jednou.
15. srpna 2011 (9:05) #8855I já jsem z vaší předchozí zprávy byl zmatený. Šablonu kterou jste používal jsem s včera stáhl a normálně v ní našel použitou funkci the_content. Jsem velice rád, že již to funguje.
Neteyes.cz
18. srpna 2011 (11:21) #8856BorgMcz: Jak jste přesně použil ten plugin pro stránkování stránek (textů)? Jaké parametry pro funkci v šabloně? Jinak výpis nejnovějších příspěvků na úvodní stránce nejčastěji řeší soubor index.php. V případě této šablony však vidíte, že pomocí funkce get_template_part() ihned odkazuje na loop.php. Pozor, úprava souboru loop.php se načítá nejen na úvodní stránce, ale i ve výpis rubrik, štítků či výsledků vyhledávání… V tomto souboru je také více různých podmínek, takže tu funkci musíte nahradit na více místech. na druhou stranu ji vlastně ani nemusíte nahrazovat, ale stačí používat značku pro pokračování textu? Vlastně jde o uživatelské rozdělení textu na dvě části (úvodník a samotný text), tedy podmnožina stránkování textů na libovolné množství stránek.
Funkce the_excerpt() pouze automaticky zkracuje obsah získaný pomocí funkce the_content() – pokud ovšem nepoužíváte speciální pole v administraci pro Stručný výpis příspěvku. je to ale celé ještě trochu zamotanější a existuje mnoho dalších (nepříliš častých) kombinací…
19. srpna 2011 (7:25) #8857O znacce “MORE” vim, ale reseni pomoci funkce the_exerpt bylo mnohem hezcim resenim a mam moznost v sablone si nastavovat pocet slov zobrazenych v nahledu clanku. Toto nastaveni je v souboru “functions.php”.
V souboru “loop” jsem nasel misto jde byla podminka, ktera vypisovala clanky podle volani. Tedy zda se jedna o vypsani na uvodni strance a nebo uz z categorie nebo archivu. Podminku jsem nemazal (to pro pripad, ze bych ctel nekdy v budoucnu nejak s uvodni strankou jeste neco delat) , jen jsem vlastne pouzil stejny kod, ktery se staral o vypis prizpevku z categorie.
Priznam se, ze ted nevim, jak odpovedet na prvni dve otazky, zkuste mi je jeste vice specifikovat, rad na ne odpovim.
19. srpna 2011 (12:28) #8858Ano, každý způsob je lepší pro něco trochu jiného. Značka pro pokračování textu je zase vhodnější, když chcete mít v úvodníku ucelené texty, které budou u každého článku trochu jinak dlouhé…
Otázky směřovaly k použití pluginu Number My Post Pages. Musel jste v nějaké podobě vložit funkci pluginu s názvem mysinglepages() do šablony a s nějakými parametry?
20. srpna 2011 (11:07) #8859Postupoval jsem podle navodu k instalaci v popisu plugínu, jen v mem pridade sablony se to vkladalo do souboru “loop-single.php”. Vlozeny kod ma vypadat takto
<?php mysinglepages(wp_link_pages(array('before' => '', 'after' => '', 'next_or_number' => 'number','echo' => '0'))); ?>
Jeste je treba v pluginu rucne prelozit anglický vyraz “Page:” za nejaky svuj na radku 252. Ostatni texty lze menit primo v nastaveni pluginu.
20. srpna 2011 (12:01) #8860 -
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.