WP REST API ve WordPress Ekosisteminin Geleceği

Post on 21-Aug-2015

173 views 5 download

Transcript of WP REST API ve WordPress Ekosisteminin Geleceği

WP REST APIve WordPress Ekosistemindeki

Değişimler

Bora Yalçın

PHPKonf 2015

Bora Yalçın

Dion Works - Ortak ve Yazılım Geliştirici

2014’ten beri Budapeşte yaşıyorum.

WordPress Budapest Community - CO-

Founder

Coffee Master ve Kahve Tiryakisi

Matt Mullenweg tarafından b2 blog yazılımından forklandı.

PHP ile yazıldı.

2003 yılında ilk versiyonu yayınlandı.

60 milyondan fazla site

Top 10M sitenin %24+

WordPress.org: 3.000+ Tema - 36.000+ Plugin

Kimler Kullanıyor?

Android ve iOS uygulamaları da WordPress (WP-API kullanılarak)

Neden Bu Kadar Çok Tercih Ediliyor?

● Açık kaynak kodlu ve ücretsiz

● Kurulumu kolay, çok az teknik bilgi gerektiriyor.

● Yazılımcılar için değil kullanıcılar için bir admin paneli

● Kullanılabilirlik önplanda

● Kolay öğreniliyor

● (Neredeyse) her yerde çalışıyor.

● Tema ve pluginler sayesinde geliştirilebilir.

● Aktif olarak geliştiriliyor.

● Büyük ve güçlü bir komuniteye ve ekosisteme sahip

WordPress Ekosistemi

WordPress.org

WordPress.com

Tema ve Plugin Marketplaces: Envato, WooThemes, Elegant Themes...

Plugin Geliştiricileri ve Servisleri: WPML, WPMUDEV, Gravity Forms, Ninja Forms, Visual Composer

WordPress E-commerce: WooCommerce, Easy Digital Downloads

WordPress Danışmanlık ve Destek Servisleri: WP Curve, WP Site Care, Yoast

Web Yazılım Firmaları, Yazılım ve Tasarımcılar: Dion Works :)

Managed WordPress Hosting Firmaları WP Engine, Kinsta, Pagely

WordPress Yönetim Servisleri: ManageWP, WP Remote, InfiniteWP

WordPress Haber Siteleri, Podcastler

Copywriterlar

WordPress Eğitimleri/Kitapları

Peki Yazılımcılar?

● PHP geliştiricileri

● Yazılımcılar için düşük bir giriş seviyesine sahip.

● Giriş kolay, ilerleme zaman ve tecrübe gerektiriyor.

● Deneyimli veya başka object oriented yapılara alışkın olan

yazılımcılar için kabus olabiliyor.

● Güvenlik yetersiz bulunabiliyor.

● Kendi ekosistemi dışında kişisel kullanım haricinde uzak durulma

eğilimi var.

● PHP dışında yazılım geliştiriciler içinse daha da uzak.

● PHP konferanslarında pek konusu geçmiyor.

Peki nasıl değişir?

API

APIİçeriğin platformdan ve dilden bağımsız olmasını sağlayacak

REST? JSON?

RESTRepresentational state transfer - sunumsal durum aktarımı SOAP ve WSDL tabanlı web servislerine spesifikasyon olarak daha basit bir alternatif olarak geliştirilmiştir. RESTful sistemler çoğunlukla HTTP protokolü üzerinden, web tarayıcıları tarafından sayfaların transferinde de kullanılan HTTP fiilleri (GET, POST, PUT, DELETE vb.) ile haberleşirler. (vikipedi)

REST? JSON?

JSONJavascript Object NotationXML'in Javascript ile çok da iyi kullanılamamasından ötürü tercih edilir. Klasik DOM ağaçlarından farksız bir yapıya sahiptir.

Kaynak: Vikipedi

WordPress ve REST API

2009’dan beri wordpress.org’da JSON API adlı bir eklenti mevcut.

2012’den beri wordpress.com kendi REST API’ını kullanıyor, Jet Pack eklentisi ile wp.com dışında da kullanılabiliyor.

2013’den beri WP REST API eklentisi geliştiriliyor.

WP REST API

v2.wp-api.org

Kolay Kullanılan

Kolay Anlaşılan

Kapsamlı Test Edilmiş

API Altyapısı

WordPress kullanılarak geliştirilen uygulamalar için

Elimde bir

WordPress REST

API olsa

neler

yapabilirim?

SPA - Single Page Application

● Başta tek bir server-side sayfa yüklemesi

● Olaylar Javascript ile gelişir

● Kesintisiz ve daha akıcı bir kullanıcı deneyimi sunar

(ideal şartlar altında)

Mobil Uygulamalar için Backend

Yeni Nesil WordPress Temaları

● The Loop olmayan

● Sonsuz ve bazen tutarsız WordPress fonksiyonlarından bağımsız (çoğunlukla)

● PHP 4 ve PHP 5.3 öncesi mirasından tamamen arınmış● Çılgın template hiyerarşisinden büyük ölçüde muaf.

Yeni Nesil WordPress Temaları

Onlarca farklı .php dosyası yerine view için React dosyaları

AngularJS yada başka bir route sistemi

Backbone, Ember, Browserify, Gulp…

(Hayalgücü ve yeteneğinize göre listeye devam edebilirsiniz)

Yeni Nesil WordPress Temaları

● Kullanıcı etkileşimi yüksek● Daha hızlı çalışan bir site, özellikle mobil deneyim

açısından avantajlı● Çevrimdışı çalışabilme (localStorage kullanımı ile)● Potansiyel olarak düşük kaynak tüketimi imkanı

Meşhur The Loop

WordPress Tema Dosya Hiyerarşisi

Twentyfifteen Teması

Devamı vardı daha

Picard Present Teması (WP-API Örnek)

Picard Present Teması (WP-API Örnek)

Peki YaWP REST API

Nasıl Çalışıyor?

GET /wp-json/wp/v2/posts

POST /wp-json/wp/v2/users/4

GET /wp-json/wp/v2/posts?s=bora

Kanlı Canlı Örnek

PHPKonf

Websitesi

phpkonf.org

Altyapı

AngularJS

CMS

JSON Dosyaları

img klasörü

“Bana 5-6 plugin ve 1 WordPress verin, size REST API vereyim” Bora Yalçın

“Bana 5-6 plugin ve 1 WordPress verin, size REST API vereyim” Bora Yalçın

Resmin küçük halinin linkini de ekle

Speaker içerik türünü API’a ekle

Work meta datasını da speaker ile gelen veriye ekle

Konuşmacılar listesi

Konuşmacı detay modalbox

Yalnızca 30 dakika içerisinde

WordPress ve WP REST API ile

Biri keşif amaçlı toplam 6 plugin kullanarak

● İçeriği yönetimi● Resim yönetimi ve düzenleme, ● Sıralama● Admin arayüzüne sahip● Kullanıcı yönetimi olan● RESTful

Bir webservis oluşturduk.

Teşekkürler!

Bora Yalçın

@borantula

byalcin@dionworks.com

borayalcin.me