Ana İçeriğe Geç

REST API WordPress nasıl kullanılır

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]

Özelliklerden sonra, WordPress, uygulama geliştirme sisteminin yönetimini ele geçirmek için bloglama sisteminin katını düşürme eğilimindedir. Bu değişime yönelik ilk dikkat çeken adım tanıtım 2.9 sürümünde özel yazı tipleri.

Bugün, dönüşüm gelişiyle devam ediyor WordPress REST API'sı.

Bu derste, WordPress REST API'sinin ne olduğunu açıklayacağım ve nasıl kullanacağınızı göstereceğim.

Ama daha önce, eğer WordPress keşfi hiç kurmadıysanız Bir WordPress blog 7 adımlarını nasıl yüklenir et Nasıl bulmak yüklemek ve blogunuzda bir WordPress tema etkinleştirmek için

O zaman neden burada olduğumuza dönelim.

REST API nedir

Basit hale getirmek için, WordPress'in REST API'sinin grafiksel arayüzünden geçmeden WordPress'in çekirdeğiyle etkileşime girmesine izin verdiğini anlayın. Bu, çekirdeği ve GUI'yi ayırmak anlamına gelir. Bu API ile, örneğin, erişmek zorunda kalmadan yeni bir makale oluşturabilirsiniz. gösterge paneli. REST API, Aralık ayına kadar 4.4 sürümünün sürümünde çekirdeğe dahil edilecektir.

Bu eğitimin konusunun niteliği göz önüne alındığında, iyi bir PHP ve WordPress bilgisi gereklidir.

Bu eğitim için neye ihtiyacımız var?

REST API ile başlamak için, eklentisi gerekiyor REST API yanı sıra en son WordPress sürümünü de bulabilirsiniz. Sende var mı Değilse, nedenini görmek. WordPress'in HTTP API'si hakkındaki kavramlar, uzaktan arama yapmak için iyi şirketler olacaktır.

Bu bağlantıya tıklayarak keşfedin WordPress'e eklenti nasıl kurulur (eklenir)

Bu eğitici için bir proje olarak, yerel bir WordPress kurulumu yaratacaktır web sitemizden makaleleri REST API'siyle alacağız. Üretim web sitesinde REST API eklentisinin kurulu ve etkin olduğundan emin olun.

Şimdi bir Widget yerel kurulumunuzda. İşte temel kod:

/**
 * Plugin Name: REST API Widget Essai
 * Plugin URI: http://le-site-de-votre-widget-ici.com
 * Description: Ce widget récupère des articles à l'aide de l'API REST
 * Version: 1.0
 * Author: Votre nom
 * Author URI: http://votre-site.com
 */

class Mes_Articles_Widget extends WP_Widget {

    public function __construct() {
        $widget_details = array(
            'classname' => 'widget-essai-rest-api',
            'description' => 'Un widget qui récupère des articles à l'aide de l'API REST depuis un autre site'
        );

        parent::__construct( 'widget-essai-rest-api', 'REST API Widget Essai', $widget_details );

    }

    public function form( $instance ) {
        $title = ( !empty( $instance['title'] ) ) ? $instance['title'] : '';
        ?>

        <p>
            <label for="<?php echo $this->get_field_name( 'title' ); ?>">Title: </label>
            <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
        </p>

        <?php
    }
    public function widget( $args, $instance ) {
        echo $args['before_widget'];
        if( !empty( $instance['title'] ) ) {
            echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
        }
        // le code fonctionnel du widget ici
        echo $args['after_widget'];
    }
}
add_action( 'widgets_init', function(){
     register_widget( 'Mes_Articles_Widget' );
});

Yerel web sitenizin eklenti dizininde adlı bir klasör oluşturun. Widget test-dinlenme-api. Bu klasörde adlı bir dosya oluşturun. Widget test-dinlenme-api.php ve yukarıdaki kodu yapıştırın.

Bu arada keşfedin VersionPress ile WordPress sürümünü nasıl yönetir ve geri yükler

Bu kod, WordPress'in bir uzantı olduğunu bilmesini sağlayan uzantıların başlığını (kodun başında bulunan yorumlar) içerir. Sonra birkaç satır artarak bir widget yaratmanın asgari kodu gelir.

İşleve daha fazla önem vereceğiz eklendi ()onun içinde olduğu için widget'ın görüntüsü inşa edilmiştir. Bu nedenle, bu fonksiyonun içinde HTTP API kullanarak çağrılar yapacağız.

Makaleleri al

Üretim web sitesini veya web sitesini çevrimiçi olarak sorgulamak için bazı bilgilere ihtiyacımız olacak. Bunlar bir şekilde WordPress'in özünü çevrimiçi web sitemizin sorduğu soru olacak. Bunlar API'nin temel yolu, kullanılan yol, kullanılan sonlandırıcı, başlıklar ve parametrelerdir.

Keşfeterek görsel resimlerinizi yüceltin WordPress blogunda etkileşimli görüntüler nasıl oluşturulur?

Baz yolu REST API WordPress daima / Wp-json / wp / v2 /. Böylece, tam yol olacak http://votre-domaine.com/wp-json/wp/v2/.

Öğeleri almak için kullanılan rota / mesajlar. Makaleler için tam rotayı yapan şey http://votre-domaine.com/wp-json/wp/v2/posts.

Her rota, kullanılan HTTP yöntemiyle farklılaştırılmış çok sayıda sona sahip olabilir. Yani bir makalenin yolu olabilir / Mesajlar / 291. Bu yol 3 sonlar:

GET : makaleyi almak için
PUT : makaleyi güncellemek için
SİL : makaleyi silmek için.

HTTP API ve GET sonlandırmasını kullanarak, makalelerin alınması bir kod satırına iner:

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]

$response = wp_remote_get( 'http://mysite.com/wp-json/wp/v2/posts/' );

Makalelerinizi keşfederek popüler hale getirin WordPress paylaşım düğmeleri ekleyin nasıl

Cevap bir nesne ise WP_Errorişlevimizin yürütülmesini tamamladık eklendi ()eğer değilse, fonksiyonun cevabının içeriğini inceleriz wp_remote_retrieve_body JSON formatında kodlanmış makaleler arıyorum. İşlev böyle görünüyor eklendi () :

 public function widget( $args, $instance ) {
    $response = wp_remote_get( 'http://mysite.com/wp-json/wp/v2/posts/' );

    if( is_wp_error( $response ) ) {
        return;
    }

    $posts = json_decode( wp_remote_retrieve_body( $response ) );

    if( empty( $posts ) ) {
        return;
    }   
    echo $args['before_widget'];

    if( !empty( $instance['title'] ) ) {
        echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
    }
    if( !empty( $posts ) ) {
        echo '<ul>';
        foreach( $posts as $post ) {
            echo '<li><a href="' . $post->link. '">' . $post->title->rendered . '</a></li>';
        }
        echo '</ul>';
    }
    echo $args['after_widget'];
}

Bu örnekte ilginç olan, işlevi değiştirerek olmasıdır. wp_remote_get bir başka deyişle, bu örnek WordPress çerçevesini bırakacaktır. Bu, Joomla, Prestashop, Drupal, Android veya IOS olsun, WordPress'in özünü başka bir platformdan sorgulayabileceğiniz anlamına gelir.

Bunları keşfederek daha ileri gidin Web sitenizi mobil bir uygulamaya dönüştürmek için 8 WordPress eklentileri

Böylece bir WordPress arka ofisine bağlı yerel bir mobil uygulama oluşturabilirsiniz. REST API, WordPress'i bir uygulama geliştirme platformuna dönüştürür.

REST API ile daha

WordPress'in çekirdeğini verilerle etkileşime girmek amacıyla sorgulamak, kullanımının% 90'ini oluşturur. Ancak keşfedilmeyi bekleyen ilginç alanlar var: Caching yanıt, kimlik doğrulama ve servis bulma.

Yanıt önbelleğe alma

Örneğimizin makaleleri gibi bilgileri alırken, onları önbelleğe almak iyi olur, yani aynı bilgi için başka aramalardan kaçınmak için arama terminalinde bir yere kopyalayın sunucu. Buna ulaşmak için farklı yaklaşımlar mevcuttur. JP REST API CACHE olarak da adlandırılan eklentileri önbellek, ve geçişler.

Geçici fikir, bilgileri yerel olarak son kullanma tarihi ile kopyalamaktır. Varsayılan olarak, kopya veritabanında olacaktır, ancak bazı uygulamalar oluşturma işlemini daha hızlı hale getiren doğrudan belleğe kopyalayabilir.

Bunlara da bakınız Web sitenizi önbelleğe almayı optimize etmek için 7 premium WordPress eklentileri

Bilgi daha sonra uzaktaki web sitesinden geri çağrıldığı zamana kadar yerel veri tabanından alınır. Widget'ımızın geçici kavramını içeren (yeni bir işlevle) değiştirilmiş bir sürümü:

public function get_remote_posts() {
    $posts = get_transient( 'remote_posts' );
    if( empty( $posts ) ) {
        $response = wp_remote_get( 'http://votre-domaine.com/wp-json/wp/v2/posts/' );
        if( is_wp_error( $response ) ) {
            return array();
        }

        $posts = json_decode( wp_remote_retrieve_body( $response ) );

        if( empty( $posts ) ) {
            return array();
        }

        set_transient( 'remote_posts', $posts, HOUR_IN_SECONDS );
    }

    return $posts;
}

public function widget( $args, $instance ) {
    $posts = $this->get_remote_posts();

    if( empty( $posts ) ) {
        return;
    }
    
    echo $args['before_widget'];

    if( !empty( $instance['title'] ) ) {
        echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
    }

    echo '<ul>';
    foreach( $posts as $post ) {
        echo '<li><a href="' . $post->link. '">' . $post->title->rendered . '</a></li>';
    }
    echo '</ul>';

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]

    echo $args['after_widget'];

}

kimlik doğrulama

Dış kaynaklarla çalışırken, kendinizi tanımlamanız önerilir. Bu kimlik doğrulama işlemi ile yapılır. REST API, sizi tanımlamanız için iki yöntem sunar: Temel kimlik doğrulama ve OAuth.

Temel Kimlik Doğrulama : Bu iki yöntemden en basit olanı budur. Önemli güvenlik riskleri gerektiren her istek için kullanıcı adınızı ve şifrenizi göndermekten ibarettir. Bu nedenle, mümkün olduğunca üretimde kullanmamalısınız.

yüklemek, temel kimlik doğrulamasını kullanmak ve eklentiyi etkinleştirmek için Temel-Auth. Ardından, kimliği doğrulanmış bir arama yapmak için başlığı Temel <Base64 kodlanmış adı: şifre> ve arama yapmak:

$headers = array (
    'Authorization' => 'Basic ' . base64_encode( 'username:password' ),
);

$response = wp_remote_request( 'http://votre-domaine.com/wp-json/wp/v2/posts/1234/', array(
    'method' => 'DELETE',
    'headers' => $headers
));

Ayrıca bakınız WordPress'te çift faktörlü kimlik doğrulama nasıl eklenir

Bu örneğe dikkat edin, çünkü web sitenizde denerseniz, varsa 1234 kimliğine sahip olan makaleyi sileceksiniz..

OAuth : Belgeler açısından hala belirsiz olan bu yöntem, eklentiyi yüklemenizi ve etkinleştirmenizi gerektirir OAuth1. Bu kimlik doğrulama yönteminin uygulanması, kurulumu ve birleşik kullanımını içerir. WP-CLI, WordPress için bir komut satırı ve WP CLI Müşteri.

Komut satırı arayüzlerinin tanıtılması başlı başına bir sorun değildir, ancak bunu zorlaştıran bir sipariş listesinin olmamasıdır.

Hizmet keşfi

herhangi bir API öğrenme kısmı kendi seçenekleriyle aşina olmaktır. O yüzden bölümüne danışmanızı tavsiye ederiz hizmet keşfi WordPress REST API belgeleri.

Makalelerle, yazı türleriyle, medyayla, meta verilerle ve bir kullanıcıyı veya diğer küçük kaygıları silememek gibi düzensizliklerle etkileşime girme yöntemleri bulacaksınız.

Unutmayın ki bu hala çok ilginç olan bir çalışmadır.

Kim REST API WordPress kullanıyor?

Her şeyde öncüler var, WordPress REST API istisna değildir. Gençliğine rağmen, API'yi kullanan birkaç şirketin kısa bir listesi:

vermiş olduğu insan Ön uç için daha esnek bir şeyler isteyen müşteriler için web siteleri oluşturmak üzere API'yi kullanın.

WP Canlı Arama kendi arama fonksiyonları için API kullanımını kolaylaştıran ücretsiz eklentidir.

editus API'yi ön kısımdaki düzenleme işlevleri için kullanan premium bir eklentidir.

itibaren Kim bu şeyi kullanıyor? diğer kişiler ve şirketler mobil uygulamalar tasarlamak için REST API WordPress uygulamak.

Gençliğine rağmen, WordPress REST API, WordPress'in bir uygulama geliştirme platformuna dönüştürülmesinde önemli bir özellik olarak umut vericidir.

WordPress REST API'sini de kullanıyor musunuz? Konuyla ilgili izlenimlerinizi almak isteriz.

Sunduğu fırsatları nasıl buluyorsunuz? Yorumlarınızı bizimle görüşlerinizi paylaşın.

Ayrıca bazı premium WordPress eklentilerini keşfedin

Modern bir görünüm kazandırmak ve blogunuzun veya web sitenizin rahatlığını artırmak için diğer WordPress eklentilerini kullanabilirsiniz.

Size, bu konuda yardımcı olacak bazı premium WordPress eklentileri sunuyoruz.

1. WordPress Ultimate Yönlendirmesi

"Ultimate WordPress Redirect" eklentisi, tüm yeniden yönlendirme ihtiyaçlarınızı, 404'i, site geçişini ve / veya etki alanı değişikliği veya transferini yönetmek için ihtiyacınız olan tek ve tek çözümdür.

Eklentinin ne yaptığını yapan, ancak bir kerede değil, eklentileri var. Bu eklenti, tüm olağan 404 yeniden yönlendirme özelliklerini ve en sevdiğimiz "en yakın URL eşleşmesine otomatik yeniden yönlendirmeyi" sağlar.

Indir | gösteri | Web hosting

2. Leadeo

Açılış Sayfanızda bir video kullanmanın, dönüşümleri% 80'ten daha fazla artırabileceğini biliyor muydunuz? Aynı şekilde,% 46% 'den daha fazla olan satış sayfalarında. Leadeo, blogunuzdaki videoyu izleyen kişilerden daha fazla müşteri adayı ve satış elde etmenize yardımcı olabilir.Leadeo

Bu eklentiyle, hedef kitle için faydalı bir video oluşturabilir, sosyal ağlarınızda ve kişi listenizde e-postayla paylaşabilir ve bazı reklamlar gönderebilirsiniz. Böylece insanlar videoyu görecek ve beğenecek.

Video beklenen ilgiyi uyandırdığında, izleyenlere önerildi:

Ç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]

  • iyi ipuçları almak için e-posta listenize abone olun
  • seninle temas kurmak
  • videoda söylediğin ilginç şeyi paylaş
  • videoyu arkadaşlarıyla paylaş
  • harekete geçirme ifadenizi tıklayın
  • ve diğer

Ve tüm bu eylemler sadece videonun sağına önerildi.

Indir | gösteri | Web hosting

3. CommentPress

CommentPress, hızlı ve kolay bir şekilde yorum eklemenizi, düzenlemenizi ve silmenizi sağlayan güçlü bir WordPress eklentisidir. CommentPress Ajax, jQuery ve PHP'yi kullanarak ziyaretçilere sayfayı yeniden yüklemek zorunda kalmadan yorum ekleyebilmelerini sağlar.

Bu eklenti birçok kişiselleştirme seçeneğine sahiptir ve nihayet istediğiniz görünümü verir. Spam’ı engellemek için bir captcha özelliğine sahip ve yorum bölümüne daha fazla güvenlik getiriyor.

Başlıca özellikleri: yorumların kolay eklenmesi, kullanıcılara belirli yorumlara cevap verme imkanı, yorumların sayfalandırılması, yorum bölümünün tam yönetimi, resimlerin kolay eklenmesi için düğmeler, videolar ve linkler, tamamen duyarlı bir düzen, formu korumak ve spam'ı önlemek için bir Captcha ve daha fazlası.

Indir | gösteri | Web hosting

Önerilen Kaynaklar

Web sitenizi oluştururken ve yönetirken size eşlik edecek diğer önerilen kaynakları keşfedin.

Sonuç

Orada! Bu eğitim için bu kadar. Umarız bu rehber size WordPress REST API'sini nasıl kullanacağınızı göstermiştir. Tereddüt etmeyin Bu makaleleri arkadaşlarınızla en sevdiğiniz sosyal ağlarda paylaşın.

Bununla birlikte, ayrıca bize danışabilirsiniz kaynakların bulunduğuİnternet siteleri oluşturma projelerinizi yürütmek için daha fazla elemana ihtiyacınız varsa, WordPress blog oluşturma.

Öneriniz veya yorumunuz varsa, bunları bölümümüzde bırakın. Yorumlar.

...

Bu makale yorumları 4 içeriyor
  1. Ben şahsen REST API ve WooCommerce ile şu anda bir sorun var, bu yazı için teşekkür ederiz. Ben LET IT BILL senkronizasyonu ile sorunla karşılaşırsanız beri, .htaccess üzerinde Secupress ve bazı kuralları eklentisi güvenliğini kullanır.

    Ben Kararlı üretim ortamında Legacy gitti.

    Une idée?

  2. Merhaba, başlığı beyan etmek demek

    $ Başlıkları = dizi (
    'Yetki' => 'Temel'. base64_encode ( 'kullanıcı adı: şifre'),
    );

    ama üzgünüm her şeyi anlamak biraz sorun bulunun neyi

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üş
11 hisseleri
hisse10
cıvıltı1
Enregistrer