WordPress Konfor Alanının Dışına Çıkarak Öğrenilen Dersler

Yayınlanan: 2020-01-07

2018 yazının sonlarıydı. Artık WordPress dünyasının neresine uyduğumdan tam olarak emin olmayan, yaşlanmakta olan bir geliştiriciydim. Kariyerimi başlatan ve aynı zamanda ele almak istediğim diğer evcil hayvan projeleri için bir hobi olarak hizmet eden platformun içini ve dışını öğrenmek için on yıldan fazla zaman harcadım.

Kısmen sıkıldım. Yeni bir meydan okumaya ihtiyacım vardı.

WordPress'i seviyorum. Bunun da ötesinde, WordPress'in yıllar içinde başarmama izin verdiği şeyleri takdir ediyorum. Ancak, kişisel blogum için bundan artık memnun değildim. İş için uygundu, ancak çoğu zaman ihtiyacım olandan çok daha fazla alet ve gizmos olduğunu gördüm. Ayrıca uzun yıllardır klasik editörden ziyade Markdown'da blog yazıları yazıyordum. WordPress artık blogum için iş akışımın bir parçası değildi. Bazen engel oluyordu.

Meydan okuma kabul edildi.

Bir hafta sonu boyunca, çalışan bir özel blog sistemi kurdum. Herhangi bir CMS'nin kalbinde yer alan bir yönetim arayüzü gibi önemli özelliklerden yoksun olduğu için buna İçerik Yönetim Sistemi (İYS) demekte tereddüt ediyorum. Yine de iki günde sıfırdan çalışan bir sistem kurdum.

WordPress'in programlama kariyerimin çoğu için cömertçe sağladığı faydalı işlevlere ve araçlara güvenmeden böyle bir başarıya ulaşabileceğimi bilmiyordum. Yalnızca bunların WordPress işlevleri olduğunu hatırlamak için yanlışlıkla kaç kez esc_attr() veya esc_html() . WordPress kas hafızam güçlüydü. Bilmeden, WordPress'in üzerine inşa ederek öğrendiğim her şey beni daha kapsamlı bir PHP geliştiricisi olmaya itti. Çekirdek WordPress'ten birlikte çalışmadığım birkaç API var. Kaynak kodunun çoğunu anladım ve birçok eski çöpün nedenlerini biliyordum.

Kişisel projem, WordPress'in gücüne kıyasla sönük kaldı ve bu güne kadar hala öyle. Ancak, beni konfor alanımın dışına çıkardı. Eski fikirleri yeni yollarla keşfetmemi sağladı.

Bir örnek, yeniden yazma kurallarının ve yönlendirmenin nasıl çalıştığını anlamaktı. Bazı arkadaşlarım ve ben son zamanlarda kimsenin WordPress Yeniden Yazma API'sini gerçekten anlamadığı konusunda şaka yaptık. Bir şey işe yarayana ve yeni kod artık sitenizi bozmayana kadar onunla uğraşırsınız. Dışarıda birçok mevcut kütüphane var, ancak bunun kendi düzenlemem için nasıl çalıştığını anlamak istedim. Bu nedenle, bir HTTP isteği, yönlendirici ve denetleyici sınıfı oluşturmaya başladım. Sonuç, diğer PHP çerçevelerinden büyük ölçüde ödünç alınan zarif bir çözümdü.

Aşağıda bir "kitap" içerik türü ayarlamak için gösterildiği gibi basit bir kod satırıyla, bir kitap sayfası için gelen istekleri işleyebilir, onu doğru kaynağa eşleyebilir ve şablonun çıktısını ön uçta verebilirim. Bir geliştirici olarak yıllardır bu temel web sitesi konseptinden neden uzak durduğumu merak etmeye başladım.

 // Create 'example.com/books/book-name'. $this->router->get( 'books/{name}', Controller::class );

Bir şeyler yapmanın “WordPress yolunu” sorgulamaya başladığım başka birçok alan vardı. Bu keşif yolculuğu sırasında, WordPress projelerimde kullanmak üzere geri getirebileceğim şeyleri öğrenebildim. Web sitesi geliştirmenin daha büyük dünyasına adım atarak, platformdaki programlamaya aşık olmama yardımcı olan kusurları daha iyi görebildim. Bununla birlikte, binlerce geliştiricinin son 15 yıldır çalıştırmaya devam ettiği sistemdeki güzelliği daha iyi görebildim.

Her Şey Kod Değildir

Laravel ve Symfony gibi büyük çerçeveleri inceleme ve öğrenme fırsatım oldu. Bununla birlikte, saf bir kullanıcı deneyimi perspektifinden diğer platformların nasıl çalıştığını da inceledim.

Kesin olarak bildiğim tek şey, Markdown'da yazan insanlar için oluşturulmuş platformları test etmek istediğimdi. WordPress'in gücüyle rekabet edecek Joomla veya Drupal gibi devasa platformlar aramıyordum. Bunun yerine Grav, Jekyll ve Hugo gibi daha hafif çözümlere bakıyordum. Kullanıcı deneyiminin iş akışıma nasıl uyduğunu anlamak istedim.

Test ettiğim tüm çözümlerden her birinin avantajları vardı. Her birinin ayrıca benim zevkime uymayan şeyleri yapmak için özellikleri veya yöntemleri vardı. Deneyimle ilgili iyi olan şey, blog platformumun benim için nasıl çalışmasını istediğimi belirleyebilmemdi. Bu topluluklardaki diğerlerinin düşüncelerini okumak, WordPress topluluğu dışındaki kullanıcılardan da tercih ettikleri blog sistemini neden sevdiklerini duymamı sağladı.

İleri askerlik yaptım. Bu platformlardan öğrendiklerimi kullanarak, kullanmaktan mutlu olduğum bir şey yaptım. Mükemmel değildi ve muhtemelen asla olmayacaktı. Büyüme için yer kötü bir şey değil.

Bu süre zarfında, WordPress ile blog yazma sevgimi yeniden alevlendirdim. Her zaman popüler görüş olmasa da, blok editörü, klasik editörden daha iyi sıçramalar ve sınırlar hissetti. Kendimi düzenli olarak kullandığımı görebildiğim bir şeydi. Kişisel blogum dışında başka projelerde de kullanmaya başladım. Hala her gün Markdown'da yazıyorum. Ancak, yıllardır ilk kez WordPress editöründe yazmaktan keyif alıyorum.

Neden Yeni Platformlar Denemelisiniz?

Geliştirici perspektifinden, kayıtsız olmak ve tek bir sisteme güvenmek iyi bir fikir değildir. Kendinize “WordPress geliştiricisi” demek yerine, bu terminolojinin ötesini düşünün. Bunun yerine, bir PHP programcısı veya JavaScript programcısı olmalısınız. Ya da daha iyisi, kendinize bir programcı deyin. Programcılar sorunları çözer. Araçlar veya diller, A Noktasından B Noktasına gitmek için kullandığınız şeydir.

İş piyasasında daha kapsamlı bir programcı olmak daha fazla fırsat sunuyor. Çoğumuz WordPress'in önümüzdeki 10, 20 veya 50 yıl için lider platform olacağını umabilirken, her türlü geleceğe hazırlıklı olmalısınız.

Zaman zaman diğer platformlarla çalışmanın bir başka yararı da, WordPress ekosistemine geri getirebileceğiniz fikirleri öğrenmenizdir. Örneğin, Sage başlangıç ​​temasının Laravel Blade'in şablonlama motorunu nasıl uyguladığını görmek ilginç. Bu fikirler WordPress'in geleceğini şekillendirmeye yardımcı olabilir.

Bazı fikirler temel WordPress'e aktarılabilir. Diğerleri, ajanslar içindeki ekip iş akışlarını iyileştirebilir.

Sürekli eğitim, bir bütün olarak WordPress topluluğuna fayda sağlar. Bu eğitimi WordPress'e özgü fikirlerle sınırlamayın. Dışarıdan öğrenin ve geri getirin.