Özellikten sonra özellik, WordPress bloglama sisteminin ve uygulama geliştirme sisteminin mantığını bırakma eğilimindedir. Bu değişikliğe doğru ilk göze çarpan adım giriş oldu 2.9 sürümünde özel yazı tipleri.

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

Bu eğiticide, WordPress REST API'nin 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 nasıl kurulur WordPress blog 7 adımda 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çe söylemek gerekirse, WordPress REST API'nin, WordPress'in çekirdeği ile grafik arayüzünden geçmeden etkileşime girmenize izin verdiğini anlayın. Bu, çekirdek ve GUI'nin ayrıştırılması anlamına gelir. Bu API ile, örneğin yeni bir makale oluşturabilirsiniz. gösterge paneli. REST API, 4.4 sürümü Aralık ayına kadar piyasaya sürüldüğünde çekirdeğe dahil edilecek.

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

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

REST API ile başlamak için eklentiye ihtiyacınız olacak REST API yanı sıra WordPress'in en son sürümü. Ona sahipsin ? Değilse, nedenini görmekWordPress HTTP API bilgisi, uzaktan arama yapmak için de 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 REST API aracılığıyla web sitemizden makaleler alacağız. Üretim web sitesinde REST API eklentisinin kurulu ve etkinleştirildiğinden 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 eklenti olduğunu bilmesini sağlayan eklenti başlığını (kodun başındaki yorumlar) içerir. Daha sonra, birkaç satır artırılmış bir widget oluşturmak için minimum kod geliyor. 

İşleve daha fazla vurgu yapacağız eklendi (), çünkü parçacığın görüntüsü bunun içinde inşa edilmiştir. Bu nedenle, aramaları HTTP API kullanarak yapacağımız bu işlevin içindedir.

Makaleleri al

Üretim web sitesini veya çevrimiçi web sitesini sorgulamak için bazı bilgilere ihtiyacımız olacak. Bunlar bir şekilde çevrimiçi web sitemizin WordPress çekirdeğine yöneltilen soruyu oluşturacaktır. Bunlar temel API yolu, kullanılan yol, kullanılan sonlandırma, başlıklar ve parametrelerdir.

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

Temel WordPress REST API yolu her zaman / 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 yol, kullanılan HTTP yöntemine göre farklılaştırılan bir dizi sonlandırmaya sahip olabilir. Böylece bir makalenin rotası 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ırmayı kullanarak, makaleleri almak bir kod satırına indirgenir:

$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_Error, işlevimizin yürütülmesini sonlandırıyoruz eklendi ()eğer değilse, fonksiyonun cevabının içeriğini inceleriz wp_remote_retrieve_body JSON biçiminde kodlanmış makaleler arıyor. İş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 wp_remote_get aksi takdirde bu örnek WordPress kapsamının dışında olacaktır. Bu, WordPress'in çekirdeğini Joomla, Prestashop, Drupal, Android veya IOS gibi başka herhangi 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

Bu nedenle, 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 ileri gidin

Verilerle etkileşim amacıyla WordPress çekirdeğini sorgulamak, kullanımının% 90'ını oluşturur. Ancak yine de keşfetmenin ilginç olacağı birkaç alan var: Caching yanıt, kimlik doğrulama ve hizmet keşfi.

Yanıt önbelleğe alma

Örneğimizdeki makaleler gibi bilgileri aldığımızda, bunları önbelleğe almak iyi bir uygulamadır, yani aynı bilgilere yönelik diğer çağrılardan kaçınmak için bunları arayan terminalde bir yere kopyalayın. sunucu. Bunu başarmak için farklı yaklaşımlar mevcuttur: JP REST API CACHE olarak da adlandırılan eklentileri önbellek, ve geçişler.

Geçici olma fikri, bilgileri yerel olarak bir son kullanma tarihi ile kopyalamaktır. Varsayılan olarak, kopyalama veritabanında olacaktır, ancak bazı uygulamalar doğrudan belleğe kopyalamaya izin vererek geri yükleme işlemini daha da hızlı hale getirir.

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

Bilgi daha sonra yerel veritabanından sona erene kadar alınır ve daha sonra uzak web sitesinden geri çağrılır. Geçici olay kavramını içeren (yeni bir işlevle) widget'ımızın 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>';

    echo $args['after_widget'];

}

Doğrulama

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

Temel kimlik doğrulama : iki yöntemden daha basit olanı bu. Kullanıcı adınızı ve şifrenizi her talepte göndermekten oluşur ve bu da büyük güvenlik riskleri taşır. Bu nedenle üretimde mümkün olduğunca KULLANILMAMALIDIR.

Temel kimlik doğrulamasını kullanmak için eklentiyi kurmanız ve etkinleştirmeniz gerekir Temel-Auth. Ardından, kimliği doğrulanmış bir çağrı yapmak için başlığı şu şekilde bildirin Temel ve aramayı yap:

$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 makaleyi silersiniz..

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ı, aşağıdakilerin kurulumunu ve birlikte 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ımı kendi başına bir sorun değildir, ancak sorun olan komut listesinin eksikliğidir.

Hizmet keşfi

Herhangi bir API öğrenmenin bir parçası, seçeneklerine aşina hale geliyor. Bu yüzden şu bölüme göz atmanızı öneririm: hizmet keşfi WordPress REST API belgelerinden.

Orada makaleler, gönderi türleri, medya, meta veriler ve ayrıca bir kullanıcıyı silememe gibi düzensizlikler veya diğer küçük endişeler ile etkileşim için yöntemler bulacaksınız.

Bunun devam etmekte olan ve zaten çok ilginç olan bir çalışma olduğunu unutmayın.

WordPress REST API'yi kimler kullanır?

Her şeyde öncüler vardır, WordPress REST API istisna değildir. İşte gençliğine rağmen API'den yararlanan birkaç şirketin kısa bir listesi:

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

WP Canlı Arama API'yi arama işlevleri için kullanan ücretsiz bir eklentidir.

editus ön uç düzenleme işlevleri için API kullanan premium bir eklentidir.

D'après Bu şeyi kim kullanıyor? diğer kişiler ve şirketler, mobil uygulamalar oluşturmak için WordPress REST API'yi kullanıyor.

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

Ayrıca WordPress REST API kullanıyor musunuz?  Konuyla ilgili izlenimlerinizi almak isteriz.

Sunduğu fırsatları nasıl buluyorsunuz? Tepkilerinizi yorum bölümümüzde bizimle paylaşın.

Ayrıca bazı premium WordPress eklentilerini keşfedin  

diğer kullanabilirsiniz WordPress eklentileri modern bir görünüm vermek ve blogunuzun veya web sitenizin kullanımını optimize etmek için.

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

1. WordPress Ultimate Yönlendirmesi

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

Wordpress nihai yönlendirme eklentisi

Eklentinin yaptığını yapan, ancak hepsini aynı anda yapmayan eklentiler var. Bu eklenti, tüm olağan 404 yönlendirme işlevselliğini ve ayrıca en sevdiğimiz "en yakın URL eşleşmesine otomatik yeniden yönlendirme" yi 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 eklenti sayesinde şunları yapabilirsiniz: Bir video yap Hedeflenen bir kitle için kullanışlıdır, bunu sosyal ağlarınızda ve kişi listenizde e-posta yoluyla paylaşın ve bazı reklamlar gönderin. Böylece insanlar videoyu görecek ve beğenecek.

Video beklenen ilgiyi yarattığı için izleyenlere şunlar sunulur:

  • harika ipuçları almak için e-posta listenize kaydolun
  • seninle temas kurmak
  • videoda söylediğin ilginç şeyi paylaş
  • videoyu arkadaşlarıyla paylaş
  • harekete geçirici mesaj düğmesine tıklayın
  • ve diğer

Ve tüm bu eylemler videonun hemen sağında sunulur.

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.Commentpress ajax yorumları ekleme, düzenleme ve silme yorumları

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 şunlardır: yorumların kolay eklenmesi, kullanıcıların belirli yorumları yanıtlama imkanı, yorumların sayfalandırılması, yorum bölümünün yönetiminin tam yönetimi, görüntülerin kolay eklenmesi için düğmeler, videolar ve bağlantılar, tamamen duyarlı bir düzen, formu güvence altına almak ve spam'ı önlemek için bir Captcha ve çok daha fazlası.

Indir | gösteri | Web hosting

Önerilen Kaynaklar

Web sitenizi oluşturmanıza ve yönetmenize yardımcı olacak diğer önerilen kaynaklar hakkında bilgi edinin.

Sonuç

Orada! Bu eğitim için bu kadar. Bu eğiticinin size WordPress REST API'sini nasıl kullanacağınızı göstermesini umuyoruz. çekinmeyin 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.

...