pytanie jest proste :) Tworzę motyw, którego będę używać w wielu witrynach. Nie chcę więc wchodzić na całą stronę i pobierać plików za każdym razem, gdy naprawiam błąd lub aktualizuję motyw.
Czy jest jakiś sposób, aby zrobić system aktualizacji, taki jak wtyczki hostowane w katalogu wtyczek wordpress.
Czekam na twoją odpowiedź. Dzięki!
Rozwiązany:
Dzięki Chip Bennett za jego doskonały link. Biblioteka aktualizacji motywów jest teraz dostępna w tej witrynie. Można go znaleźć tutaj: http://w-shadow.com/blog/2011/06/02/automatic-updates-for-commercial-themes/
Zawsze rozważ darowiznę, jeśli zobaczysz doskonałą pracę, która została udostępniona za darmo.
theme-development
updates
Sisir
źródło
źródło
Odpowiedzi:
Możesz także podłączyć się do podstawowej procedury aktualizacji. (Szukam linków do samouczków, ale dziś rano mój Google-fu zawodzi.)
EDYTOWAĆ:
Sprawdź, czy ten samouczek pomaga . Wyjaśnia, jak wdrożyć automatyczne aktualizacje wtyczek prywatnych / komercyjnych (tj. Nie hostowanych w repozytorium).
źródło
pre_set_site_transient_update_plugins
pre_set_site_transient_update_plugins
uruchamia tylko aktywowany motyw na stronie głównej. wszystkie inne niestandardowe aktualizacje motywu nie zostaną sprawdzone, nawet jeśli jest to wiele witryn i aktywowano inny niestandardowy motyw w innych witrynach.Pytanie o zainteresowanie! W rzeczywistości uważam, że powinieneś zrobić usługę, aby sprawdzić aktualizację! Takich jak twoja_domena.comn / api / update-check! Może to zwrócić XML lub JSON lub niektóre przydatne informacje związane z aktualizacją, takie jak wersja, adres URL pliku aktualizacji (zaktualizowany plik powinien być plikiem zip)!
W swoim motywie możesz mieć:
Kiedy więc wykryjesz aktualizację z powyższego adresu URL (twojadomena.comn / api / update-check), załóż, że zwraca dane JSO w następujący sposób: {„wersja”: „1.2”, „plik”: „theme.zip”}
Porównujesz wersję, aby sprawdzić, czy jest nowa aktualizacja! Następnie przejdź do domyślnego motywu za pomocą tej funkcji http://codex.wordpress.org/Function_Reference/switch_theme (aby użytkownicy wchodzący na stronę zobaczyli działającą stronę)! Następnie twój kod może użyć curl lub nawet file_get_contents, aby pobrać plik zip (w tym przypadku theme.zip)! Następnie usuwasz cały plik z folderu motywu, a następnie wyciągasz plik zip i kopiujesz jego zawartość do folderu motywu! Myślę, że w ten sposób powinno działać!
Możesz rzucić okiem na to, co zrobił WordPress! Znalazłem to w pliku wp-admin / include / update-core.php, wiersz 288, funkcja update_core
źródło