Custom Post Types deel 2

Na enige tijd van drukte heb ik eindelijk weer eens tijd om verder te gaan met de ontwikkeling van DDJ en ik ben begonnen met testen van Custom Post Types. Eerder ben ik hierover redelijk voorzichtig geweest, omdat de locatie van de definities van het Type in functions.php in het template mijns inziens niet juist is. Custom Post Types zijn mijns inziens niet template afhankelijk en daarom horen deze definities daar niet thuis. Nu 1,5 maand na de release van WP 3.0. zie je toch dat dit vernieuwende onderdeel wel goed wordt opgepakt; en dus doen wij dat ook. Otto beschrijft nog eens waarom Custom Types geen Posts of Pages zijn.

Allereerst, het is niet nodig om handmatig functions.php te wijzigen. Middels de plugin Custom Post Type UI makkelijk te doen. Waarschijnlijk is het in het geval van een duidelijke structuur wel raadzamer om dit uiteindelijk in functions.php onder te brengen, want dit scheelt weer een plugin, maar voor testdoeleinden is dit ideaal. Met een paar klikken staat een Custom Post Type klaar en is het menu-item aangemaakt. Zie hieronder voor een videotutorial.

Middels de plugin Query Multiple Taxanomies van Scribu. Is het heel makkelijk om via Widgets complexe queries te doen op de Post-verzameling. Dit is niet per definitie voor Custom Post Types; het kan ook gebruikt worden op de normale posts. Somadesign lost het gemis van een landing page voor een custom post type op.

Er zijn verschillende plugins om ook op een simpele manier Custom Fields toe te voegen aan je Custom Post Type. Magic Fields (WP.org repository) heeft de meeste Field-types. Denk bijvoorbeeld aan Sliders en Audio. De ondersteuning van WP3.0 is nog geheel vlekkeloos. Custom Fields Template lijkt uitgebreide mod-mogelijkheden te hebben, maar dat schrok mij af (en het japans ook).  Uiteindelijk heb ik gekozen voor Simple Fields. Simpel en helder. Wel een jonge plugin, dus mogelijk nog wel bugs, maar het ziet er simpel uit en doet wat het moet doen: op een overzichtelijke manier Custom Fields weergeven, zodat ook mijn klanten het snappen en geen handleiding nodig hebben om te posten. Hoe je velden kan verwijderen uit de admin staat beschreven op deze pagina van Shibashake.

Nu alleen nog de Custom Fields in de pagina’s verwerken. Hoe dit moet staat beschreven door GenuineInteractive. Wel even rekening houden met het aanpassen van de Query voor de Tags.

Custom post types – Hoe, wat en waar?

Zondagmiddag, kinderen op bed… Even tijd voor een leuk stuk vertier, namelijk de updates van de verschillende (nieuwe) plugins bekijken op de WordPress.org plugin repository. Direct al raak, Template Override lijkt een prima functionaliteit voor de toekomst, gezien de automatische template-updates vanaf WP3.0. Later eens een keer goed testen, dus waar sla ik de link op… Misschien in een Blogroll, of pak ik daar een plugin voor, of gewoon een post. Nee wacht, in WP3.0 zit standaard ondersteuning voor Custom Post types. Precies wat ik zoek, ik maak gewoon een type post: “plugins om te testen”, met een aantal velden .als URL, categorie, opmerking.  Dan kan ik daarna relatief makkelijk een lijstje maken. Hoe werkt het dan precies. Een korte scan door het menu levert niets op dus gaan we naar Google en komen we op de site van Kovshenin. Wat blijkt, voor Custom Post types moeten er aanpassingen gemaakt worden in functions.php in het theme. Hmmm, niets geen makkelijke GUI zoals bij een aantal plugins (Pods, Flutter) en een structureler probleem is dat functions.php is een onderdeel van het template/theme van de site. Kortom, bij wisseling van een theme, zonder het copy/pasten van de inhoud van functions.php gaat de gehele structuur verloren. Net als anderen denk ik dat hier niet goed over nagedacht is. Post types zijn onderdeel van de core en niet van het template naar mijn mening. Kortom, nog even geen makkelijk lijstje met plugins die getest moeten worden. Voor degene die toch aan de slag willen heeft Justin Tadlock een uitgebreide uitleg over de mogelijkheden van Custom Post types in WP3.o en nog een stap verder de taxanomie van de data