WordPress 5.4'e Hazırlanma: Geliştiricilerin Bilmesi Gereken Tema ve Eklenti Değişiklikleri

Yayınlanan: 2020-03-05

WordPress 5.4'ün piyasaya sürülmesiyle birlikte, eklenti ve tema geliştiricilerinin uzantılarını test etmeye ve herhangi bir sorun olmadığından emin olmaya başlama zamanı geldi. Yaklaşan özellikler için yeni API'ler de var. Dün, çekirdek ekip 5.4 için ilk sürüm adayını yayınladı. Resmi sürümün 31 Mart'ta yayınlanması planlanıyor.

Bu gönderi, geliştiricilerin önümüzdeki haftalarda akıllarında tutmaları gereken birkaç önemli değişikliğin bağlantılarını içeren hızlı bir kılavuz görevi görecek. Eklentilerinizi ve temalarınızı test ettiğinizden emin olun.

Tema Geliştiricileri

Blok düzenleyici aracılığıyla kullanımda olan yeni sosyal simgeler bloğunun ekran görüntüsü.
Yeni sosyal simgeler bloğu.

Tema yazarlarının test etmek isteyeceği birkaç değişiklik var. WordPress 5.4, birkaç ekstra tema özelliğine sahiptir. Ayrıca, ön uçta ve blok düzenleyicide tema tasarımlarını bozabilecek biçimlendirmeyle ilgili birkaç değişikliğe sahiptir. Ne yazık ki, WordPress'in birden çok sürümünü desteklemek isteyen tema yazarları için bu değişikliklerden bazıları biraz fazladan CSS şişkinliği anlamına gelebilir.

Sosyal Simgeler ve Düğmeler Blokları

WordPress 5.4 iki yeni blok sunar: sosyal simgeler ve düğmeler. Sosyal simgeler bloğu, kullanıcıların 40'a kadar farklı sosyal ağ için simgeler/bağlantılar eklemesine olanak tanır. Düğme bloğu, kullanıcıların birden çok düğme bloğunu birlikte gruplandırmasına olanak tanır. Özel blok düzenleyici stillerini kullanıma sunan tema yazarlarının, çıktılarının doğru olduğundan emin olmak için bu yeni blokları hesaba katmaları gerekir.

Özel Degrade Hazır Ayarları Oluşturun

Yeni Gradients API, tema yazarlarının, kullanıcıların grup veya düğme bloklarıyla kullanması için özel degrade hazır ayarları tanımlamasına olanak tanır. Tema yazarlarının, varsayılan degrade ön ayarları olan göze batan durumu iyileştirmek için bazı ayak işleri yapması gerekecek. Küçük bir çalışma ile gradyanlar, kullanıcının emrinde yararlı bir araç olabilir. Tema yazarları, desteklememeyi tercih ederlerse degradeleri tamamen devre dışı bırakabilirler.

Düzenleyici İşaretleme ve Stil Değişikliklerini Engelle

Doğrudan belirli editör sınıflarını hedef alan tema yazarlarının blok editör stillerini kontrol etmeleri gerekecektir. editor- ön ekine sahip birçok sınıf, block-editor- ön ekini kullanacak şekilde değiştirilmiştir. .edit-post-layout__content sınıfına sahip sarmalayıcı öğe tamamen kaldırıldı. Bloklardan ve zengin metin bileşeninden birkaç sarmalayıcı öğesi kaldırıldı. Core'un yerleşik dolgusu ve bloklardaki negatif kenar boşlukları yeniden düzenlendi, bu hoş bir ek. Belki de tema yazarları, ön uçla eşleşen temel, çalışan bir düzen sağlamak için birden çok iç içe seçiciye karşı savaşmak zorunda kalmayacak.

Bu değişiklikler, gördüğüm birkaç temayı zaten bozdu. Pek çok tema yazarının blok düzenleyici stillerini güncellemesi gerekme olasılığı yüksektir.

Tema İnceleme Ekibinin daha fazla tema yazarından özel düzenleyici stilleriyle temalar göndermesini istediği bir zamanda, sınıflarda ve işaretlemede bu tür değişiklikler bir güven artışı değildir. Tema geliştiricileri, kaybedecekleri bir savaşta olduklarını kolayca hissedebilirler. Ancak, editör işaretlemesini ön uçla bire bir eşleşmeye daha yakın hale getirmek için çalışmalar ilerliyor. Bir noktada, tema yazarları, kullanıcıları WordPress'in birden çok sürümünde desteklerken artık bu tür değişikliklerle uğraşmak zorunda kalmayacaklarını umabilirler. Şimdilik, biraz dağınık bir geçiş aşamasındalar.

Takvim İşaretleme ve Sınıf Değişiklikleri

Çekirdek ekip, Takvim pencere aracını da etkileyen get_calendar() işlevinin işaretlemesini değiştirdi. Takvim çıktısının artık bir <tfoot> öğesi yok. Bunun yerine, önceki ve sonraki ay bağlantıları, <table> öğesinin altındaki bir <nav> öğesine taşındı.

Takvim çıktısı ayrıca birden çok kimliği ve sınıfı ekler veya değiştirir:

  • sarmalayıcı öğeye .wp-calendar-table eklendi.
  • .wp-calendar-nav gezinme sarmalayıcı öğesine eklendi.
  • .wp-calendar-nav-next , bir sonraki ay bağlantısındaki #next kimliğinin yerini alır.
  • .wp-calendar-nav-prev , önceki ay bağlantısındaki #prev kimliğinin yerini alır.

Bunlar kırılma değişiklikleri. Eski HTML'yi veya kimlikleri hedefleyen herhangi bir özel CSS'nin güncellenmesi gerekecektir.

Geliştiricileri Engelle

Bir blok eklentisi oluşturmak için ilk kodu gösteren bir kod düzenleyicinin ekran görüntüsü.
Blok iskele komut dosyası tarafından oluşturulan ilk JavaScript dosyası.

Özel bloklar oluşturan eklenti geliştiricileri için WordPress 5.4, blok sistemiyle çalışmak için birkaç yeni API ve araç sunar.

Blok İskele

Geliştiriciler, hızlı bir şekilde bir blok eklentisi oluşturmak için yeni bir NPM paketine sahiptir. Tek bir npm init @wordpress/block <plugin-name> komutuyla komut dosyası yeni bir dizin oluşturacak ve bir blok eklentisi oluşturmak için gerekli olan uygun PHP, CSS ve JavaScript dosyalarını oluşturacaktır. Geliştiriciler, varsayılan olarak modern JavaScript araçlarını kullanabilir veya isteğe bağlı olarak bir ES5 sürümünü kullanmayı seçebilir.

Blok iskele paketinin amacı, eklenti yazarlarının sonunda resmi blok dizinine girecek tek bloklu eklentiler oluşturmasıdır.

Koleksiyonlar API'sini Engelle

Blok Koleksiyonları API'si, kategorilere benzer şekilde çalışır. Ancak, ad alanına dayanırlar. Bir eklenti geliştiricisi özel bir koleksiyon kaydettiğinde, koleksiyon ad alanını paylaşan tüm bloklar, blok yerleştiricide özel bir bölüm altında görünecektir. Bu, blokları düzenlemenin daha akıllı bir yolu gibi görünüyor. Blok kitaplıkları oluşturan ve bunları otomatik olarak gruplandırmanın bir yolunu sağlayan eklentiler için kesinlikle kullanışlı olacaktır.

Varyasyonları Engelle API'si

Yeni Blok Varyasyonları API'si, blok geliştiricilerinin esasen bir varyasyonla blok kopyaları oluşturmasına olanak tanır. Kayıtlı her varyasyon, blok yerleştiricide kullanıcıların seçim yapması için ayrı bir blok olarak görünecektir.

Bu özelliğe iyi bir örnek, yeni sosyal simgeler bloğudur. Çeşitli sosyal ağlar için 40 varyasyonlu tek bir bloktur.

Geliştiriciyle İlgili Diğer Değişiklikler

Hem eklenti hem de tema geliştirme alanına giren birkaç not değişikliği daha var.

Yeni Gezinme Menüsü Kancaları

Bekledikten, bekledikten ve bekledikten sonra, geliştiriciler nihayet gezinme menüsü yönetici ekranına ve özelleştiriciye özel alanlar eklemek için sıkça istenen bazı kancaları alıyorlar. En az bir bilet 9 yıl geriye gider ama geç olması hiç olmamasından iyidir. Geçmişte, geliştiricilerin gerekli özelleştirmelerden bazılarını yapmak için özel bir yürüteç sınıfı kullanması gerekirdi. Ancak, aynı anda yalnızca tek bir yürüteç sınıfı kullanılabilir, bu da değişiklik yapan birden çok eklentinin birlikte çalışmadığı anlamına geliyordu.

Çekirdek ekip, ayrı menü öğeleri için "taşı" düğmelerinden önce görünen gezinme menüleri yönetici ekranına yeni wp_nav_menu_item_custom_fields kancasını ekledi. Yönetici ile denklik için, gezinme menüsü öğelerinin özelleştiricide yeni bir wp_nav_menu_item_custom_fields_customize_template vardır. Bu kancalar, geliştiricilerin gezinme menüsü öğelerine özel veriler eklemek için gerekli özel form alanları eklemesine olanak tanır.

application_shortcodes() Diğer Ad İşlevi

WordPress 5.4, yeni bir apply_shortcodes() işlevi sunar. do_shortcode() işlevi için bir takma addır. Yeni işlev, anlamsal olarak daha doğru bir işlev adı sağlar. Genellikle, do_ beklenen çıktı veya bir tür eylem ön ekine sahip işlevler. apply_ önekine sahip işlevler, verilerin döndürülmesini bekler.

Kısa koda duyarlı alanlara sahip bir tema veya eklenti oluşturuyorsanız, yeni işleve geçiş yapmak isteyeceksiniz. do_shortcode() işlevi şu anda kullanımdan kaldırılmak üzere işaretlenmemiş olsa da, nihai hedef bu olmalıdır.