Kategória szerinti template include

Bizonyos kategóriájú cikkekhez szeretnék behívni php includeval egy kódrészletet.











A kategóriák a mysqlben a wp_terms tábla terms_id nél vannak meghatározva.











Tegyük fel hogy 11-es id alatt lévő kategória cikkjeinek megjelenítésekor hívja be a kódrészletet az include.











Kipróbáltam több kódot is, köztük ezt. A terms elé wp-t írt változatával, stb















Code:



<?php



if ('11' == $terms->term_id) {

// looking for category 11 posts

include(TEMPLATEPATH . '/xrek.php');

} else {

// put this on every other category post

include(TEMPLATEPATH . '/emtytemp.php');

}

?>

Majd elfelejtettem, az elseben megadott kódrészlet töltődik be

if (have_posts()) Ez még kell elé?

Ezzel a kóddal sikerült beállítani hogy az author11 templatejét meghívja, a postban. De a kategória nem működik. (Ez a kód a single phpben van)











<?php











if (‘11’ == $post->post_author) {





// looking for category 11 posts





include(TEMPLATEPATH . ‘/author11.php’);





} else {





// put this on every other category post





include(TEMPLATEPATH . ‘/emtytemp.php’);





}





?>


















Ezzel a kóddal sikerült megcsinálni hogy oldal.hu/kategóriák/kategória alat kitegye az ahhoz tartozó include-al meghívott kódrészletet, de ez nem működik a single.php -ben:























<?php





if (is_category(11)) {





// looking for category 11 posts





include(TEMPLATEPATH . ‘/kat11.php’);





} else {





// put this on every other category post





include(TEMPLATEPATH . ‘/emtytemp.php’);





}





?>

Nos közben megoldódott a probléma, de tanulságul az utókornak lejegyzem ide, remélem megmarad:











Tehát, ha sablon témába egyedi, képeket vagy szöveget, stb szeretnél behívni, akkor azt ezzel tudod megtenni:









Quote:

<?php


if (in_category ('KATEGÓRIA NEVE')) {


// looking for category KATEGÓRIA NEVE posts


include(TEMPLATEPATH . '/behivandoanyag.php');


} else {


// put this on every other category post


include(TEMPLATEPATH . '/hanemteljesulafeltetelezleszbejivva.php');


}


?>











A hiba az volt hogy az is_category-t használtam az in_category helyett.





Ezzel a módszerrel, egy teljes körű, kategória szerinti sablon megjelenítés ( theme ) is lehetséges.





Javítsatok ki ha esetleg tévedek, de akkor ezekszerint az in_category magában a single.php, vagy magában a megjelenítéséért felelős php ben használható. Kategória arhívum oldalon továbbra is az is_category-t kell használni!