Si j'écris un plugin privé, existe-t-il un moyen d'utiliser le mécanisme de mise à jour automatique de WordPress pour le mettre à jour?
Je veux encapsuler la fonctionnalité, mais elle est spécifique à mes 5 blogs environ, donc ce n'est pas un bon candidat pour la ressource de plugins publics. Mais j'aime le mécanisme de mise à jour facile.
Y a-t-il un moyen de faire cela?
Réponses:
On dirait que le code applicable est
wp-includes/update.php
,wp_update_plugins()
:Il vérifie spécifiquement api.wordpress.org. Techniquement, il serait possible de passer une clé à l'intérieur
$to_send
pour déléguer le contrôle, mais à ma connaissance, cette fonctionnalité n'est pas prise en charge.Si vous vous connectez,
set_site_transient_update_plugins
vous pouvez ajouter les détails de votre propre paquet dans cette variable. Il semble que ces valeurs seront approuvées lorsque vous exécuterez le programme de mise à jour du plug-in. Voirwp-admin/update.php
etwp-admin/includes/class-wp-upgrader.php
. Étant donné le code de ces deux fonctions, je pense qu’il serait possible d’injecter votre propre serveur de mise à jour. Il vous suffit de regarder comment les détails du package sont formatés et adaptés.la source
Ce plugin le fait pour vous:
Référentiel GitHub
la source
wp-update-server
, écrit par le même auteur;) github.com/YahnisElsts/wp-update-server En utilisant ce serveur, vous pouvez sécuriser vos plugins, décrit ici: w-shadow.com/blog/2013/03/19/…Si vous aimez la gratuité ... et souhaitez utiliser quelque chose comme GitHub, GitLab ou BitBucket, il s'agit d'un plug-in de bonne qualité et pris en charge pour sa gestion (supporte les entreprises et les particuliers):
https://github.com/afragen/github-updater
la source
Je regarde dans la même chose. Quelques liens que j'ai trouvés pourraient être utiles:
Le premier est quelques informations et des pointeurs vers l'API de mise à niveau. Le second est un extrait de code indiquant comment demander des informations à l'API.
la source
Vous voudrez peut-être consulter le plugin WordPress Development Kit . J'ai récemment migré mon système de mise à jour propriétaire vers ce plugin. Le plugin sert maintenant de processeur principal pour les mises à jour premium de mon plugin.
Cette configuration est similaire à la solution fournie par agileapricot ci-dessus. Il s’installera comme un plugin standard sur un site WordPress. Vous hébergez vos fichiers .zip premium et le fichier plugins.json dans des répertoires de production ou des versions préliminaires de votre serveur (spécifiés dans les paramètres du plug-in).
Le plug-in vous permet également de répertorier les versions de plug-in et peut même fournir un téléchargement pour les fichiers sur des pages publiques, protégées par mot de passe ou protégées par abonnement. Vous pouvez voir un exemple de la liste des versions sur page ici .
Cela fait des mois que j'utilise le plug-in pour publier le journal des modifications de mes add-onions premium, de la liste des versions actuelles et des listes de téléchargement pour mes détenteurs d'abonnement Premier. Désormais, avec la version 0.7.01, il fonctionne comme destination de la requête pour les mises à jour en ligne de WordPress.
J'espère que certains d'entre vous le trouvent utile.
la source
Si vous souhaitez une solution hébergée que vous n'avez pas à gérer, consultez Kernl ( https://kernl.us ). C'est un service qui fournit l'infrastructure de mise à jour des plugins et facilite son intégration dans vos propres plugins.
la source
vous pouvez utiliser ce plugin commercial: http://autohosted.com/ no limitation et avoir plusieurs autres fonctionnalités dont vous pourriez avoir besoin:
la source