Ca autorii WordPress în ThemeForest, ne place să-i facem pe clienții noștri fericiți, oferindu-le reparații ocazionale de bug-uri și îmbunătățiri ale temelor noastre. Dar o problemă importantă pentru noi este cum să ne informăm utilizatorii când este disponibilă o actualizare pentru descărcare.
În cele mai vechi timpuri, fiecare dintre noi a trebuit să codificăm în propriile noastre implementări un notificator de temă actualizat. În timp ce există o casetă de selectare pentru a permite notificările privind actualizările de articole din Envato Marketplaces, utilizatorii trebuie să îl pornească pentru fiecare element și să efectueze manual actualizarea temelor.
Nu ar fi mai bine dacă notificările de actualizare ar fi afișate în cadrul administratorului WordPress în sine? Și actualizările pot fi efectuate imediat în cadrul administratorului? Din fericire pentru noi, avem acum Envato WordPress Toolkit Plugin și Toolkit Library.
În această serie, veți învăța cum să integrați aceste instrumente în temele dvs..
În acest tutorial vom implementa atât pluginul Envato WordPress Toolkit, cât și Biblioteca în tema noastră. Când tema noastră este activată, utilizatorul va fi rugat să instaleze și să activeze pluginul Toolkit.
Odată ce plugin-ul este activ, tema noastră va verifica periodic actualizările și dacă se va găsi o actualizare, va fi afișată o notificare în admin, care va direcționa utilizatorul către plugin pentru a actualiza tema.
Tutorialul este împărțit în două părți:
Envato WordPress Toolkit vine în două forme care au diferite utilizări și scopuri. Ca să nu ne confundăm cu cei doi, este o comparație:
Vom trebui mai întâi să includeți câteva fișiere în proiectul nostru. Vom lega Pluginul de Instrumente cu tema noastră și vom folosi Activarea Plugin-ului TGM pentru a instala și a activa Toolkit-ul.
Notă: Puteți schimba locația fișierelor de mai sus pentru a se potrivi nevoilor dvs.. Alternativ, puteți descărca sursa completă din linkul de descărcare din partea de sus a acestui articol.
Acum că avem fișierele necesare, să începem să codificăm. Va trebui să includem clasa de activare a pluginului TGM în clasa noastră functions.php și cârlig într-o acțiune personalizată WordPress. Aici vom pune câteva setări pentru TGM și unde vom defini ce pluginuri să includem.
/ ** * Încărcați clasa Activator Plug-in TGM pentru a notifica utilizatorul * să instaleze pluginul Envato WordPress Toolkit * / require_once (get_template_directory (). /Inc/class-tgm-plugin-activation.php '); funcția tgmpa_register_toolkit () // Cod aici add_action ('tgmpa_register', 'tgmpa_register_toolkit');
Apoi, vom configura parametrii de care avem nevoie pentru a include pluginul Toolkit. În interiorul tgmpa_register_toolkit
funcția, adăugați următorul cod. Modificați calea din parametrul sursă dacă ați specificat un alt dosar de plugin în Pasul 1.
// Specificați pluginul Envato Toolkit $ plugins = array (array ('name' => 'Envato WordPress Toolkit', 'slug' => 'envato-wordpress-toolkit-master', 'source' => get_template_directory / force_deactivation '=> false,' external_url '=> "force_deactivation" = "false" ,);
De asemenea, puteți adăuga alte pluginuri prin adăugarea mai multor array la $ pluginuri
variabil.
Apoi, configurați opțiunile pentru TGM. De asemenea, în interiorul tgmpa_register_toolkit
, adăugați următorul cod sub pasul anterior pentru a configura TGM. Nu mă voi arunca în detalii cu privire la ceea ce fac setările individuale. Dacă doriți mai multe informații despre aceste setări, site-ul TGM de activare a plug-in-urilor face o treabă bună de a explica fiecare parte a acestuia.
// domeniu de text i18n utilizat pentru scopuri de traducere $ theme_text_domain = 'implicit'; // Configurarea TGM $ config = array ('domain' => $ theme_text_domain, 'default_path' => ',' parent_menu_slug '=>' admin.php ',' parent_url_slug ' => 'true', 'is_automatic' => true, 'message' => ',' strings '=> , $ theme_text_domain), 'menu_title' => __ ('Instalarea pluginurilor, $ theme_text_domain),' installing '=> greșit cu pluginul API. ', $ theme_text_domain),' notice_can_install_required '=> _n_noop (' Această temă necesită pluginul următor:% 1 $ s. ',' Această temă necesită următoarele pluginuri:% 1 $ s. 'notice_can_install_recommended' => _n_noop ('Această temă recomandă pluginul următor:% 1 $ s.', 'Această temă recomandă următoarele pluginuri:% 1 $ s.'), 'notice_cannot_install' => _n_noop nu aveți permisiunile corecte pentru a instala pluginul% s. Contactați administrao r de pe acest site pentru ajutor în obținerea pluginului instalat. ',' Ne pare rău, dar nu aveți permisiunile corecte pentru a instala pluginurile% s. Contactați administratorul acestui site pentru ajutor la obținerea pluginurilor instalate. " ), 'notice_can_activate_required' => _n_noop ('Următorul plugin necesar este momentan inactiv:% 1 $ s.', 'Următoarele pluginuri necesare sunt în prezent inactive:% 1 $ s.'), 'notice_can_activate_recommended' Următorul plugin recomandat este momentan inactiv:% 1 $ s. ',' Următoarele pluginuri recomandate sunt în prezent inactive:% 1 $ s. '),' Notice_cannot_activate '=> _n_noop (' Ne pare rău, dar nu aveți permisiunile corecte pentru a activa pluginul% s. Contactați administratorul acestui site pentru ajutor la obținerea pluginului activat. ',' Ne pare rău, dar nu aveți permisiunile corecte pentru a activa pluginurile% s. Contactați administratorul acestui site pentru ajutor ("Următorul plug-in trebuie să fie actualizat la cea mai recentă versiune pentru a asigura compatibilitatea maximă cu această temă:% 1 $ s.", "Următoarele pluginuri trebuie actualizate la cea mai recentă versiune pentru a asigura compatibilitatea maximă cu această temă:% 1 $ s. "), 'notice_cannot_update' => _n_noop ('Ne pare rău, dar nu aveți permisiunile corecte pentru actualizarea pluginului% s. Contactați administratorul acestui site pentru ajutor în legătură cu actualizarea pluginului. ',' Ne pare rău, dar nu aveți permisiunile corecte pentru actualizarea pluginurilor% s. Contactați administratorul acestui site pentru ajutor privind actualizarea pluginurilor. " ), 'install_link' => _n_noop ('Începeți instalarea pluginului', 'Începeți instalarea pluginurilor'), 'activate_link' => _n_noop (' Return to Required Plugins Installer ', $ theme_text_domain),' plugin_activated '=> __ (' Pluginul a fost activat cu succes ', $ theme_text_domain),' complete '=> __ (Toate pluginurile au fost instalate și activate cu succes% s', $ theme_text_domain ), 'nag_type' => 'actualizat'));
Schimba $ theme_text_domain
variabile la domeniul de text pe care îl utilizați sau lăsați-l ca pe Mod implicit
.
În cele din urmă, să inițializăm TGM chiar înainte de sfârșitul perioadei tgmpa_register_toolkit
funcţie.
tgmpa ($ pluginuri, $ config);
Acum salvează-ți functions.php
Încercați să activați tema. Dacă nu aveți Envato WordPress Toolkit Plugin instalat sau activat încă, atunci ar trebui să vedeți o notificare similară cu aceasta:
Din ceea ce avem acum, putem să ne oprim cu seria și utilizatorii dvs. vor putea să actualizeze tema din cadrul administratorului; cu toate acestea, utilizatorii vor putea vedea doar că există o actualizare dacă se află în interiorul panoului de instrumente Toolkit.
Partea 2 a tutorialului vă va învăța cum să integrați Biblioteca Envato WordPress Toolkit și cum să afișați o notificare de administrare ori de câte ori o actualizare a temei este disponibilă în ThemeForest.