İşbirliğine Dayalı Düzenleme, WordPress'te Gerçekten Zor Bir Zorluktur
Burada PublishPress'te WordPress'te yayınlama deneyimine odaklandık. Ve ufukta WordPress yayıncıları için ilginç haberler var.
Matt Mullenweg ve WordPress ekibi, Gutenberg Aşama 3'teki yeni düzenleyiciye Google Dokümanlar tarzı düzenlemeyi getirmek istiyor. Bu, birden fazla kişinin aynı belgeyi aynı anda güncelleyebileceği anlamına geliyor.
Bu görüntü, aynı belge üzerinde birden fazla kişiyle işbirliği yaparken neden bahsettiğimiz hakkında iyi bir fikir verir:

Şu anda, bu tür bir işbirliği WordPress ile mümkün değildir. Bir gönderiyi başka bir kullanıcıyla aynı anda düzenlemeye çalışırsanız, "Bu gönderi zaten düzenleniyor" mesajını görürsünüz. Gönderiyi bırakabilir veya diğer kişiyi düzenlemeyi bırakmaya zorlayabilirsiniz.

Size bu ortak düzenleme projesine ve WordPress'te ne zaman görebileceğimize dair bir genel bakış sunacağım. Aynı WordPress gönderisinde birlikte çalışan ekiplere sahip olabilecek miyiz?
İlk olarak, ortak düzenleme Gutenberg'in bir parçası olacağından, yeni editörün mevcut durumunu kontrol edelim…
Gutenberg'in Mevcut Durumu
Geçen hafta St Louis'deki WordCamp ABD'de Matt Mullenweg, yıllık “Sözde Durum” adresini verdi.
Matt, Gutenberg'deki mevcut ilerlemeyi anlattı. Tam sunumu burada görebilirsiniz, Gutenberg kısmı 1 saat işaretinin hemen ardından başlıyor. Matt'in aşağıdaki görüntüsü, şu anda Gutenberg ile nerede olduğumuzu gösteriyor:

"Bir blok kalıbı dizini oluşturun", doğrudan düzenleme sonrası ekranından yeni blokları arayabileceğiniz ve kurabileceğiniz anlamına gelir. Sahip olmadığınız bir bloğu ararsanız, şu mesajı görürsünüz: "Kitaplığınızda blok bulunamadı. Bu bloklar indirilebilir ve kurulabilir.” Sayfanızı yeniden yüklemenize gerek kalmadan yeni bloğu yükleyecek bir "Ekle" düğmesi olacaktır.

"Tam site düzenlemeyi uygula" çok daha büyük bir projedir. Bu, WordPress tema sisteminin tamamını bloklara dayanacak şekilde değiştirmeyi içerir.
- Sitenizin logosu? Bu bir görüntü bloğu olacak.
- Menünüz? Bu bir gezinme bloğu olacak.
- Ana sayfa düzeniniz? Bu bir ızgara bloğu olabilir.
Bu tema özelliklerinin geliştirilmesi aylar veya belki yıllar alacaktır. Google Dokümanlar tarzı düzenleme ancak bu özellikler tamamlandıktan sonra gelir.
Gutenberg Projesi'nde 3. Aşama
Gutenberg dört aşamada geliştiriliyor. 2. Aşama "Özelleştirme"dir ve "Tam site düzenlemesini uygula" tamamlandığında tamamlanacaktır.

3. Aşama “İşbirliği”dir ve işte Matt'in Word of the Word'deki açıklaması:
[Bu], Gutenberg'de gördüğünüz her şeyi aldığımız ve sizinle aynı şeyleri kurgulayan herkesle gerçek zamanlı birlikte kurgu yapabilmeniz için yaptığımız yer.
Matt, WordPress'te Google Dokümanlar tarzı ortak düzenleme istemekten sık sık bahsetti ve bu sadece başka bir onay.
WordPress'e ortak düzenleme getirme
WordPress gibi platformlar için ortak düzenlemenin çok harika bir özellik olduğu, ancak inanılmaz derecede zor bir teknik zorluk olduğu ortaya çıktı.
Sunucular üzerinde neredeyse tam kontrole sahip oldukları için ortak düzenleme Google için çok daha kolaydır. Sadece farklı tarayıcılar için endişelenmeleri gerekiyor.
CKEditor'daki ekibin, platformları için bunu çözmesi 4 yıl sürdü ve birçok zorluk hakkında harika bir genel bakış yazdı. Çalışmasını sağlamak için bir SaaS platformu oluşturmadan ortak düzenleme sağlayamayacaklarını fark ettiler.
WordPress ekibi, CKEditor ekibine benzer bir durumda. Hemen hemen her sunucuda çalışan bir çözüm bulmaları gerekiyor.
Bir seçenek, Ajax'ın daha modern bir versiyonuna benzeyen WebSockets kullanmaktı. Hem WebSockets hem de Ajax, tüm sayfayı yenilemeden ekranınızdaki içeriği güncelleyebilir. Mozilla, WebSockets'i şu şekilde tanımlıyor:
WebSocket API, kullanıcının tarayıcısı ile bir sunucu arasında iki yönlü etkileşimli bir iletişim oturumu açmayı mümkün kılan gelişmiş bir teknolojidir. Bu API ile, bir sunucuya mesaj gönderebilir ve bir yanıt için sunucuyu yoklamak zorunda kalmadan olaya dayalı yanıtlar alabilirsiniz.
Sorun, düşük bütçeli barındırma şirketlerinin WebSockets'i çalıştıramamasıdır. İşte bir Github tartışmasından bir alıntı:

WordPress'te işbirlikçi düzenleme bir süredir aklımızdaydı. Eksik olduğumuz şey, bunu kendi kendine barındırılan sitelerde, 'merkezileştirilmiş' bir hizmete ihtiyaç duymadan desteklemenin ve çoğu kişiye kendini ödünç veren uzun süreli süreçleri adama yeteneğine sahip olmayan ana bilgisayarlarla uyumluluğu korumanın bir yoludur. işbirlikçi düzenleme teknikleri.
Bu “merkezi hizmet”, CKEditor ekibinin ihtiyaç duyduğu çözümdür ve sonunda WordPress buna ihtiyaç duyabilir. WordPress ekibi, böyle bir hizmet oluşturmak yerine hedeflerini küçültmeyi düşündü:
Orijinal plan, Google Dokümanlar stilinde tam bir işbirliğine gitmekti… Sonra bir adım geri attık ve düşündük… Mevcut WordPress düzenleyicisine benzer, ancak blok başına geleneksel kilitlemeyi kullanmaya ne dersiniz? Bunun şimdilik yeterli ayrıntı düzeyi olduğuna karar verdik ve bizi çok daha hızlı bir kavram kanıtına götürecek. Bu kavram kanıtı mümkünse, elbette daha sonraki bir tarihte "tam" ortak düzenlemeyi uygulayabiliriz.
Bu yedek plan kapsamında, bir gönderiyi aynı anda birden fazla kişi düzenleyebilir, ancak her bloğu yalnızca kişi düzenleyebilir. Bir bloğu başka bir kullanıcıyla aynı anda düzenlemeye çalıştıysanız, şöyle bir mesaj görebilirsiniz:

Ancak son zamanlarda yeni bir yaklaşım ortaya çıktı. Bu çözüm, birkaç sunucu kaynağı kullanır, ancak yine de bir tür merkezi hizmete ihtiyaç duyacaktır. Bu video size bu ortak düzenlemenin nasıl çalışacağı hakkında bir fikir verir:
Bu yaklaşım hala çok, çok erken aşamalarda. WordPress ekibi, altta yatan teknolojiyi seçmedi ve hala karşılaşılması gereken birçok engel var.
İyi haberler varsa, yorumları içerir. Bu gönderinin başındaki GIF'e bir göz atın ve kenar çubuğunda “Ryan” ve “Sarah” yorumlarını göreceksiniz. PublishPress eklentisinin artık bir editoryal yorum özelliği var. Ancak Gutenberg Aşama 3 sırasında daha dinamik Google Dokümanlar tarzı yorumların eklenmesi mümkündür. Yorumları ortak düzenleme ile entegre etmek için kullanılabilecek deneysel bir Annotations API vardır.
Ortak düzenleme özeti
Matt ve WordPress ekibi, WordPress'e Google Dokümanlar tarzı düzenlemeyi gerçekten eklemek istiyor. Bu harika bir özellik olurdu, ancak gerçekçi olarak aynı zamanda çok zor bir meydan okuma.
Teknik ayrıntılarla ilgileniyorsanız, bu Github sorununa veya buna abone olmanızı öneririm. Ayrıca CKEditor gönderisini okumanızı öneririm.
Zaman çerçevesi açısından, Gutenberg'in 2. Aşamasının (“Özelleştirme”) 2020'nin sonundan önce tamamlanmasını beklemiyorum.
Bu, Gutenberg'in 3. Aşamasının (“İşbirliği”) 2021 yılına kadar ana odak olmayacağı anlamına geliyor. Bu program ve zorlu teknik zorluklar göz önüne alındığında, ortak düzenlemenin en erken 2021 yılına kadar WordPress'e gelmeyeceği neredeyse kesin.
Güncelleme
Bu gönderiyi gördükten sonra Fabian Franz bana Twitter'da cevap verdi. Yukarıda yayınlanan YouTube videosundan ve YJS çerçevesinin faydalarından bahsetti. Fabian benden çok daha iyimser:
Yjs Demo'nun da görebileceği gibi, bugün yeterince iyi bir sonuç kullanılabilir. Sunucu sadece iletileri iletiyor. Başka bir müşteri için Gdocs ile ilgili yorumları zaten uyguladık ve bunlar Yjs aracılığıyla da kolayca paylaşılabilir. Ardından, bir paragraf üzerinde işbirliği içinde çalışabileceğiniz çalışma başlayacaktır. P2P her zaman zordur, ancak WP, sunucusuz dağıtılmış düzenlemeye izin vermek için bir STUN Sunucusu gibi davranabilir. Bunun mümkün olmadığı durumlarda her zaman bir röle kullanılabilir ve Yjs zaten küçük mesaj boyutları için optimize edilmiştir. Her şey işe yaradıktan sonra, herkesin belgede ne yaptığına dair dağıtılmış bir görünüm elde etmek için Yjs'nin değişiklikleri izleme özelliğini kullanmaya başlayabilirsiniz.
O yüzden belki de çok beklemeyeceğiz. Fabian ayrıca beni ortak düzenleme çözümleriyle ilgili bu tartışmaya yönlendirdi:
Fabian ve ekibiyle YJS hakkında röportaj yaptık:
Güncelleme 2
AsBlocks adlı yeni bir proje çok umut verici.
ev borcu WordPress sitesi