Slik deaktiverer du Plugin Deactivation fra WordPress Admin Panel
En av de beste delene om WordPress er tilgjengeligheten av plugins som gjør jobben enkel som bruker og som utvikler. Ofte når vi lager nettsteder for klienter, bruker vi som utviklere plugins som er helt avgjørende for at nettstedet skal ha visse funksjoner. Nylig løp vi inn i et problem der en av kundens nettsted ble ødelagt. Sidebjelken ble ikke lastet helt, det manglet elementer på enkelt innleggssiden som freaked dem ut. Bunnlinjen i denne historien var at en av deres nye medarbeiderne som var ny på WordPress deaktiverte noen av pluginene som var nødvendig for at nettstedet skulle fungere skikkelig. Vi gikk inn og aktiverte alle pluginene som ble deaktivert, men det måtte være noe gjort for at vi skulle forhindre dette problemet i fremtiden. I denne artikkelen vil vi vise deg hvordan du deaktiverer plugin deactivation fra WordPress Admin Panel (kun for bestemte plugins).
Teoretisk sett bør du kunne bruke Justin Tadlocks medlemmer plugin og skape ny rolle for brukerne. Klienten vi hadde hadde imidlertid ikke lyst til å gå denne ruten. Det er en liten bedrift, og de ansatt denne nye medarbeider for å håndtere sine sosiale medier og blogger, slik at vi ikke kan begrense tilgangen. De ønsket å gi ham muligheten til å aktivere / deaktivere plugins etter hans vilje. Vi måtte finne en måte som ville holde kunden glad, og vi måtte også finne en måte å forhindre dette problemet på i fremtiden. Heldigvis til Steve Taylor fant vi en utdrag som lar deg fjerne koblingen "Deaktiver" fra spesifiserte plugins. Det fjerner også koblingen Redigere for alle plugins, fordi vi ikke ønsket at klienten skulle redigere noen plugins gjennom redigeringsprogrammet.
Så alt du trenger å gjøre er å lime inn følgende koder i temaets funksjoner.php-fil:
add_filter ('plugin_action_links', 'disable_plugin_deactivation', 10, 4); funksjon disable_plugin_deactivation ($ actions, $ plugin_file, $ plugin_data, $ kontekst) // Fjern rediger lenke for alle hvis (array_key_exists ('edit', $ actions)) unset ($ actions ['edit']); // Fjern deaktiver link for viktige plugins hvis (array_key_exists ('deaktivere', $ actions) && in_array ($ plugin_file, array ('facebook-åpen-graf-meta-in-wordpress / fbogmeta.php', 'wp-pagenavi / wp-pagenavi.php '))) unset ($ actions [' deaktivere ']); returnere $ handlinger;
Nå må du endre størrelsen på $ plugin_file hvor du ser listen over spesifiserte plugins. Banen til filen er i forhold til / wp-innhold / plugins /. Så i eksemplet ovenfor 'facebook-open-graph-meta-in-wordpress / fbogmeta.php' er en fil som ligger i mappen facebook-open-graph-meta-in-wordpress som ligger i plugin-mappen. Du kan endre listen for å legge til så mange plugins som du vil.
Dette trikset er en snarvei, og det forhindrer faktisk ikke den faktiske deaktiveringen. Alt vi gjør, skjuler koblingen Deaktiver. Alle med litt WordPress kunnskap kan generere en deaktiveringsadresse og kjøre den. Men hvis klienten er tøff nok til å gjøre det, vet de allerede hva FTP er, og de kan ganske enkelt slette pluginene på den måten.
Fungerer du på et tema som absolutt krever en bestemt plugin for at den skal fungere ordentlig? Da må du ikke glemme å slippe koden ovenfor.