Wie kann ich mein Plugin automatisch aktualisieren?

Wie kann ich mein Plugin mit der New version available. Upgrade Automatically New version available. Upgrade Automatically angezeigt, wenn mein Plugin eine neue Version hat? Speziell für Plugins, die nicht im WP.org-Repository gehostet werden.

Solutions Collecting From Web of "Wie kann ich mein Plugin automatisch aktualisieren?"

Diese Bibliothek integriert automatische Updates für privat gehostete Plugins. Sieht großartig aus.

Der einfachste Weg, um dies zu tun, ist, dass Ihr Plugin “nach Hause” ruft, um eine URL auf Ihrer Website zu überprüfen, die die aktuelle Version Ihres Plugins zurückgibt.

Auf diese Weise kann Ihr Plugin (auf einer anderen Website installiert) seine Version mit der “aktuellen” Version auf Ihrer Website vergleichen, um zu sehen, ob es gleich oder neuer ist.

Bearbeiten: Beispielcode

Ich sollte darauf hinweisen, bevor Sie dies implementieren : Dies wird ein Banner über den oberen Rand des Bildschirms hinzufügen. Wenn Sie nur ein Plugin auf der linken Seite finden möchten, das automatisch aktualisiert wird, denke ich, dass dies automatisch geschieht, wenn Sie die neue Version in das WordPress-Repository hochladen. Wenn Sie möchten, dass das Banner oben angezeigt wird, fahren Sie fort.

Ich würde eine Vorlage speziell für diese Seite erstellen, so dass die Kopf- und Fußzeile nicht enthalten sind:

 < ?php // Template Name: Bare Template while (have_posts()) : the_post(); the_content(); endwhile; ?> 

Auf diese Weise wird nur der Seiteninhalt gedruckt, was für das, was wir tun, gut ist.

Als nächstes richten Sie eine Seite ein, die diese Vorlage verwendet, sagen wir “neueste-Plugin-Version”. Wenn Sie diese Seite jetzt in Ihrem Browser anzeigen, sollte nur der Text von der Seite ohne zusätzlichen HTML-Code angegeben werden.

Erstellen Sie in Ihrem Plugin eine function, die Ihre Nachricht ausgibt. Ich habe in diesem Beispiel Inline-Stile verwendet. Sie können classn verwenden, wenn Sie möchten.

 function yourpluginname_check_for_new_version() { /* You probably shouldn't check for updates more than once a day, for everyone's bandwidth's sake. */ $last_check = get_option('yourpluginname_lastcheck'); if ( $last_check + 86400 > time() ) { return; } // If we're still here, check your site for a new version. $current_version = get_option('yourpluginname_version'); $latest_version = file_get_contents('http://www.yourdomain.com/latest-plugin-version/'); if ( $current_version != $latest_version ) { ?> 
There's a new version of MY PLUGIN available! You should upgrade now.
< ?php } // Log that we've checked for an update now. update_option('yourpluginname_lastcheck', time()); }

Und dann, um es zu binden, damit es die function ausführt:

 add_action('admin_notices', 'yourpluginname_check_for_new_version'); 

Nun sollten Sie in Ihrer Installationsfunktion eine Option für die Versionsnummer hinzufügen, die im WordPress des Benutzers gespeichert werden soll:

 update_option( 'yourpluginname_version', '2.0' ); 

Sie können update_option anstelle von add_option verwenden, da die Option hinzugefügt wird, falls sie nicht bereits existiert.

Das sollte es tun.

Es gibt ein kostenloses Plugin, das ein automatisches Update für privat gehostete Plugins ermöglicht: https://github.com/meglio/wp-upgreme