Effettuare l'aggiornamento delle funzionalità di notifica per i miei temi


17

la domanda è semplice :) Sto creando un tema che userò in molti siti. Quindi, non voglio andare su tutto il sito e ftp i file ogni volta che correggo un bug o faccio un aggiornamento del tema.

Esiste un modo per creare un sistema di aggiornamento come i plugin ospitati nella directory dei plugin di wordpress.

In attesa della vostra risposta. Grazie!

risolto:

Grazie Chip Bennett per il suo eccellente collegamento. La libreria di aggiornamento per i temi è ora disponibile in quel sito. Puoi trovarlo qui: http://w-shadow.com/blog/2011/06/02/automatic-updates-for-commercial-themes/

Prendi sempre in considerazione la donazione se vedi alcuni lavori eccellenti resi disponibili gratuitamente.


Usa il plugin Update Plugin! Funziona sia con plugin che con temi. github.com/YahnisElsts/plugin-update-checker
transbetacism

Risposte:


9

È inoltre possibile agganciarsi alla routine di aggiornamento principale. (Sto cercando link tutorial, ma il mio Google-fu mi sta fallendo stamattina.)

MODIFICARE:

Vedi se questo tutorial aiuta . Spiega come implementare gli aggiornamenti automatici per plugin privati ​​/ commerciali (ovvero non ospitati in repository).


1
Penso di sipre_set_site_transient_update_plugins
Wyck,

Grazie! Vado attraverso il tuo link e i codici plugin non hanno funzionato ma chiedo al ragazzo di modificare la libreria per i temi un paio di giorni dopo ne ha creato uno! E ora funziona alla grande! Inserirò il link nella mia domanda. Grazie!!
Sisir,

1
Ecco il tutorial per gli aggiornamenti automatici dei temi anche dallo stesso sito: w-shadow.com/blog/2011/06/02/…
Jaroslav Klimčík

pre_set_site_transient_update_pluginsesegue solo il tema attivato sul sito principale. tutti gli altri aggiornamenti di temi personalizzati non verranno controllati anche se si tratta di più siti e sono stati attivati ​​altri temi personalizzati su altri siti.
V,

3

Una domanda di interesse! In effetti, penso che dovresti fare un servizio per controllare l'aggiornamento! Come yourdomain.comn / api / update-check! Quindi questo può restituire XML o JSON o alcune informazioni utili relative all'aggiornamento come la versione, l'URL del file di aggiornamento (il file aggiornato dovrebbe essere un file zip)!

Nel tuo tema puoi avere:

    <?php define('OWN_THEME_VERSION', '1.1');

Quindi, quando hai rilevato un aggiornamento dall'URL sopra (tuodominio.comn / api / update-check), supponi che restituisca i dati JSO come segue: {"version": "1.2", "file": "theme.zip"}

Si confronta la versione per verificare la presenza di nuovi aggiornamenti! Quindi passa al tema predefinito con questa funzione http://codex.wordpress.org/Function_Reference/switch_theme (nell'ordine in cui gli utenti accedono al sito, vedono un sito preoccupante)! Successivamente, il tuo codice può usare curl o anche file_get_contents per scaricare il file zip (theme.zip in questo caso)! Quindi, elimini tutti i file nella cartella del tema, quindi estrai il file zip e copi il suo contenuto nella cartella del tema! Penso che in questo modo dovrebbe funzionare!

Potresti dare un'occhiata a quello che ha fatto WordPress! Ho trovato che si trova nel file wp-admin / Includes / update-core.php, riga 288, funzione update_core


3
Fondamentalmente questo, ma invece di usare curl o file_get usa l'API HTTP WordPress, codex.wordpress.org/HTTP_API
Wyck

Fantastico Wyck, non lo sapevo;)!
kureikain,

1
finalmente ho un po 'di tempo per ricominciare! Per la versione corrente del tema posso usare questa funzione codex.wordpress.org/Function_Reference/get_theme_data . Inizierò a lavorare con l'approccio che hai indicato.
Sisir,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.