65
WP REST API ve WordPress Ekosistemindeki Değişimler Bora Yalçın PHPKonf 2015

WP REST API ve WordPress Ekosisteminin Geleceği

Embed Size (px)

Citation preview

Page 1: WP REST API ve WordPress Ekosisteminin Geleceği

WP REST APIve WordPress Ekosistemindeki

Değişimler

Bora Yalçın

PHPKonf 2015

Page 2: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 3: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 4: WP REST API ve WordPress Ekosisteminin Geleceği

Kimler Kullanıyor?

Page 5: WP REST API ve WordPress Ekosisteminin Geleceği
Page 6: WP REST API ve WordPress Ekosisteminin Geleceği
Page 7: WP REST API ve WordPress Ekosisteminin Geleceği
Page 8: WP REST API ve WordPress Ekosisteminin Geleceği
Page 9: WP REST API ve WordPress Ekosisteminin Geleceği
Page 10: WP REST API ve WordPress Ekosisteminin Geleceği
Page 11: WP REST API ve WordPress Ekosisteminin Geleceği
Page 12: WP REST API ve WordPress Ekosisteminin Geleceği
Page 13: WP REST API ve WordPress Ekosisteminin Geleceği
Page 14: WP REST API ve WordPress Ekosisteminin Geleceği
Page 15: WP REST API ve WordPress Ekosisteminin Geleceği
Page 16: WP REST API ve WordPress Ekosisteminin Geleceği
Page 17: WP REST API ve WordPress Ekosisteminin Geleceği
Page 18: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 19: WP REST API ve WordPress Ekosisteminin Geleceği
Page 20: WP REST API ve WordPress Ekosisteminin Geleceği
Page 21: WP REST API ve WordPress Ekosisteminin Geleceği

Neden Bu Kadar Çok Tercih Ediliyor?

Page 22: WP REST API ve WordPress Ekosisteminin Geleceği

● 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

Page 23: WP REST API ve WordPress Ekosisteminin Geleceği

WordPress Ekosistemi

Page 24: WP REST API ve WordPress Ekosisteminin Geleceği

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ı

Page 25: WP REST API ve WordPress Ekosisteminin Geleceği

Peki Yazılımcılar?

Page 26: WP REST API ve WordPress Ekosisteminin Geleceği

● 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.

Page 27: WP REST API ve WordPress Ekosisteminin Geleceği

● 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?

Page 28: WP REST API ve WordPress Ekosisteminin Geleceği

API

Page 29: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 30: WP REST API ve WordPress Ekosisteminin Geleceği

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)

Page 31: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 32: WP REST API ve WordPress Ekosisteminin Geleceği

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.

Page 33: WP REST API ve WordPress Ekosisteminin Geleceği

WP REST API

v2.wp-api.org

Page 34: WP REST API ve WordPress Ekosisteminin Geleceği

Kolay Kullanılan

Kolay Anlaşılan

Kapsamlı Test Edilmiş

API Altyapısı

WordPress kullanılarak geliştirilen uygulamalar için

Page 35: WP REST API ve WordPress Ekosisteminin Geleceği

Elimde bir

WordPress REST

API olsa

neler

yapabilirim?

Page 36: WP REST API ve WordPress Ekosisteminin Geleceği

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)

Page 37: WP REST API ve WordPress Ekosisteminin Geleceği

Mobil Uygulamalar için Backend

Page 38: WP REST API ve WordPress Ekosisteminin Geleceği

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.

Page 39: WP REST API ve WordPress Ekosisteminin Geleceği

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)

Page 40: WP REST API ve WordPress Ekosisteminin Geleceği

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ı

Page 41: WP REST API ve WordPress Ekosisteminin Geleceği

Meşhur The Loop

Page 42: WP REST API ve WordPress Ekosisteminin Geleceği

WordPress Tema Dosya Hiyerarşisi

Page 43: WP REST API ve WordPress Ekosisteminin Geleceği

Twentyfifteen Teması

Devamı vardı daha

Page 44: WP REST API ve WordPress Ekosisteminin Geleceği

Picard Present Teması (WP-API Örnek)

Page 45: WP REST API ve WordPress Ekosisteminin Geleceği

Picard Present Teması (WP-API Örnek)

Page 46: WP REST API ve WordPress Ekosisteminin Geleceği

Peki YaWP REST API

Nasıl Çalışıyor?

Page 47: WP REST API ve WordPress Ekosisteminin Geleceği

GET /wp-json/wp/v2/posts

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

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

Page 48: WP REST API ve WordPress Ekosisteminin Geleceği
Page 49: WP REST API ve WordPress Ekosisteminin Geleceği

Kanlı Canlı Örnek

PHPKonf

Websitesi

phpkonf.org

Page 50: WP REST API ve WordPress Ekosisteminin Geleceği
Page 51: WP REST API ve WordPress Ekosisteminin Geleceği
Page 52: WP REST API ve WordPress Ekosisteminin Geleceği

Altyapı

AngularJS

CMS

JSON Dosyaları

img klasörü

Page 53: WP REST API ve WordPress Ekosisteminin Geleceği
Page 54: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 55: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 56: WP REST API ve WordPress Ekosisteminin Geleceği
Page 57: WP REST API ve WordPress Ekosisteminin Geleceği
Page 58: WP REST API ve WordPress Ekosisteminin Geleceği

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

Page 59: WP REST API ve WordPress Ekosisteminin Geleceği
Page 60: WP REST API ve WordPress Ekosisteminin Geleceği
Page 61: WP REST API ve WordPress Ekosisteminin Geleceği
Page 62: WP REST API ve WordPress Ekosisteminin Geleceği

Konuşmacılar listesi

Page 63: WP REST API ve WordPress Ekosisteminin Geleceği

Konuşmacı detay modalbox

Page 64: WP REST API ve WordPress Ekosisteminin Geleceği

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.

Page 65: WP REST API ve WordPress Ekosisteminin Geleceği

Teşekkürler!

Bora Yalçın

@borantula

[email protected]

borayalcin.me