Integrazione del toolkit Envato WordPress sul tema il plugin

Come autori di WordPress in ThemeForest, ci piace rendere felici i nostri clienti fornendo loro occasionalmente correzioni di bug e miglioramenti ai nostri temi. Ma un problema chiave per noi è come avvisare i nostri utenti quando un aggiornamento è disponibile per il download.

Nei tempi passati, ognuno di noi doveva codificare le proprie implementazioni di un notificatore di aggiornamento dei temi. Mentre ora è disponibile una casella di controllo per abilitare le notifiche sugli aggiornamenti degli articoli nei marketplace Envato, gli utenti devono ancora attivarlo per elemento e anche eseguire manualmente l'aggiornamento del tema.

Non sarebbe meglio se le notifiche di aggiornamento fossero visualizzate all'interno dell'amministratore di WordPress stesso? E che gli aggiornamenti possono essere eseguiti subito all'interno dell'amministratore? Fortunatamente per noi, ora abbiamo la libreria Envato WordPress Toolkit Plugin and Toolkit.

In questa serie, imparerai come integrare questi strumenti nei tuoi temi.


Cosa tratteremo in questa serie

In questo tutorial implementeremo sia il plugin e la libreria Envato WordPress Toolkit nel nostro tema. Quando il nostro tema è attivato, all'utente verrà chiesto di installare e attivare il plugin Toolkit.

Una volta che il plugin è attivo, il nostro tema controllerà periodicamente gli aggiornamenti e, se viene trovato un aggiornamento, verrà visualizzata una notifica nell'amministratore che indirizzerà l'utente al plugin per aggiornare il tema.

Il tutorial è diviso in due parti:

  • Parte 1 - Integrazione della classe di attivazione del plug-in TGM per rendere il plug-in Envato WordPress Toolkit un requisito quando si utilizza il nostro tema; e
  • Parte 2 - Implementazione della libreria Envato WordPress Toolkit nel nostro tema per consentire il controllo e l'aggiornamento della nuova versione del tema.

Plugin e libreria?

Il Toolkit di Envato WordPress è disponibile in due forme che hanno un uso e uno scopo diversi. In modo che non ci si confonda con i due, ecco un confronto:

  • Toolkit Plugin - Questo è un plugin standalone che può essere installato da qualsiasi cliente Envato nel proprio sito WordPress. Una volta attivato, tutti i temi acquistati in precedenza e gli aggiornamenti del tema potrebbero essere scaricati direttamente dall'amministratore.
  • Libreria Toolkit - Codice che può essere incluso dagli autori nei temi WordPress, che consente al tema di utilizzare l'API di Envato Marketplace per verificare gli aggiornamenti della versione del tema e aggiornarsi.

1. Compresi i file richiesti

Prima dovremo includere alcuni file nel nostro progetto. Inseriremo il plug-in Toolkit con il nostro tema e utilizzeremo l'attivazione del plug-in TGM per installare e attivare il Toolkit.

  1. Scarica l'attivazione del plugin TGM e inserisci lo script della classe principale nel inc cartella nel tuo tema. Il percorso dovrebbe essere: MyTheme / inc / classe-TGM-plugin-activation.php
  2. Successivamente, scarica il file ZIP Envato WordPress Toolkit Plugin e inseriscilo in una nuova cartella nel tuo tema chiamato plugin. Il percorso dovrebbe essere: MyTheme / plugins / envato-wordpress-toolkit-master.zip

Nota: È possibile modificare la posizione dei file sopra per soddisfare le proprie esigenze.  In alternativa, puoi scaricare l'intera fonte dal link di download nella parte superiore di questo articolo.


2. Funzione gancio TGM

Ora che abbiamo i file richiesti, iniziamo la codifica. Dovremo includere la classe di attivazione del plug-in TGM nella nostra functions.php e agganciati a un'azione WordPress personalizzata. Qui è dove inseriremo alcune impostazioni per TGM e dove definiremo quali plug-in includere.

 / ** * Caricare la classe Attivatore plugin TGM per notificare all'utente * l'installazione del plugin Envato WordPress Toolkit Plugin * / require_once (get_template_directory (). '/Inc/class-tgm-plugin-activation.php'); function tgmpa_register_toolkit () // Code here add_action ('tgmpa_register', 'tgmpa_register_toolkit');

3. Specifica del plug-in Toolkit

Successivamente, configuriamo i parametri che devono includere il plug-in Toolkit. Dentro il tgmpa_register_toolkit funzione, aggiungere il seguente codice. Cambia il percorso nel parametro source se hai specificato un'altra cartella di plugin in Passo 1.

 // Specifica il plugin Envato Toolkit $ plugins = array (array ('name' => 'Envato WordPress Toolkit', 'slug' => 'envato-wordpress-toolkit-master', 'source' => get_template_directory (). ' /plugins/envato-wordpress-toolkit-master.zip ',' required '=> true,' version '=>' 1.5 ',' force_activation '=> true,' force_deactivation '=> false,' external_url '=> " ,),);

Puoi anche aggiungere altri plugin aggiungendo altri array al $ plugins variabile.


4. Configurazione di TGM

Quindi imposta le opzioni per TGM. Anche dentro il tgmpa_register_toolkit funzione, aggiungere il seguente codice sotto il passaggio precedente per configurare TGM. Non approfondirò le specifiche su cosa fanno le singole impostazioni. Se desideri maggiori informazioni su queste impostazioni, il sito Web di attivazione del plug-in TGM fa un buon lavoro di spiegazione di ogni sua parte.

 // dominio di testo i18n utilizzato per scopi di traduzione $ theme_text_domain = 'default'; // Configurazione di TGM $ config = array ('dominio' => $ theme_text_domain, 'default_path' => ", 'parent_menu_slug' => 'admin.php', 'parent_url_slug' => 'admin.php', 'menu' => 'install-required-plugins', 'has_notices' => true, 'is_automatic' => true, 'message' => ", 'strings' => array ('page_title' => __ ('Installa i plugin necessari' , $ theme_text_domain), 'menu_title' => __ ('Installa plugin', $ theme_text_domain), 'installa' => __ ('Installazione plugin:% s', $ theme_text_domain), 'oops' => __ ('Qualcosa è andato errato con l'API plugin. ', $ theme_text_domain),' notice_can_install_required '=> _n_noop (' Questo tema richiede il seguente plugin:% 1 $ s. ',' Questo tema richiede i seguenti plugin:% 1 $ s. '), 'notice_can_install_recommended' => _n_noop ('Questo tema raccomanda il seguente plugin:% 1 $ s.', 'Questo tema raccomanda i seguenti plugin:% 1 $ s.'), 'notice_cannot_install' => _n_noop ('Scusa, ma tu non hanno le autorizzazioni corrette per installare il plugin% s. Contatta l'amministratore r di questo sito per assistenza su come installare il plugin. ',' Spiacente, ma non si dispone delle autorizzazioni corrette per installare i plugin% s. Contatta l'amministratore di questo sito per assistenza su come installare i plug-in. " ), 'notice_can_activate_required' => _n_noop ('Il seguente plugin richiesto è attualmente inattivo:% 1 $ s.', 'I seguenti plugin richiesti sono attualmente inattivi:% 1 $ s.'), 'notice_can_activate_recommended' => _n_noop (' Il seguente plugin consigliato è attualmente inattivo:% 1 $ s. ',' I seguenti plugin consigliati sono attualmente inattivi:% 1 $ s. '),' Notice_cannot_activate '=> _n_noop (' Mi dispiace, ma non hai le autorizzazioni corrette per attivare il plugin% s Contatta l'amministratore di questo sito per assistenza su come attivare il plugin. ',' Spiacente, ma non hai le autorizzazioni corrette per attivare i plugin% s. Contatta l'amministratore di questo sito per assistenza su attivazione dei plugin. '),' notice_ask_to_update '=> _n_noop (' Il seguente plugin deve essere aggiornato alla sua ultima versione per garantire la massima compatibilità con questo tema:% 1 $ s. ',' I seguenti plugin devono essere aggiornati alla loro ultima versione per garantire la massima compatibilità con questo tema:% 1 $ s. '), 'notice_cannot_update' => _n_noop ('Scusa, ma non hai le autorizzazioni corrette per aggiornare il plugin% s. Contatta l'amministratore di questo sito per assistenza su come aggiornare il plug-in. ',' Scusa, ma non hai le autorizzazioni corrette per aggiornare i plugin% s. Contatta l'amministratore di questo sito per assistenza su come ottenere i plugin aggiornati. ' ), 'install_link' => _n_noop ('Inizia l'installazione del plugin', 'Inizia l'installazione dei plugin'), 'activate_link' => _n_noop ('Attiva il plugin installato', 'Attiva i plugin installati'), 'return' => __ (' Ritorna a Plugin Richiesti Installer ', $ theme_text_domain),' plugin_activated '=> __ (' Plugin attivato con successo. ', $ Theme_text_domain),' complete '=> __ (' Tutti i plugin installati e attivati ​​con successo.% S ', $ theme_text_domain ), 'nag_type' => 'aggiornato'));

Cambiare il $ theme_text_domain variabile al dominio di testo che stai usando o lasciare come predefinito.


5. Avviare TGM

Infine, inizializziamo TGM subito prima della fine del tgmpa_register_toolkit funzione.

 tgmpa ($ plugins, $ config);

Ora salva il tuo functions.php


Cercandolo

Prova ad attivare il tuo tema. Se non hai il Envato WordPress Toolkit Plugin installato o attivato ancora, quindi dovresti vedere una notifica simile a questa:


Conclusione

Da quello che abbiamo adesso, possiamo effettivamente fermarci con la serie e i tuoi utenti potranno aggiornare il tema dall'interno dell'amministratore; tuttavia, gli utenti saranno in grado di vedere che c'è un aggiornamento se sono all'interno del pannello di amministrazione di Toolkit.

La parte 2 del tutorial ti insegnerà come integrare la libreria di strumenti di WordPress di Envato e come visualizzare una notifica di amministratore ogni volta che un aggiornamento al tema è disponibile in ThemeForest.