Când utilizați Licențiere Software, există mai multe lucruri care pot face ca actualizările pluginurilor să nu apară.
1. Numerele versiunilor nu sunt sincronizate.
Există trei locuri unde trebuie să incrementați software-ul atunci când lansați o nouă versiune.
A. Caseta meta de licențiere pe pagina dvs. de descărcare

B. În fișierul dvs. Updater. Teme au un fișier numit theme-updater.php, iar pluginurile au un cod chiar în fișierul principal al pluginului.
Teme au ceva de genul acesta:
$config = array( 'remote_api_url' => 'https://easydigitaldownloads.com', // Site where EDD is hosted 'item_name' => 'Theme Name', // Name of theme 'item_id' => 123, // ID of download 'theme_slug' => 'theme-slug', // Theme slug 'version' => '1.4', // The current version of this theme 'author' => 'Easy Digital Downloads', // The author of this theme 'download_id' => '', // Optional, used for generating a license renewal link 'renew_url' => '' // Optional, allows for a custom license renewal link ),
Observați „version” acolo. Trebuie să corespundă cu ceea ce aveți în Caseta meta de mai sus.
Pluginuri au ceva de genul acesta:
$edd_updater = new EDD_SL_Plugin_Updater( EDD_SAMPLE_STORE_URL, __FILE__, array(
'version' => '1.4', // current version number
'license' => $license_key, // license key (used get_option above to retrieve from DB)
'item_id' => EDD_SAMPLE_ITEM_ID, // download ID on your site
'author' => 'EDD Team' // author of this plugin
)
);
Observați și numărul versiunii din acel cod.
C. Antetul pluginului.
La fel ca orice alt plugin, există un număr de versiune în antet. Exemplu:
<!--?php
/**
* Plugin Name: Easy Digital Downloads
* Plugin URI: https://easydigitaldownloads.com
* Description: Serve Digital Downloads Through WordPress
* Author: EDD Teak
* Author URI: https://easydigitaldownloads.com
* Version: 1.4
Important: Toate aceste trei numere de versiune trebuie să corespundă.
2. Numele descărcării nu corespunde și nu este specificat item_id
Pentru ca actualizatorul de licență să primească actualizări de la descărcarea corectă de pe site-ul dvs., cheile item_name și item_id sunt incluse în matricea demonstrată mai sus. Nu este necesar să le includeți pe amândouă. Dacă ambele sunt prezente, valoarea item_id va fi utilizată, iar item_name va fi ignorată.
Dacă se utilizează doar item_id (recomandat), valoarea trebuie să corespundă *exact* ID-ului real al descărcării pe site-ul dvs. web.
3. Utilizarea unui plugin de securitate sau a regulilor htaccess care blochează cererile ?edd_action=get_version/activate_license
Unele pluginuri și reguli .htaccess blochează variabilele get precum cea de mai sus, deoarece sunt frecvent utilizate de atacatori. Căutați aceste setări și asigurați-vă că sunt dezactivate.
4. De ce nu funcționează pe configurația mea multisite?
Pluginul trebuie activat fie prin rețeaua multisite, fie prin unul dintre site-urile individuale. Actualizatorul personalizat funcționează doar atunci când pluginul este activat; altfel, codul nu poate rula.
Administratorul de rețea va vedea actualizări prin tabloul de bord al Administratorului de rețea doar dacă pluginul este activat la nivel de rețea SAU dacă pluginul este activat pe site-ul principal. Notă, site-ul principal este site-ul WordPress din rețea etichetat Principal:
Notă: Administratorul de rețea nu va vedea o notificare de actualizare din tabloul de bord al Administratorului de rețea dacă pluginul este activ pe oricare dintre celelalte site-uri din rețea. Dar administratorul de rețea poate vedea și actualiza pluginul prin lista de pluginuri a site-ului, unde pluginul este activat.
Doar Administratorii de rețea vor vedea notificarea de actualizare, deoarece acesta este singurul nivel de utilizator care poate actualiza pluginuri pe multisite.
Asta înseamnă că, pentru ca actualizările să apară în tabloul de bord al Administratorului de rețea, fără a activa pluginul la nivel de rețea, trebuie să se întâmple următoarele:
- Activați pluginul pe site-ul principal
- Activați cheia de licență pe site-ul principal
- Vizitați pagina Pluginuri pe site (sau Administrator rețea → Acasă → Actualizări). Notă, deși un administrator de site care vizitează ecranul Pluginuri va declanșa verificarea unei actualizări, notificarea va apărea doar Administratorilor de rețea.
- Acest lucru pune în cache actualizările de pluginuri disponibile într-un transient la nivel de rețea.
- Ca Administrator de Rețea, puteți accesa Rețea → Pluginuri și vedeți actualizarea.

De ce unele pluginuri afișează o notificare de actualizare când nu sunt activate pe niciunul dintre site-urile multisite?
Pluginurile de pe wp.org vor afișa că o actualizare este disponibilă fără a fi activate.
5. Parametru __FILE__ incorect furnizat clasei updater
Dacă extindeți clasa updater dintr-un fișier diferit de fișierul principal al pluginului, adăugați define('YOUR_PREFIX_PLUGIN_FILE', __FILE__ ); în fișierul principal al pluginului, și apoi în loc să apelați __FILE__ ca al doilea parametru al noii clase EDD_SL_Plugin_Updater, apelați YOUR_PREFIX_PLUGIN_FILE acolo.

