Klonen & vertalen (WordPress)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Dit betreft het klonen en aanpassen van een webwinkel binnen CloudWays.

Instantiëren

Dit hoofdstuk: Zorgen dat er een ordentelijke nieuwe webwinkel staat. De vertaling komt later.

Site & hosting

  • Caching uitzetten
  • Site & db klonen
  • DNS-entries aanpassen. Als dit is gebeurd, dan SSL configureren
  • Verifiëer dat er een aparte database is aangemaakt voor het nieuwe domein, en dat die is gevuld, en dat wp-config hierna verwijst
  • Emailadres aanmaken binnen TransIP

Basisinstellingen site aanpassen

  • Wachtwoord eigen account evt. aanpassen
  • Settings » General: Site-titel aanpassen - Volgens mij gaat dit via de db
  • Settings » General: Taal aanpassen
  • SMTP: Nieuwe wachwoord invoeren: Dit gaat niet via de db-updates ivm. beveiliging

Mollie

  • Nieuw profiel aanmaken
  • Betaalmethodes kiezen voor dit profiel (PayPal, bankoverschrijving & betaling-op-factuur gaan buiten Mollie om)
  • Betaalomgeving van dit nieuwe profiel aanpassen (alleen logo uploaden)
  • WooCommerce: API-sleutel van Mollie van dit nieuwe profiel invoeren
  • WooCommerce: Betaalmethodes activeren en sorteren.

PayPal

Voor PayPal hoef je weinig te doen, aannemende dat Live API username, Live API password en Live API signature zijn meegekomen met de kloon. Ik geloof dat je anno 2020, niet meer binnen je PayPal-account de adressen van webwinkels hoeft toe te voegen.

Bestaande orders verwijderen

  • Via de interface, kun je in ieder geval tot 100 orders order per keer verwijderen. Bij 250 orders/keer kreeg ik foutmeldingen
  • wp post delete $(wp post list --field=ID --post_type="shop_order") --force - Werkt super
  • Zie Orders in bulk verwijderen (WooCommerce) voor details.

Bestaande klanten verwijderen

Verwijderen van klanten is minder werk dan het verwijderen van orders, want lang niet alle klanten maken een account aan:

  • Dit kan opnieuw via de interface, maar da's gedoe
  • Via WP-CLI: wp user delete $(wp user list --role="customer" --field=ID) --yes - Goede ervaringen mee
  • Zie Bulkverwijderen gebruikers (WordPress) voor details.

Ingevulde formulieren verwijderen - Gravity Forms

Verwijder eerst via de interface de formulieren. Nu zijn ze helaas nog steeds aanwezig in de database. Om ook die te verwijderen:

# These tables are not connected and there is no "cascaded deletion" configured, 
# so you'll have to delete content of these tables separaterly:
#
# delete from wp_gf_entry;
# delete from wp_gf_entry_meta;
# delete from wp_gf_entry_notes;

Herindexeer Yoast SEO-index

Ververs de Yoast index-table (wp_yoast_indexable) middels

wp yoast index --reindex
Oude inhoud van wp_yoast_indexable. Als je goed kijkt, kun je zien dat er verschillende URL's zijn. Alsof de complete geschiedenis van de site is geïncorporeerd. Zou de index niet vaker bijgewerkt moeten worden?
Oude inhoud van wp_yoast_indexable: Allemaal dezelfde actuele URL (dit is binnen een ontwikkelomgeving en s1 staat voor ontwikkelversie van een site
Uitvoer van commando wp yoast index --reindex. Het duurde ca. drie kwartier

Factuursjablonen aanpassen

Bij gebruik WooCommerce PDF Invoices-plugin: WooCommerce » PDF Invoices:

  • Shop name
  • Shop Address: Emailadres aanpassen

Vertalen - Database-niveau

De bulk van het vertaalwerk doe ik middels SQL-scripts. Dit is een impressie van een specifieke casus in de herfst van 2020. Dit betrof een webwinkel met duizenden vergelijkbare producten.

wp_options

  • Begin met de inhoud van wp_options
  • Ik vertaal niet gelijk alles, want niet alles hoeft vertaald te worden (bv. oude log-entries), en het verhoogt het risico op complicaties.

wp_posts - Productinformatie

Vertalen van productinformatie gaat prima in SQL: Data is namelijk uitermate repetetief.

Categorieën

Met categorieën bedoel ik hier de WooCommerce-taxonomie.

Kenmerken?

Vertalen - Via de user-interface

Dit zijn objecten waarvan ik het niet handig vind om ze via SQL bij te werken. Dit doe ik liever via de gebruikersinterface:

  • Contactpagina
  • Privacy statement
  • Algemene voorwaarden

Trefwoorden

  • Kloon en vertaal
  • Kloon & vertaal

Zie ook