✅ WEB- och WordPress -nyheter, teman, plugins. Här delar vi tips och bästa webbplatslösningar.

Styr aktivering av ett WooCommerce-tillägg

2

När du skapar ett WooCommerce-tillägg är det viktigt att tänka på att när tillägget är aktiverat kanske användaren inte har WooCommerce installerat eller aktivt.

Och även om ett tillägg kan aktiveras, kommer det inte att göra någonting. Detta kan i slutändan ge en nivå av förvirring för användaren.

I sådana här fall tror jag att det är viktigt att se till att en tillägg endast kan aktiveras om kärnpluginen är installerad och aktiv.

Aktivera en WooCommerce-tillägg

Även om vissa tillägg för WooCommerce liknar andra, kan implementeringen från den ena till den andra variera. Det vill säga, sättet som en tillägg skrivs kan använda ett helt annat paradigm, det andra.

Hur som helst, om du väljer att göra något sånt här, här är något att tänka på:

  1. Definiera en klass som startar när plugin-programmet startar,
  2. Kontrollera om WooCommerce är aktiv,
  3. Om så är fallet, ladda sedan alla andra beroenden,
  4. Om inte, avaktivera insticksprogrammet automatiskt.

Det låter som mycket jobb, men det är inte så mycket kod. Du kanske också vill överväga att lägga till ett anpassat pluginmeddelande när aktivering nekas men jag kommer att täcka hur man gör det i ett framtida inlägg.

1 Definiera en klass

Generellt tycker jag att det är en bra idé att ha en funktion för att starta och stoppa plugin. Om WooCommerce är aktivt kan du starta hela tillägget; annars måste vi stoppa dess aktivering.

För att göra detta kan vi koppla in admin_init-kroken för var och en av funktionerna.

När plugin-programmet startas från WordPress-admin, kommer init-funktionen att behöva anropas programmatiskt från huvudpluginens ingångsfunktion.

2 Kontrollera om WooCommerce är aktiv

Innan vi implementerar någon av funktionerna måste vi dock kontrollera om WooCommerce-pluginet är aktivt. Det är vanligtvis säkert att anta att WooCommerce finns i en fast katalog vilket är vad den här koden gör :

Men om WooCommerce finns någon annanstans kan du behöva göra någon annan kontroll tills du hittar den.

3 Ladda beroenden

I startfunktionen, om WooCommerce är aktiv, kan vi ladda resten av komponenterna för plugin:

Men WooCommerce kanske inte är aktiv.

4 Eller Stoppa aktivering

Och om WooCommerce inte är aktivt måste vi stoppa aktiveringen av detta plugin:

Observera att även om du massaktiverar insticksprogrammet denna kod, kanske den här koden inte fungerar. Här är varför:

  1. WordPress kommer att arbeta igenom listan över plugins som det behöver aktivera.
  2. Om WooCommerce inte har aktiverats före tillägget kommer tillägget inte att aktiveras.

Så ett annat sätt att närma sig detta skulle vara att aktivera WooCommerce om det inte redan är aktivt.

Anpassade meddelanden

Som nämnts tidigare tycker jag att det är en bra idé att ge någon typ av administrationsmeddelande när aktivering av plugin nekas, men det ligger utanför den här handledningens omfattning.

Oavsett vilket är koden ovan ett sätt att kontrollera aktiveringen av ett WooCommerce-tillägg potentiellt.

Inspelningskälla: tommcfarlin.com

Denna webbplats använder cookies för att förbättra din upplevelse. Vi antar att du är ok med detta, men du kan välja bort det om du vill. Jag accepterar Fler detaljer