Temalarım için güncelleme bildirimi işlevselliği yapma


17

soru basit :) Ben birçok sitede kullanacağım bir tema yapıyorum. Yani, ben bir hata düzeltmek veya tema yükseltme yapmak her zaman tüm siteye gitmek ve ftp dosyaları istemiyorum.

Wordpress eklenti dizininde barındırılan eklentiler gibi bir güncelleme sistemi yapabileceğiniz herhangi bir yolu var mı.

Cevabınızı dört gözle bekliyorum. Teşekkürler!

çözüldü:

Mükemmel bağlantısı için teşekkürler Chip Bennett. Temalar için güncelleme kitaplığı artık bu sitede kullanılabilir. Burada bulabilirsiniz: http://w-shadow.com/blog/2011/06/02/automatic-updates-for-commercial-themes/

Ücretsiz olarak sunulan mükemmel bir iş görürseniz her zaman bağışta bulunun.


Eklenti Güncelleme Denetleyicisi'ni kullanın! Hem eklentiler hem de temalar için çalışır. github.com/YahnisElsts/plugin-update-checker
transbetacism

Yanıtlar:


9

Ayrıca çekirdek güncelleme yordamına da bağlanabilirsiniz. (Eğitici bağlantılar arıyorum, ancak Google-fu'm bu sabah beni başarısızlığa uğrattı.)

DÜZENLE:

Bu öğreticinin yardımcı olup olmadığını görün . Özel / ticari (yani depoda barındırılmayan) Eklentiler için otomatik yükseltmelerin nasıl uygulanacağını açıklar.


1
Bencepre_set_site_transient_update_plugins
Wyck

Teşekkürler! Ben bağlantı üzerinden gidin ve eklenti kodları işe yaramadı ama ben birkaç gün sonra bir yapılan temalar için kütüphane değiştirmek için adam talep! Ve şimdi harika çalışıyor! Bağlantıyı soruma koyacağım. Teşekkürler!!
Sisir

1
İşte aynı siteden temaların otomatik olarak yükseltilmesi için öğretici: w-shadow.com/blog/2011/06/02/…
Jaroslav Klimčík

pre_set_site_transient_update_pluginsana sitede yalnızca etkinleştirilmiş temayı çalıştırır. diğer tüm özel tema güncellemeleri çoklu site olsa ve diğer sitelerde diğer özel temayı etkinleştirse bile kontrol edilmez.
vee

3

İlginç bir soru! Aslında, güncelleme kontrol etmek için bir hizmet yapmak gerektiğini düşünüyorum! Alanadiniz.com.tr / api / update-check gibi! Daha sonra bu XML veya JSON veya sürüm, güncelleme dosyasının url'si (güncelleme dosyası bir zip dosyası olmalıdır) gibi güncelleme ile ilgili bazı yararlı bilgiler döndürebilir!

Temanızda şunlar olabilir:

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

Bu nedenle, yukarıdaki url'den (alanadiniz.com.trn / api / update-check) bir güncelleme tespit ettiğinizde, JSO verilerini aşağıdaki gibi döndürdüğünü varsayın: {"version": "1.2", "file": "theme.zip"}

Yeni güncellemeyi kontrol etmek için sürümü karşılaştırıyorsunuz! Ardından bu işlevle varsayılan temaya geçin http://codex.wordpress.org/Function_Reference/switch_theme (kullanıcılar siteye eriştiklerinde bir solucan sitesi görürler)! Daha sonra, kodunuz zip dosyasını indirmek için curl veya hatta file_get_contents kullanabilir (bu durumda theme.zip)! Ardından, tema klasörünüzdeki tüm dosyaları silin, ardından zip dosyasını genişletin ve içeriğini tema klasörüne kopyalayın! Bu şekilde çalışması gerektiğini düşünüyorum!

WordPress'in ne yaptığına bir göz atmak isteyebilirsiniz! Ben wp-admin / include / update-core.php, line 288, function update_core dosyasında buldum


3
Temelde bu ancak curl veya file_get kullanmak yerine WordPress HTTP API'sini kullanın, codex.wordpress.org/HTTP_API
Wyck

Cool Wyck, bilmiyordum;)!
kureikain

1
nihayet bu konuda araştırma başlatmak için biraz zaman var! Temanın güncel sürümü için bu işlevi codex.wordpress.org/Function_Reference/get_theme_data kullanabilirim . Belirttiğiniz yaklaşımla çalışmaya başlayacağım.
Sisir
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.