Ao usar o Licenciamento de Software, há várias coisas que podem fazer com que as atualizações de plugins não apareçam.
1. Não ter os números de versão em sincronia.
Existem três locais onde você deve incrementar seu software ao lançar uma nova versão.
A. A caixa de metadados de Licenciamento na sua página de download

B. No seu arquivo Updater. Temas têm um arquivo chamado theme-updater.php, e plugins têm algum código diretamente no arquivo principal do plugin.
Temas têm algo como isto:
$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 ),
Note o ‘version’ aqui. Ele deve corresponder ao que você tem na Caixa de Metadados acima.
Plugins têm algo como isto:
$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
)
);
Note o número da versão nesse código também.
C. O cabeçalho do plugin.
Assim como qualquer outro plugin, há um número de versão no cabeçalho. Exemplo:
<!--?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
Importante: Todos os três desses números de versão devem corresponder.
2. Incompatibilidade do nome do download e nenhum item_id especificado
Para que o atualizador de licença receba atualizações do download correto em seu site, as chaves item_name e item_id são incluídas na matriz demonstrada acima. Não é necessário incluir ambas. Se ambas estiverem presentes, o valor de item_id será usado, e item_name será desconsiderado.
Se apenas item_id for usado (recomendado), o valor deve corresponder *exatamente* ao ID real do download em seu site.
3. Usando um plugin de segurança ou regras htaccess que bloqueiam as requisições ?edd_action=get_version/activate_license
Alguns plugins e regras .htaccess bloqueiam variáveis GET como a acima porque elas são comumente usadas por atacantes. Procure por essas configurações e certifique-se de que estejam desativadas.
4. Por que não está funcionando na minha configuração multisite?
O plugin precisa ser ativado através da rede multisite ou através de um dos sites individuais. O atualizador personalizado só funciona quando o plugin está ativado; caso contrário, o código não pode ser executado.
O Administrador da Rede só verá atualizações através do Painel do Administrador da Rede, se o plugin for Ativado na Rede OU se o plugin for ativado no site Principal. Nota, o site principal é o site WordPress na rede rotulado como Principal:
Nota: O Administrador da Rede não verá um aviso de atualização do Painel do Administrador da Rede se o plugin estiver ativo em qualquer um dos outros sites da rede. Mas o administrador da rede pode ver e atualizar o plugin através da lista de plugins do site, onde o plugin está ativado.
Apenas Administradores da Rede verão o aviso de atualização, pois esse é o único nível de usuário que pode atualizar plugins em multisite.
Isso significa que, para que as atualizações apareçam no Painel do Administrador da Rede, sem Ativar o plugin na Rede, o seguinte precisa acontecer:
- Ativar o plugin no site Principal
- Ativar a chave de licença no site Principal
- Visitar a página de Plugins do site (ou Rede de Administradores → Início → Atualizações). Nota, embora um administrador do site visitando a tela de Plugins acione a verificação de uma atualização, o aviso só aparecerá para Administradores da Rede.
- Isso armazena em cache as atualizações de plugins disponíveis em um transient em toda a rede.
- Como Administrador de Rede, você pode acessar Rede → Plugins e ver a atualização.

Por que alguns plugins mostram uma notificação de atualização quando não estão ativados em nenhum dos sites da rede?
Plugins no wp.org mostrarão que uma atualização está disponível sem estarem ativados.
5. Parâmetro __FILE__ incorreto fornecido à classe de atualização
Se você estiver estendendo a classe de atualização de um arquivo diferente do arquivo principal do plugin, adicione define('YOUR_PREFIX_PLUGIN_FILE', __FILE__ ); ao arquivo principal do plugin e, em seguida, em vez de chamar __FILE__ como o segundo parâmetro da nova classe EDD_SL_Plugin_Updater, chame YOUR_PREFIX_PLUGIN_FILE lá.

