Zaloguj się
Rozpocznij

Dokumentacja Easy Digital Downloads

Dokumentacja, materiały referencyjne i samouczki dla Easy Digital Downloads 

Licencjonowanie oprogramowania – powiadomienia o aktualizacjach nie są wyświetlane

Podczas korzystania z Licencjonowania oprogramowania, istnieje kilka przyczyn, dla których aktualizacje wtyczek mogą się nie pojawiać.

1. Brak synchronizacji numerów wersji.

Istnieją trzy miejsca, w których musisz zaktualizować swoje oprogramowanie podczas wydawania nowej wersji.

A. Pole meta Licencjonowanie na stronie Twojego pobierania

B. W pliku aktualizatora. Motywy mają plik o nazwie theme-updater.php, a wtyczki mają kod bezpośrednio w głównym pliku wtyczki.

Motywy mają coś takiego:

	$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
	),

Zwróć uwagę na „version” w tym miejscu.  Musi ono odpowiadać temu, co masz w polu Meta powyżej.

Wtyczki mają coś takiego:

$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
)
);

Zwróć również uwagę na numer wersji w tym kodzie.

C. Nagłówek wtyczki.

Podobnie jak każda inna wtyczka, w nagłówku znajduje się numer wersji. Przykład:

 <!--?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

Ważne: Wszystkie te trzy numery wersji muszą być zgodne.

2. Niezgodność nazwy pobierania i brak określonego elementu item_id

Aby aktualizator licencji otrzymywał aktualizacje z właściwego pobierania na Twojej stronie, klucze item_name i item_id są zawarte w powyższej tablicy. Nie jest konieczne uwzględnianie obu. Jeśli oba są obecne, wartość item_id zostanie użyta, a item_name zostanie zignorowane.

Jeśli używany jest tylko item_id (zalecane), wartość musi dokładnie odpowiadać rzeczywistemu identyfikatorowi pobierania na Twojej stronie internetowej.

3. Używanie wtyczki zabezpieczającej lub reguł htaccess blokujących żądania ?edd_action=get_version/activate_license

Niektóre wtyczki i reguły .htaccess blokują zmienne GET, takie jak powyższa, ponieważ są one często używane przez atakujących.  Poszukaj tych ustawień i upewnij się, że są wyłączone.

4. Dlaczego to nie działa w mojej konfiguracji multisite?

Wtyczka musi być aktywowana albo przez sieć multisite, albo przez jedną z poszczególnych witryn. Niestandardowy aktualizator działa tylko wtedy, gdy wtyczka jest aktywowana; w przeciwnym razie kod nie może zostać wykonany.

Administrator sieci zobaczy aktualizacje tylko przez Panel Administratora Sieci, jeśli wtyczka jest aktywowana w sieci LUB wtyczka jest aktywowana na głównej witrynie. Uwaga, główna witryna to witryna WordPress w sieci oznaczona jako Główna:

Uwaga: Administrator sieci nie zobaczy powiadomienia o aktualizacji z Panelu Administratora Sieci, jeśli wtyczka jest aktywna w którejkolwiek z pozostałych witryn w sieci. Ale administrator sieci może zobaczyć i zaktualizować wtyczkę za pośrednictwem listy wtyczek witryny, na której wtyczka jest aktywowana.

Tylko administratorzy sieci zobaczą powiadomienie o aktualizacji, ponieważ jest to jedyny poziom użytkownika, który może aktualizować wtyczki w multisite.

Oznacza to, że aby aktualizacje pojawiły się w Panelu Administratora Sieci, bez aktywowania wtyczki w sieci, musi się wydarzyć następujące rzeczy: 

  1. Aktywuj wtyczkę na głównej witrynie 
  2. Aktywuj klucz licencyjny na głównej witrynie 
  3. Odwiedź stronę Wtyczki (lub Administrator Sieci → Strona główna → Aktualizacje). Uwaga, chociaż administrator witryny odwiedzający ekran Wtyczki wywoła sprawdzenie aktualizacji, powiadomienie pojawi się tylko administratorom sieci.
  4. To buforuje dostępne aktualizacje wtyczek w sieciowym przejściowym czasie.
  5. Jako administrator sieci możesz przejść do Sieć → Wtyczki i zobaczyć aktualizację.

Dlaczego niektóre wtyczki wyświetlają powiadomienie o aktualizacji, mimo że nie są aktywne w żadnej z witryn multisite?
Wtyczki z wp.org będą wyświetlać dostępność aktualizacji, nawet jeśli nie są aktywne.

5. Nieprawidłowy parametr __FILE__ podany do klasy aktualizatora

Jeśli rozszerzasz klasę aktualizatora z pliku innego niż główny plik wtyczki, dodaj define('YOUR_PREFIX_PLUGIN_FILE', __FILE__ ); do głównego pliku wtyczki, a następnie zamiast wywoływać __FILE__ jako drugi parametr nowej klasy EDD_SL_Plugin_Updater, wywołaj tam YOUR_PREFIX_PLUGIN_FILE.

Czy ten artykuł był pomocny?

Zacznij sprzedawać już dziś!

Dołącz do ponad 50 000 sprytnych właścicieli sklepów i zacznij korzystać z najłatwiejszego sposobu sprzedaży produktów cyfrowych za pomocą WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]