Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Zobrazení Custom Taxonomy mezi tagy
Štítky: get_object_taxonomies(), post_tag, stitky, Tags all in one, Taxonomie, the_terms(), widget_tag_cloud_args, wp_tag_cloud()
Zvolené téma obsahuje celkem 6 odpovědí. Do diskuze (2 účastníci) se naposledy zapojil uživatel admin a poslední změna je stará 8 let, 1 měsíc.
-
AutorPříspěvky
-
21. února 2016 (19:59) #26656
Mám prosbičku na všechny co zvládáte o něco více php než já, což je asi každý :) Tvořím si Custom Taxonomy a chtěl bych je zobrazit v tag cloudu na stránce příspěvku. Tagy se standardně zobrazují pomocí the_tags, k tomu jsem našel návod jak zobrazit jednu Custom Taxonomy, takže se mezi normálními tagy zobrazy i uživatelské ze skupiny Státy, ale jak jich zobrazit více to už tedy netuším :) Pomůžete mi prosím?
the_tags('<p class="cb-tags"> ', '', ''); the_terms( $post->ID, 'staty', '', '/<p>');
23. února 2016 (10:23) #26676Pro zobrazení štítků se nejčastěji používá widget “Štítky” nebo funkce wp_tag_cloud(). Jedním z parametrů této funkce je
taxonomy
, kde je použita výchozí hodnotapost_tag
, což jsou klasické štítky u příspěvků. Ale můžete klidně definovat celé pole vlastních taxonomií, např.'taxonomy' => array( 'post_tag', 'moje_taxonomie' )
A dokonce můžete použít obyčejný widget “Štítky” a upravit ho pomocí filtru
widget_tag_cloud_args
, např. takto:add_filter( 'widget_tag_cloud_args', 'separatista_pouzit_nekolik_taxonomii' ); function separatista_pouzit_nekolik_taxonomii( $args ) { $args['number'] = array( 'post_tag', 'moje_taxonomie' ); return $args; }
Případně můžete použít nějaký plugin, např. Tags all in one.
26. února 2016 (10:06) #26742Velké díky za radu, po krátkém (tedy možná spíše delším :D ) boji a drobném studiu na internetu, především uvedeného odkazu jsem do dal a funguje skvěle. Mám pocit, že si budu muset dát někde nějaké základy php :D
26. února 2016 (11:34) #26743Tak přece jenom se chybička vloudila :) a trochu nevím jak na ni. Já ty tagy zobrazuji v příspěvku a v závislosti na příspěvku, tzn. že chci zobrazit jenom tagy, které jsou přiřazené k tomu příspěvku. A teď, když to mám takto
$args = array ('taxonomy' => array ('cesti-kadernici', 'ceske-salony'), ); the_tags('<p class="cb-tags"> ', '', ''); wp_tag_cloud( $args, '</p>');
tak mi to vlastně v každém příspěvku vrátí všechny tagy, které jsou v těch tazích
cesti-kadernici / ceske-salony
atd. Poradíte mi prosím jak to zapodmínkovat, aby se natáhly u daného příspěvku jenom tagy, které jsou s tím příspěvkem svázané?26. února 2016 (14:13) #26748Aha, tak potom ale potřebujete použít zcela jiné funkce :-) Bral jsem to tak, že chcete jen modifikovat dosavadní shluk štítků pro další taxonomie a proto jsem použil funkci
wp_tag_cloud()
, která vypisuje všechny položky dle zadaných taxonomií.Pokud ale chcete vypsat všechny položky různých taxonomií, které jsou přiřazené u konkrétního příspěvku, tak musíte použít funkci the_terms(), a to dvakrát po sobě (pokaždé s jinou taxonomií) nebo to zobecnit a u každého příspěvku se dotázat na přiřazené taxonomie pomocí get_object_taxonomies() a až následně použít
the_terms()
. Příklad podobného řešení naleznete např. zde, ale musel by se trochu předělat.26. února 2016 (15:16) #26755Super, stačilo takto ťuknout. Já už hned v tom mém prvním dotazu měl v tom kódu tu funkci
the_terms()
co jsem někde vygooglil, ale z nějakého bláznívého popudu jsem se snažil do ní nacpat více těch taxonomii najednou. Samozřejmě když je použiju 2x zasebou tak to funguje naprosto přesně jak má. A toto mi stačí, já to nijak zásadně zobecňovat nemusím. Někdy ta jednoduchost je krásná. :D26. února 2016 (17:34) #26759 -
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.