Ana İçeriğe Geç

Kullanımı HTTP API WordPress

Divi: Kullanılacak en kolay WordPress teması

Divi: Tüm zamanların en iyi WordPress teması!

daha fazla 600.000 indirmeler, Divi, dünyanın en popüler WordPress teması. Tamamen, kullanımı kolay ve 62 ücretsiz şablonlardan daha fazlasını sunuyor. [Önerilen]

REST API'leri geliştiriciler arasında gittikçe daha popülerdir çünkü uygulamaları ve Twitter, MailChimp veya GitHub gibi web servisleri arasında bir iletişim aracıdır. VarışREST API WordPress edinilebilir fişe takmak (ancak Aralık ayında çekirdekte planlanmış), WordPress'te zaten mevcut olan HTTP API'sini incelemek için iyi bir fırsat sunar. Bu derste, WordPress HTTP API'sinin ne olduğunu açıklayacağım ve nasıl kullanacağınızı göstereceğim.

HTTP API

WordPress'in HTTP API'si, bir web servisinin bir uygulamasından veya başka bir siteden WordPress'e veya bunun tersine HTTP protokolü üzerinden mesaj iletmenin bir yoludur. Bu sayfaya ulaşmak için tarayıcınız BlogPasCher sunucularına bir HTTP isteği yapmak için. Şu anda gördüklerinizi içeren bir yanıt vererek cevap verdiler. WordPress REST API şimdi GUI ile platform çekirdeği arasında bir ayrıştırmaya izin veren bu tür sorgu / yanıt sistemine katılmasına izin veriyor. Ancak bundan yararlanmak için, HTTP isteklerini göndermek için bir dizi yöntem ve yardımcı program sunan WordPress HTTP API'sini nasıl kullanacağınızı öğrenmeniz gerekir.

HTTP yöntemleri ve kaynakları

HTTP protokolü yöntemler ve kaynaklar etrafında toplanır. Kaynaklar, üzerinde harekete geçmek istediklerinizi tanımlar ve üretilecek eylemin yöntemini belirler. Daha pratik olarak, kaynaklar internetteki nesnelerin URL’leridir (örneğin bu makale). Yöntem tarafında, en önemlileri şunlardır:

- GET : bir kaynağı kurtarmak için
- POST : bir kaynak oluşturmak için
- PUT : Bir kaynak değiştirmek için
- SİL : Bir kaynak silmek için

HTTP API ile örnek istek

Parmaklarınızı ıslatmak için, nasıl HTTP API ile basit bir istek gönderileceğini görelim. Fonksiyonu kullanacağız wp_remote_get Google sunucusunu sorgulamak ve ana sayfayı almak için. Bu işlev, biri kaynak, ikincisi de ayrıntıları belirtmek için bir seçenek listesi olmak üzere iki parametre alır. Daha fazla uzatmadan, hadi harekete geçelim.

$ Testi = wp_remote_get ( 'http://google.com'); "<Pre>" echo; var_dump ($ testi); echo "</ pre>";

dönüş wp_remote_get değişken içerdiği $ testi, ve Google’ın isteğimiz sonucunda döndürdüğü giriş sayfasının içeriğini temsil eder. Çizgi var_dump ($ testi); yanıtta iade edilen öğeleri görmenizi sağlar.

bölüm başlıkları mesajlar hakkında ek bilgiler içerir. Bazı REST API'leri, kendilerine gönderilen sorgularda belirli bilgiler göndermenizi isteyecektir.

bölüm yanıt durum kodunu ve cevabın açıklamasını içerir. Bulunmayan sayfalar için 404 hatasını, 501 sunucusu hatalarını veya 301 ve 302 yönlendirmesini zaten duymuş olabilirsiniz. Bu sayılar hata kodlarıdır. W3.org sitesi, hepsinin bir listesine sahiptir. HTTP hata kodları ve açıklamaları.

Elementor ile web sitenizi kolayca oluşturun

Elementor, profesyonel bir görünüme sahip herhangi bir web sitesi tasarımını kolayca oluşturmanıza olanak sağlar. Kendin yapabileceğin için pahalı ödemeyi kes. [Ücretsiz]

bölüm vücut cevabın kendisini içerir ve her şey yolunda giderken bakmanız gereken yer burasıdır. Bu örnekte, Google’ın ana sayfasının HTML’sini alıyoruz. REST API'lerinin JSON formatında yanıtları döndürmesi çok yaygındır. Göreceğimiz gibi bazı API'ler, sorgunuzun ana bölümüne bir dize eklemenizi ister.

bölüm kurabiye mesajla birlikte gelen tüm çerezleri içerecektir.

Gördüğünüz gibi, WordPress'in HTTP API'sini kullanarak sorgu göndermek zor değil. Sonuç olarak, REST API'sinde olabilecekler, gönderilen bilginin ayrıntılarıyla ilgili telaşlı olmalarıdır, bu tutarlılık için iyi bir şeydir. Bu nedenle kullandığınız APis'in belgelerini okurken dikkatli olun.

Sorgu API'leri

Birçoğunuzun REST API’leri ile etkileşimde bulunmak için HTTP API’sını kullanacağı açıktır. Fonksiyonun ikinci parametresini kullanmanız gerekecektir. wp_remote_get bir çok şeyi açıklığa kavuşturmak için, kimliğinizi doğrulayın, sonuçlarınızı hassaslaştırın vb. Kendine saygılı herhangi bir API kimlik doğrulaması gerektirir, ancak burada bu sorunu çözeceğiz bir erişim belirteci oluşturmak (erişim belirteci) Kod!

En iyi WordPress temalarını ve eklentilerini mi arıyorsunuz?

Envato'daki en iyi eklentileri ve WordPress temalarını indirin ve web sitenizi kolayca oluşturun. 49.720.000 indirme işleminden daha fazla. [ÖZEL]

$ İsteği = wp_remote_get ( 'https://api.pinterest.com/v1/boards/ <-board tanımlayıcı> / ev ofis / çam / ACCESS_TOKEN = <your-erişim belirteci>?'); = Json_decode $ Pines ($ isteği [ 'vücudun] doğru); if (empty ($ çam [ 'veri'])) {echo '<ul>'; foreach ($ çam $ çam gibi [ 'veri']) {echo '<li> <a href="'. $pin['url'].'">. pim $ [ 'notu']. '</a> </ li>'; } Yankı '</ ul>'; }

İlk satırda değiştirdiğinizden emin olun <Kimlik kartı> Pinterest duvar belirleyerek <Kişisel-access-belirteci> erişim belirteciyle kendinizi yaratırsınız. Cevap JSON'da, bu yüzden ikinci satır onu çözüyor. Çamlar içinde bulunur $ Pines [ 'veri']Bu yüzden içinden geçip pimleri bir listeye koyarız. Bu kodu temanızın şablon dosyasına yapıştırabilir ve sonucu görebilirsiniz.

kimlik doğrulama

Bu kısmı için, örnek olarak Twitter'da REST API kimlik almak.

Bir API ile başladığınızda, dokümantasyonu dikkatlice okumak ve iyice anlamak çok önemlidir. Kimlik doğrulama, geliştiricilerin sıklıkla yaptığı şeylerden biridir. Sebeplerden biri belgelerin yanlış okunması. REST API'leriyle çalışmaya alışkınsanız, doğrudan bölüme atlayabilirsiniz. kimlik doğrulama. Twitter için, sorgunuzun ana bölümüne karakter dizesini dahil etmeniz gerektiğini söyleyen dokümantasyon satırını kaçırmak kolaydır. grant_type = client_credentials. Kodun dahil edilmemesi, kodunuzun geri kalanının tümü mükemmel olsa bile tamamen başarısızlıkla sonuçlanacaktır. Her zaman belgeleri okuduğunuzdan ve anladığınızdan emin olun. Bunu Twitter için yaptıktan sonra, bir erişim belirteci üreten böyle bir POST isteği oluşturabilirsiniz:

$ Anahtar = base64_encode (urlencode ( "PKI865f6uvGZA6xvFTtb8IAA: i4pmOV0duXJEgty95Ghth89dh5wDIqfJOovKjs92ei878")); $ İsteği = wp_remote_post ( 'https://api.twitter.com/oauth2/token', array ( 'başlıkları' => array ( 'Yetki '=>' Temel'. $ Anahtar,' Content-type '=>' uygulama / x-www-form-urlencoded, karakter kümesi = UTF-8 '),' vücut => 'grant_type = client_credentials', 'httpversion'=> '1.1')); = Json_decode $ Token ($ isteği [ 'vücut']); "<Pre>" echo; var_dump ($ belirteç); echo "</ pre>";

İlk şey, bir erişim belirtecini ve gizli bir dizgiyi (gördüğünüzler geçerli değil) kodlamak. Sonra sorgunun kendisini formüle edin. Burada görüyorsunuz, Twitter tavsiyelerine göre iki başlık ekledik Yetki et Içerik türü, Biz zinciri dahil ettik grant_type = client_credentials et httpversion. Bütün bunlar olmadan, Twitter API'sında bir sonraki sorguları yapmak için gereken erişim belirtecini oluşturamayız. sonuç:

wp-http-api-twitter-belirteci

Artık erişim belirtecine sahip olduğunuza göre, onu önbelleğe almak iyi bir fikirdir, çünkü bir süredir geçerlidir ve her istek için Twitter REST API'sinden almak sizin için hiçbir şey yapmaz. kodu. Geçici kavramı bu senaryoya karşılık gelir, hadi uygulayalım.

$ Token = get_transient ( 'TWITTER_ACCESS_TOKEN'); $ Jetonu = (boş ($ belirteci))? get_twitter_access_token (): $ belirteci; $ İsteği = wp_remote_get ( 'https://api.twitter.com/1.1/followers/ids.json?screen_name= <e-kullanıcı adı-twitter> & sayısı = 5', array ( 'başlıkları' => array ( 'Yetki' . => 'hamiline' $ belirteç 'İçerik-türü' => uygulama / x-www-form-urlencoded, karakter kümesi = UTF-8 '), httpversion' => '1.1')); = Json_decode $ Token ($ isteği [ 'vücut']);

Bu istek, değiştirirseniz izleyicilerinizden 5 almalıdır <Kişisel-kullanıcı adı-twitter> Twitter kullanıcı adınız ile. Bu kodda, erişim kodumuzu geçici bir durumdan kurtarıyoruz. Eğer orada değilse, işlevi kullanırız. get_twitter_access_token (önceki örneğimizden tasarlayabilirsiniz). Bu işlevin bir geçiş sırasında erişim belirtecini eklemesi gerekeceğini unutmayın.

HTTP API WordPress fayda fonksiyonları

Sorguları yürütmenize izin veren 4 işlevleri vardır. Bunlar wp_remote_get, wp_remote_post, wp_remote_head, wp_remote_request. Sonuncusu genelleştirilmiştir, yani herhangi bir HTTP yöntemiyle kullanabilirsiniz.

Bir yanıtın bir kısmını almak için 5 işlevleri de vardır. Bunlar wp_retrieve_body, wp_retrieve_header, wp_retrieve_headers, wp_retrieve_response_code, wp_retrieve_response_message.

Çevrimiçi Mağazanızı kolayca oluşturun

WordPress'te fiziksel ve dijital ürünlerinizi satmak için ücretsiz WooCommerce, en iyi e-ticaret eklentilerini indirin. [Önerilen]

Diğer geliştiricilerin kodunuzu kolayca anlayabilmesi için, HTTP API'nin işlevlerini mümkün olduğu kadar kullanın.

WordPress'teki geliştirme, API yönelimli bir yaklaşım için çok önemlidir. Banyoda kalmak için, farklı WordPress API'lerini nasıl kullanacağınızı öğrenmenin tam zamanı.

Zaten bir WordPress API kullanıyor musunuz? Neden ve nasıl yapıyorsun? Onları daha da basitleştirecek ipuçlarınız var mı? Yorumlar bölümümüzde bizimle paylaşın.

Bu makalede, 1 yorumunu içeren

YORUM BIRAKIN

E-posta adresiniz gösterilmeyecektir. Doldurulması zorunlu alanlar * ile işaretlenmiştir *

Bu site, istenmeyenleri azaltmak için Akismet'i kullanıyor. Yorum verilerinizin nasıl kullanıldığı hakkında daha fazla bilgi edinin..

Başa dönüş
2 hisseleri
hisse2
cıvıltı
Enregistrer