Blok Tabanlı Widget'lar WordPress 5.6'ya İnmeye Hazır mı?

Yayınlanan: 2020-10-14

İki hafta önce Gutenberg ekibi, blok tabanlı widget'lar geri bildirimi için açık bir çağrı yaptı. Eylül ayında daha önce yeni sistem hakkında uzun bir inceleme yazmıştım, ancak ekibin bir üyesi tarafından en son yineleme hakkındaki düşüncelerimi paylaşmam istendi. WordPress 5.6 Beta 1 için yaklaşan dondurmaya sadece bir hafta kala, başka bir derin dalış yapmaktan zarar gelmez diye düşündüm.

Referans olarak, en son testlerim, bugün daha önce yapılmış olan Gutenberg eklentisinin 9.2.0-alpha-172f589 sürümüne karşı. Gutenberg gelişimi hızlı hareket eder, ancak her şey o noktaya kadar doğru olmalıdır.

Nihayetinde, bir ay önce işaret ettiğim sorunların çoğu hala var. Ancak ekip, kenar çubukları (blok alanları) için açma/kapama oklarını doğru yöne yönlendirmek ve düzenleme sonrası ekranıyla daha tutarlı hale getirmek gibi küçük sorunların çoğunu temizledi. UI çok daha parlak.

Tüm sorunlara dalmadan önce, önerdiğim soruyu cevaplamak istiyorum. Evet, blok tabanlı widget sistemi, WordPress 5.6 indiğinde prime time için hazır olacak . Henüz orada değil, ancak önümüzdeki iki ay içinde ulaşılabilecek net bir bitiş çizgisinin olduğu bir noktada.

Gutenberg 8.9'a inen ve 9.1'de kaldırılan özelleştiricideki blok tabanlı widget'ların başarısızlığını görmezden geleceğim. En azından şimdilik, Özelleştirme API'sini kullanmak için widget ekranını yeniden yapılandırmaya yönelik son teklife de bakacağım. Özelleştirici için blok tabanlı widget'ların sunduğu bir sürü sorun var ve bu sorunlar WordPress 5.6 için aşılmaz. Uzun vadede, WordPress'in widget/blok alanlarını düzenlemek için tek bir yere sahip olması gerekir. Kullanıcılar muhtemelen bir süre bazı tutarsızlıklarla yaşamak zorunda kalacaklar.

Takımın bu turda özelleştiricide son dakika bir Hail Mary atmaya ve blokların tam düzenlemesini uygulamaya çalışmadığını varsayarsak, blok tabanlı widget'ların başarılı bir WordPress 5.6 başlangıcına doğru yolda olduğunu söylemek güvenlidir.

Kullanıcı Deneyimi

Gutenberg'deki Widget düzenleme ekranına bir widget ekleme.
Blok tabanlı widget ekranı.

Bir kullanıcı olarak, yeni Widget'lar yönetici ekranını kullanmaktan gerçekten keyif alıyorum. Açık uçlu, serbest biçimli blok alanları, WordPress sitelerimi tasarlamak için anlatılmamış olanaklar yaratıyor. Geleneksel widget'ların kapsamı sınırlıydı. Kullanıcılar, bir avuç çekirdek widget'a, muhtemelen bazı eklenti widget'larına ve tema yazarlarının sunduğu her şeye bağlandı. Bununla birlikte, bloklarla, seçenek havuzu, kullanıma hazır seçenekleri en az üç katına çıkaracak şekilde genişler (gömme tipi blokları tek tek saymıyorum). Ayrıca bloklar, geleneksel bir widget'tan çok daha kapsamlı tasarım seçenekleri sunar.

Buna karşılık, geleneksel widget'ların modası geçmiş. Bloklar hemen hemen her yönden üstündür. Ancak, bu yeni sistemde hala sorunlar var.

Şu anda en büyük sorun, son kullanıcıların Widget'lar ekranından değişiklikleri kaydetmeden çıkabilmesidir. Tüm çalışmalarının eterde kaybolmak üzere olduğunu bilmelerini sağlayacak hiçbir uyarı yoktur. Bu, WordPress 5.6 düşmeden önce gerçekleşmesi gereken OMGBBQ düzeyindeki öğelerden biridir.

Olursa güzel ama gerekli olmayan bir özellik de blokları bir blok alanından diğerine sürükleme yeteneğidir. Eski pencere öğesi sisteminde, kullanıcılar pencere öğelerini kenar çubuğundan kenar çubuğuna taşıyabilirdi. Mevcut alternatif, bir parçacığı kopyalamak, onu yeni bir blok alanına yapıştırmak ve orijinali kaldırmaktır.

Ayrıca, düzenleme sonrası ekranında bulunan üst araç çubuğu için bir seçeneğin olmaması taraftarı değilim. Bu araç çubuğunu kullanmamın nedenlerinden biri, bireysel bloklardaki varsayılan açılır araç çubuğunu sevmememdir. Dikkatimi dağıtıyor ve çoğu zaman işime engel oluyor.

Eski widget'lar hala devam eden bir çalışma gibi görünüyor. Legacy Widget bloğu bazen benim için hiç çalışmadı. Sonra sihirli bir şekilde çalışmaya başladı. Ancak, Gutenberg artık kayıtlı üçüncü taraf widget'larını blok yerleştiriciye sanki bloklarmış gibi otomatik olarak ekliyor.

Gutenberg'in widget sistemine bir üçüncü taraf eski widget'ı ekleme.
Çalışmak için bir eklentinin widget'ını alma.

Bu kendi sorunlarını sundu. Üçüncü taraf eklenti widget'larını çalıştırmayı başarabilmemin tek yolu, widget'ı eklemek, kaydetmek ve widget ekranını yenilemekti. Bu noktada, widget'lar ortaya çıktı ve düzenlenebilir hale geldi.

Tema Yazarı Deneyimi

Şu anda tema yazarları için en büyük endişelerimden biri, blok düzenleyici el kitabında herhangi bir belge bulunmaması. Bunun gerçekleşmesi için çok zaman var, ancak tema yazarlarının bilmesi gereken şeyler var. Özellik geliştirme aşamasındayken bile merkezi bir konuma sahip olmak, 5.6 sürümüne hazırlanmalarına yardımcı olacaktır.

Çeşitli Make blog gönderilerinde yanıtlanabilecek bu sorulardan bazıları, özel bir dokümantasyon sayfasında bulunmalıdır:

  • Bir tema, blok tabanlı widget'lardan nasıl vazgeçebilir?
  • Widget'lar ekranı için özel stiller eklemek için kancalar nelerdir?
  • Temalar, Widget'lar ekranında belirli kenar çubuğu stillerini hedefleyebilir mi?
  • Ön uçta geleneksel widget'lar gibi bölümleri tutarlı bir şekilde biçimlendirmek mümkün mü?
  • Temalar, esasen gönderi içeriği alanına benzer şekilde kullanılabilen blok alanları içinde geniş ve tam hizalamayı seçebilir mi?

Bunlar, eski bir tema yazarı olarak yanıtlanmasını istediğim sorulardan bazıları. Artık tema tasarımı oyununun kalınlığında değilim ve olanların daha büyük bir soru listesine sahip olacağını varsayıyorum.

Daha az belirgin olan bir belge parçası, geri dönüşlerin veya varsayılan widget'ların nasıl ele alınacağına odaklanmalıdır. Geleneksel olarak, varsayılan bir widget kümesi göstermesi gereken temalar, kenar çubuğunun widget'ları olup olmadığını kontrol eder ve bir veya daha fazla varsayılanın çıktısını almak için the_widget() kullanmaya geri döner. Tema yazarları hala bunu yapabilirken, onları pano boyunca blok sistemine geçirmeye başlamalıyız.

Tema yazarları, blok HTML'yi geri dönüş olarak kopyalamalı/yapıştırmalı mı? Başlangıç ​​içerik sistemi bunun için daha mı iyi olur ve başlangıç ​​widget içeriği blokları işleyebilir mi? WordPress 5.6'daki widget yedekleri için önerilen yöntem nedir?

Tema yazarlarının yeni blok paradigmasında geleneksel pencere öğesi ve pencere öğesi başlık sarmalayıcı HTML'sini nasıl ele alması gerektiği konusunda hala devam eden bir sorun var. Gutenberg 9.1 sürümünden bu yana eklenen bir yama, her üst düzey bloğu widget sarmalayıcı ile sarar. Bu, 9.2 sürümüne gelirse, muhtemelen sorunu daha da kötüleştirecektir.

Geleneksel sistemde, hem widget başlığı hem de içerik birlikte bir kapsayıcıya sarılır. Ancak, bir kullanıcı bir Başlık bloğu (widget başlığı) ve başka bir blok (widget içeriği) eklerse, her blok temanın pencere öğesi sarmalayıcılarıyla ayrı ayrı sarılır. Durumu olduğu gibi düzeltmenin tek yolu, son kullanıcıların istedikleri her "widget" için bir Grup bloğu eklemesidir; bu, WordPress kullanıcıları için kapsamlı bir yeniden eğitim gerektirecektir. Bu ideal bir senaryo değil.

Gutenberg'de yanlış widget sarmalayıcı HTML'sinin canlı ve kod görünümü.
Her blok ayrı bir bölüm olarak sarılır.

WordPress, bu sorunu doğrudan "düzeltmeye" çalışmak yerine çıktıya hiçbir şey yapmamalıdır. Bloklar ve geleneksel aletler temelde farklıdır.

Tema yazarlarının bu konuda dizginleri almasına ve olasılıkları keşfetmesine izin verin. Ancak, onlara blok kalıplarını desteklemek gibi bunu yapmaları için araçlar verin.