Automatisering (WordPress)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Processen die ik vaak doorloop, automatiseer ik graag. Dat maakt die processen herhaalbaar, verifiëerbaar, optimaliseerbaar en schaalbaar. Rondom WordPress zijn er twee specifieke gevallen waarop ik automatisering toepas:

In dit artikel worden plugins buiten beschouwing gelaten: Ik vind ze vaak te beperkt of te onhandig.

Problemen

Ik wil graag de volgende objecten in WordPress in bulk importeren en aan elkaar koppelen.

Productgegevens importeren

Hoe kan ik WooCommerce Productgegevens in bulk importeren? En dan zo compleet mogelijk, liefst inclusief taal. Dit mag inclusief afbeeldingen en afbeelding-metadata, maar dat kan ook apart.

Afbeelding-metadata importeren

Als het gaat om optimalisatie van productgegevens, dan speelt optimalisatie van afbeelding-metadata een belangrijke rol. Zie de afbeelding hiernaast voor een overzicht van de betreffende velden. Dit wil ik heel graag automatisch kunnen importeren. De afbeeldingen zelf, kan ik desgewenst handmatig doen, zolang de koppeling met de metadata min-of-meer automatisch gaat.

Afbeeldingen & producten koppelen

Taxonomieën importeren

Ihb.:

  • Product-catalog-taxonomieën
  • Product-attribute-taxonomieën
  • Post-taxonomieën?
  • tags?

Taxonomieën & producten koppelen

Posts importeren?

Met posts bedoel ik hier 'gewone' pagina's. Deze zijn tot op heden (april 2019) voor mij het minst relevant, al kan het zijn dat ik binnenkort een klus heb, waarbij zo'n 2.500 'gewone' pagina's aangemaakt moeten worden.

Oplossingen

Naast plugins (die ik hier buiten beschouwing laat) zijn er verrassend veel mogelijkheden:

PHP-API

WordPress is geschreven in PHP, en alle functionaliteit is ondergebracht in een verzameling API's. Dit is waartegen je programmeert als je bv. een plugin schrijft. Waarschijnlijk is dit de krachtigste methode om WordPress naar je hand te zetten. Er bestaan een paar Python-wrappers zodat je sommige API's via Python kunt benaderen, maar in de praktijk moet je het gewoon in PHP doen. Dat kan zowel in de vorm als plugins, maar ook in de vorm van losse scripts. Tot op heden (april 2019) gebruik ik deze laatste mogelijkheid.

Een impressie van de API's die tezamen de WordPress API vormen:


Zie ook