WordPress Rest API rehberiniz: Josh Pollock ile Röportaj

Bildiğiniz gibi, WordPress REST API içeriğinin bitiş noktası Aralık ayında WordPress 4.7’ye gidiyor. Bu, WordPress çekirdeğinin bir parçası olarak yangının çoğunu dinlendiren önemli bir artıştır. Şimdi Restaus’un sizin için neler yapabileceğini öğrenmenin zamanı geldi.

Bugünün makalesi Josh Pollock ile bir röportaj. Josh, yüksek kaliteli bir WordPress eklentisi yazan CalderaWP’nin kurucularından biridir. Ayrıca dinlenme ateşinde, Site Learning.joshpress.net’te, Rest Fire’da ve başka yerlerde iyi bir ücretsiz e-kitap yazdığı en açık ve en önemli eğitim sesi olabilir.
Röportaj yapmak
https://www.youtube.com/watch?v=lvzrzleKiwk
Röportaj Transcript WordPress API REST ile nasıl ilgileniyorsunuz? 2014 yılında Wordcamp Milwaukee’ye gittim ve bu projenin ana geliştiricisi olan Rachel [Baker] ve Ryan [McCue] ile tanıştım ve bu harika yeni ateş dinlenmesi ve WordPress’in ana geliştiricisi olan Nacin’den bahsettiler. O zaman. WordCamp’te ilk kez konuşmayı kabul ettim, bu yüzden ülke çapında Florida’dan açıkça ayrıldım.
Söyledikleri konuşmalarına gittim: “Yaptığı şey bu, düşündüğümüz şey bu” ve “Vay canına, bu çok havalı.”Ve WordPress’ten harika olan şey, yeni şeyler öğrenmek için güvenli bir yer olarak kullanmamızdır.Yangın dinlenmesi tam olarak nedir?REST API, makine tarafından okunması kolay olacak şekilde tasarlanmış WordPress verilerini temsil etmenin bir yoludur.Temel olarak, API REST, verilerin bir temsili ve makine tarafından okunacak şekilde tasarlanmış verilerin nasıl isteneceğidir.Bu, WordPress’in yapabileceği her şeyi açar – bazı yayınları görüntüler, yayınları düzenleyin, kullanıcıları gösterin, yazarın kim olduğunu değiştirin – ve bu verilerle kendi verilerinizde, eklentinizde, temanızda yeni bir yol sunar.Benim için, ondan çok ilginç olan şey bu: Bu, her zaman sahip olduğumuz bu araçla çalışmanın çok modern bir yolu.
WordPress Rest API için iyi örnekler ve kullanım durumları nelerdir? Benim için, WordPress API REST ile yapabileceğiniz üç harika şey kategorisi var. Birçok kullanım vakası vardır; Genel olarak, onlar hakkında “bakım geliştiricilerinin” genel kullanıcılardan daha fazlası olduğu doğrudur. Twitter’ın bu kadar büyük olmasının nedenlerinden biri, insanların Twitter verilerini kullanan uygulamalar oluşturmalarını sağlayan çok kolay bir yangın dinlenmesi olması ve bu benzer bir hikaye. Benim için, API REST ile yapabileceğiniz üç harika şey kategorisi var: 1. Web sitesi dışında bir şey için bir içerik yönetim sistemi olarak WordPress. Örneğin, Chicago Field Müzesi, aradığınız sergi hakkında daha fazla bilgi içeren bir dokunmatik ekrana sahiptir. İçinde ne yazıldığını kim bilebilir – sabitlenmiş donanımdır – ancak arka uç yerel WordPress sitesinde yönetilir. Böylece içerik üreticisi WordPress’e girer ve içeriği düzenler ve yangın dinlenmesi yoluyla diğer birkaç sisteme tüketilir. Web siteleri/hibrid web uygulamaları, ancak her şey WordPress’te. Geleneksel olarak, büyük bir site bloglarını WordPress’e ve geri kalanını başka bir yere yerleştirir. Yangın dinlenmesi ile geleneksel bir web sitesi oluşturmak daha kolaydır, ancak belirli bir URL açtığınızda, açısal JS, React JS veya başka bir şey kullanarak bir sayfa web uygulamasıdır. Ve daha sonra insanlar, WordPress’i veri depolama olarak, açısal veya ön uç olarak tepki gibi bir şey ve daha sonra gönderebilecekleri bir hücresel uygulamaya sarmak için bir telefon uygulaması gibi bir şey kullanarak hücresel uygulamalar geliştirdikleri yere daha ileri götürürler.
3. Mevcut WordPress arabirimini daha iyi hale getirin. WordPress tarafından otomatik olarak işlenen veri sanitasyonu, veri doğrulaması ve yetkilendirme ile ön uç teslimat için özel bir yayın düzenleyicisi oluşturabilmek büyük bir sorundur. Bu, yönetici eklentisi ve tema arayüzü anlamına gelir ve bu aynı zamanda ön uç arabirimi anlamına gelir ve farkı siler. Atölyemizde, WordPress içeriği için bir ön uç düzenleyicinin nasıl oluşturulacağını gösterdim ve gösterdiğim şey, sunucu tarafındaki PHP kodlarının sayısının dört sıra civarında olduğu ve sadece JavaScript’i yüklemekti. Bu wp_enqueue_script (), wp_localize_script () ve sadece bu. Ama sunucu tarafına iletilmeyen şey veri sanitasyonu, veri doğrulaması ve yetkilendirme: bu kullanıcı bu yayını gerçekten düzenleyebilir mi? Her şey WordPress’te yapıldı. Daha önce, tüm alışkanlıkları inşa etmek zorunda kaldım, bu yüzden sadece zaman ve bakımdan tasarruf etmekle kalmaz, her şeyi standartlaştırır. Sorunları çözmek için bireylerin sorumluluğundan ne kadar çok alabilirsek, o kadar iyidir. Bu nedenle, ön uç teslimat için, sunucu tarafındaki hiçbir şey hakkında endişelenmeden arkaya girebileceğiniz özel bir yazı düzenleyicisi oluşturabilir, büyük bir sorundur. Sadece, “Ateş dinlenmesini kurun ve birkaç javascript yaz”, bunu göreceğimiz geleneksel yoldan oldukça farklı.
WordPress tabanlı veritabanı mimarisinin veri depolama olarak sınırladığını düşünüyor musunuz? Verileri özel bir tabloya taşıyabilmenize rağmen katılıyorum. Bu aynı zamanda “Neden WordPress?” Ve bazen cevap “Hayır, Laravel bazı şeyler için daha iyidir.” Bu kısmen son kitlenize bağlıdır-ancak WordPress ile ilgili harika şeylerden biri, daha önce sizin için yapılan bulmacaların parçaları açısından, projenizle çalışmak için iletişim kurabileceğiniz insanlar açısından çok fazla WordPress olmasıdır. , öğrenme meselelerinde ve eğitim kaynaklarında. Kendim için kendi kendini öğreten bir geliştirici veya topluluk olarak biliyorum, bu benim için çok daha kolay. Angular’ı ilk kez öğrendiğimde Firebase’in nasıl çalıştığını da öğrendim. Bu asla işe yaramayan bir felaket. WordPress’e alışkın olduğum için, Angular ile ilgili ikinci deneyimim aslında A/B test eklentimiz Ingot için yönetici arayüzünü arttırmak. WordPress Yönetici sayfasında tek sayfalık bir mini açılı uygulaması olarak yeniden yazıyoruz. Açısal öğreniyorum, ama zaten WordPress’i biliyorum; Tek yapmam gereken açısal öğrenmek. Ve bu bizim için toplulukta büyük bir fayda.
Restoran dinlenme süreci hakkında konuşalım. Küçük tarih dersleri. Bu bir süre Ryan McCue tarafından atılan bir şey. API REST’in 1. sürümü temelde bitirilmeli ve ardından “Tamam, bu öğrendiğimiz şey budur ve şimdi daha iyi yapalım” ve sürüm 2’ye yol açar. , özel bir yangın dinlenmesi için altyapı. Bu WordPress’in merkezinde, ancak sahip olmadığımız şey, içeriğin otomatik içeriğidir – bu da 4.5’te olmalı, ancak uzun bir tartışmaya dönüşür. Şimdi 4.7’yi yapacak. Teklif Birliği, WordPress için OAuth 1’i kimlik doğrulaması için sağlaması için bir teklif içerir ve soru, WordPress Core’un OAuth 1’in sağlayıp sağlamadığı veya “Bir dizi kimlik doğrulama eklentisi var” dediğimizdir. OAuth 1, OAuth 2 ve diğer sistemler arasında mı seçim? Şimdi ana yapışkan nokta bu. [Not: Bu röportaj, içeriğin bitiş noktasını 4.7’de birleştirmek ve 4.8 için kimlik doğrulamaya odaklanmak için nihai karardan önce gerçekleştirildi.] Benim için kimlik doğrulamasının onu bir çekirdek haline getirebileceği konusunda iyimserim ve bence olmak. “WordPress 4.8 veya daha yeni çalıştırırsanız” demekten daha iyidir “Yüklü bir kimlik doğrulama eklentiniz varsa …” demekten daha iyidir.
API dinlenmesinden V2 değişiklikleri ihlal etmek açısından “bitti” mi?Mevcut API dinlenmesinin iki ana parçası vardır: 4.4’te kullanılan, kararlı olan altyapı ve hala 4.7 sürümüne kadar beta eklentisinde olan son noktası.Bunun için iki parça var.Birincisi 4.4’te yer alan altyapıdır ve şimdi birkaç versiyonumuz var ve WordPress’in geriye dönük uyumluluğa olan bağlılığı sayesinde, uzun süre orada olacak.Ayrıca eklentimde Altyapı 4.4 kullanan yeni bir özellik başlatmakta rahat hissediyorum: Bir yıldan fazla oldu ve WordPress’i güncellemeyen çoğu kişi eklentilerini güncellemiyor.
Altyapı işleri çoğu eklenti geliştirme için gerçekten ihtiyacınız olan şeydir, çünkü kendi son noktanızı ekleyeceksiniz. Bu yüzden bu şeyleri öğrenmenizi tavsiye edeceğim: rota bildirimi nasıl çalışır, nasıl geri çağırılacağı, kimlik doğrulaması nasıl yapılacağı, sanitasyon ve doğrulama-bu çok düzgün bir şey, bazı şeyler WordPress’te daha iyi yazılmıştır. Oradan iyisin; V2 Beta API REST eklentisine güvenmezsiniz. İkinci bölüm, örneğin, daha iyi bir gönderiyi nasıl yöneteceğiniz konusunda bir fikriniz varsa. Şimdi kasıtlı olarak beta olarak adlandırdıkları eklentiye güveniyorsunuz, çünkü geriye dönük uyumluluk değil, düzeltmeye kararlılar. Beta’da şu ana kadar büyük bir değişiklik var, ancak 4,4 değişiklikleri gibi, bitiş noktasını güçlendireceği zaman 4.7’ye girin. Ateşin nasıl dinleneceğine dair harika bir şey, bitiş noktasının WP-JSON/WP/V2’de olmasıdır. Bu “V2”, birkaç yıl içinde V3 olarak adlandırılan biraz daha iyi şeyler yapan yeni bir eklenti oluşturma dürtüsünü görebileceğiniz anlamına gelir. Bu, WordPress’in diğer bölgelerinde bulunmadığımız bir fırsat: “WP_QUERY V2” yapamazsınız.
WP_Query ile paralel var.Ancak, geliştirilmekte olan ve sürüm 2’nin performansını etkilemeyen 3 sürüm 3’e sahip olabiliriz. Gelecek için gerçekten hoşuma gidiyor.İnsanlar şimdi yangın dinlenmesini nasıl öğrenmeli?Öğrenmesi zor ve kolay olan nedir?Genel olarak, insanların bu tür şeyleri öğrenmeyi sevmenin iki yolu vardır: bazı insanlar okumayı severler ve bazı insanlar video izlemeyi sever.Ne öğrenmeye çalıştığınız hakkında sorular da var: Çekirdek eklentisinde tüm son noktaların ne yapıldığını öğrenmeye çalışıyor musunuz?Kendi restoranınızı nasıl dinlendireceğinizi öğrenmeye mi çalışıyorsunuz?Bununla serin bir şeyler oluşturmak için bir JavaScript çerçevesi nasıl kullanacağınızı öğrenmeye mi çalışıyorsunuz?
Bu ile serin şeyler yapmak için bir JavaScript çerçevesi kullanmanıza gerek olmadığını göstermek istiyorum, bunu PHP veya diğer dillerde kullanabilirsiniz. Bu, React JS ve benzeri şeyler havalı diyor. Metin Kaynakları Okumak isterseniz, Joshpress.net’te dinlenme ateşi ve ücretsiz olarak indirilebilen e -kitaplar da dahil olmak üzere bir ton tork hakkında yazdım. Bu e-kitap, son noktanın yapıldığı şey ve bununla yapabileceğiniz bazı harika projeler gibi şeyler içerir-bu çok iyi bir giriş. Tuts+ ayrıca yangın dinlenmesi ile başlamakla ilgili birkaç harika şey yazdı. Son olarak, temel bilgileri içeren v2.wp-api.org’da çok iyi belgeler de var. Video Kaynağı Video seviyorsanız, öğrenme.joshpress.net’te ateşle ilgili bir kursumuz var. Bu, dinlenme yangını nedir, özel bir yolun nasıl ekleneceği, kimlik doğrulamasının nasıl çalıştığı ve küçük uygulamalar yapmak için açısal kullanım temelleri de dahildir. Yakında API REST dünyasında daha iyi bir PHP geliştiricisi olma konusunda önceden sipariş verebileceğiniz başka bir kurs başlatacağız:
İyi bir nesne yönelimli PHP kodu, katı eklentiler ve siteler nasıl geliştirilir ve eski yöntemleri – bir temada, kısa kodlarda, PHP işlevlerinde – ve API dinlenmesinde kullanabilir. Ayrıca, Roy Sivan’ın Lynda’da açısal uygulamalar oluşturmak için API REST kullanımı hakkında çok iyi kursları var. Yani genel olarak, ilk restoran kursunu almak için open and.joshpress.net – bu üç buçuk saat boyunca iyi bir genel resim. Ve bir kez bu temele sahip olduğunuzda, daha pratik ve pratik bir şey için, Roy’un Lynda’daki eşyalarını arayın. Son olarak, WordPress’teki çoğu insan gerçek öğrencilerdir. Yangın dinlenme kullanan bir proje bulmanızı şiddetle tavsiye ediyorum, ancak sadece yeni teknolojilerden biri olarak kullanmanızı tavsiye ediyorum. Yangın dinlenmesini incelemenin en zor yanı nedir? Kimlik doğrulama ile seçenek çok karmaşık hale geliyor, ancak bunun “bugün nasıl kullanıcıları düzenleyeceğiz?” Bunu bitirdikten sonra WordPress oradan idare etti. Cevaplamak zor, ama açıklanması en zor alanlardan biri olan kimlik doğrulama hakkında konuşalım. İçeriğin içeriğinin içeriğine bakarsanız, tüm izin denetimi “current_user_can_x” dır.

WordPress’in başka yerlerinde olduğu gibi. Bu yeni değil – daha önce WordPress geliştirdiyseniz, bu sistemi anlıyorsunuz. Karmaşık olan şey: Current_user’ı nasıl ayarlıyorsunuz? WordPress sitesinde bir yangın dinlenme kullanıyorsanız, tek yapmanız gereken WP_REST eylemine nonce göndermektir ve her şey sizin için ele alınacaktır. V2.wp-api.org- belgeleri açın. Şimdi, WordPress’te değilseniz? Artık birçok seçeneğiniz var ve herkes için uygun tek bir boyut yok. Farklı fakat ilgili protokoller olan – her ikisi de zahmetli – OAuth 1 ve OAuth 2 var, aynı zamanda JWT jetonunun kimlik doğrulaması var, bu çok daha basit ve kullanıyorum; JWT kimlik doğrulaması için kullanımı çok kolay olan ve HTTPS kullanıyorsanız oldukça güvenli olan bir eklenti var. Kendi kimlik doğrulama sisteminizi bile yazabilirsiniz – bugün WordPress kullanıcılarını yönetmek için kullanabileceğiniz bir filtre vardır. Yani seçenek çok karmaşık, ama bu tamamen “Bugün kullanıcıları nasıl yönetiyoruz?” Ve sonra WordPress onu oradan ele aldı. Rahatsız etmek kolay çünkü çok fazla seçeneğimiz var, ama bence seçim iyi çünkü hiçbiri zamanın yüzde yüz doğru cevap değil. Sadece, “OAuth’u kullanmak zorundayım”
: Oauth can sıkıcı ve bunun kullanılmasının kesin bir nedeni yok.Daha fazla bilgi edinmek istiyorsanız, dersimin kimlik doğrulama hakkında çeşitli seçenekler içeren tüm parçaları da var.Yangın dinlenmesi hakkında söylemek istediğiniz başka bir şey var mı?Dinlenme ateşi sihirli bir mermi değil.”Yapmanız gerektiğini” düşünme
Kullanın, ancak daha iyi bir şey yapmak için düşünün. Her zaman kullanmak zorunda olmadığınızı unutmayın: Her şeyin cevabı bu değil. Sihirli bir mermi değil. Son kullanıcı harika bir şey istiyor ve insanları her zaman böyle görmeye teşvik ediyorum: Müşterilerime nasıl havalı bir şey ve WordPress’ten beklemedikleri bir şey gösterebilirim? Bu aracı, müşterimin son kullanıcısını daha mutlu etmek ve müşterimi etkilemek için nasıl kullanabilirim? Ayrıca, bunu yapamayacağımız bir şey yapmak için nasıl kullanabiliriz? Örneğin, “X için size bir web sitesi yapacağız ve X’in% 150’i için size bir web sitesi ve hücresel uygulama yapacağız. Sizi genellikle giydiğimden daha fazlasını toplayacağım, ancak iki geliştirici için ödediğinizden daha az. ” Veya çok sayıda sayfa yüklü ve sınırsız rulo olmayan kişilere tek sayfalık bir web uygulaması sunun. Bir şeyi nasıl daha iyi yapacağınızı düşünün, çünkü bu yeni bir teknolojinin çekirdeğidir: daha iyi bir şey yapmak ve eğlenmek. Başka bir şey, bundan bir proje olarak öğrenebileceğimiz şeydir. Bu engebeli bir yol haline geldi. Umarım bundan öğrenebiliriz, çünkü WordPress’in sanal gerçekliği bir veya iki yıl içinde desteklemesi ve bundan birkaç yıl sonra beyin halüsinasyonlarını doğrudan yönlendirmesi gerekecektir. WordPress’in hala herkes için çalıştığını ve işe yaradığını nasıl devam ettiririz?

admin

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir