Se eu escrever um plugin privado, existe alguma maneira de usar o mecanismo de atualização automática do WordPress para atualizá-lo?
Quero encapsular a funcionalidade, mas é específica para meus próprios 5 ou mais blogs, portanto, não é um bom candidato para o recurso de plugins públicos. Mas eu amo o mecanismo de atualização fácil.
Existe uma maneira de fazer isso?
Respostas:
Parece que o código aplicável é
wp-includes/update.php
,wp_update_plugins()
:Ele verifica especificamente api.wordpress.org. Tecnicamente, seria possível passar uma chave dentro
$to_send
para delegar a verificação, mas, pelo que sei, isso não é um recurso suportado.Se você se conectar,
set_site_transient_update_plugins
poderá adicionar seus próprios detalhes de pacote a essa variável. Parece que esses valores serão confiáveis quando você executar o atualizador de plugins. Vejawp-admin/update.php
ewp-admin/includes/class-wp-upgrader.php
. Dado o código nessas duas funções, acho que seria possível injetar seu próprio servidor de atualização, você só precisa ver como os detalhes do pacote são formatados e combinar com isso.fonte
Este plugin faz isso para você:
Repositório do GitHub
fonte
wp-update-server
, escrito pelo mesmo autor;) github.com/YahnisElsts/wp-update-server Ao usar este servidor, você pode proteger seus plug-ins, como descrito aqui: w-shadow.com/blog/2013/03/19/…Se você gosta de graça ... e deseja usar algo como GitHub, GitLab ou BitBucket, este é um plug-in de boa qualidade e suporte para manipulá-lo (suporta privado e empresa):
https://github.com/afragen/github-updater
fonte
Estou olhando para a mesma coisa. Alguns links que eu achei que podem ser úteis:
O primeiro são algumas informações e ponteiros para a API de atualizações. O segundo é um trecho de código que mostra como realmente solicitar informações da API.
fonte
Você pode conferir o plug-in Kit de Desenvolvimento do WordPress . Migrei recentemente meu sistema de atualização proprietário para este plug-in. O plug-in agora serve como processador de back-end para minhas atualizações de plug-ins premium.
Essa configuração é semelhante à solução fornecida pelo agileapricot acima. Ele será instalado como um plug-in padrão em um site WordPress. Você hospeda seus arquivos .zip premium e o plugins.json nos diretórios de produção ou pré-lançamento em seu servidor (especificado nas configurações do plug-in).
O plug-in também permite listar as versões do plug-in e pode até fornecer um download para os arquivos em páginas públicas, protegidas por senha ou protegidas por assinatura. Você pode ver um exemplo da lista de versões na página aqui .
Uso o plug-in há meses para publicar o log de alterações dos meus complementos premium, a lista de versões atuais e as listas de downloads dos meus titulares de assinatura Premier. Agora, com a versão 0.7.01, está funcionando como destino de consulta para atualizações embutidas do WordPress.
Espero que alguns de vocês achem útil.
fonte
Se você deseja uma solução hospedada que não precisa gerenciar, consulte o Kernl ( https://kernl.us ). É um serviço que fornece a infraestrutura para atualizar plug-ins e facilita a integração em seus próprios plug-ins.
fonte
você pode usar este plug-in comercial: http://autohosted.com/ sem limitação e possui vários outros recursos que podem ser necessários:
fonte