SlideShare uma empresa Scribd logo
1 de 26
Beyond the Theme Using WordPress as an API
About Me Find me on online at: @davidscottufts facebook.com/davidscottufts linkedin.com/in/davidtufts davidscotttufts.com I’m not a WordPress guru, ninja, black-belt, author, blogger, consultant, or hacker I do use WordPress everywhere
One Year of WordPress at Work Migrated 14 unique brand sites and over 40 unique domains in 7 languages to WordPress multi-site Our most popular brand’s average page views increased from 85,000 to 150,000 (over 130,000 daily emails, over 45,000 iPhone/iPad apps, and over 65,000 Facebook fans) Our online donations increased by 38% Reduced server footprint by 40% and our overhead costs decreased by 30% Development time, costs, and learning curve for new developers were also all significantly reduced
Goals of a WordPress Based Web Strategy Have one install for multiple sites Allow for a single sign-on across a network of sites Use an API to allow for content to be easily accessible by other websites and mobile devices Integrate web, social, mobile, social bookmarking, and monetization strategies Aggregate and curate content from across the network of sites in one central stream Think globally—location and language matter
Why WordPress It met the conditions of our web strategy It has multi-site capabilities It is open source (FREE) It is easy to migrate to It is easy to use It is easy to install and upgrade It is popular (15% of the web runs on WordPress) It is versatile
Versatile you say? Extend it with themes and plugins Modify it with hooks Create custom post types Add custom fields Use custom taxonomies Specify post formats
An Analogy—Part 1 The WordPress admin area is like a kitchen and you are the chef The WordPress plugins are like the kitchen appliances that make for a better cooking experience The WordPress theme is like the dining room where the content is laid out for consumption There is a one-to-one relationship between your content and its container, the theme
Content vs. Container A WordPress theme exists only within the context of its container—the web browser Your content is consumed from within your website’s theme Your RSS feed is the only way in which your content can be consumed from outside your website’s theme
How Do People Find Your Site Search engines index your content Searches point people to your site Users subscribe to your RSS feed Friends might link to your site Anyone can share your content on social networks
Your Websites Current Sphere of Influence
Introduction to APIs 	“An API (Application Programming Interface) is a way for two applications to talk to each other in a common language that both systems understand. An API essentially provides a structured way for applications to get content in a predictable, flexible, and powerful way.”
Does WordPress have an API? WordPress has XML-RPC for data management at the admin level WordPress has multiple built-in APIs that allow developers to enhance WordPress through plugins and themes WordPress has a robust query string that enables content filtering through the URL WordPress has no end user API that allows for third-party development around your content
What Can an API do for You? Allows you to have a single instance of your content and users distributed across multiple channels Allows developers to build third-party applications around your web-based content or service Allows you to enhance the user experience within the context of your site by building an AJAX rich application
Separating Content from Container WordPress separates the admin and plugins from the theme It allows for the content to          exist independently of the      website’s theme Modifying a site’s theme        does not impact your content
An Analogy—Part 2 Same kitchen, chef, appliances, and dining room as the earlier analogy An API turns your kitchen into a catering business with delivery trucks There is a one-to-many relationship between your content and multiple containers: mobile apps, third-party websites, and social networks
Adding an API to WordPress Expands Your Sphere of Influence
3 Simple Steps to Implementing an API into Your Next WordPress Theme Pass additional query string parameters to the theme Modify the theme to process API calls Determine what format to return the  content in
Step 1: Pass Additional Query String Parameters to the Theme Define a query string parameter to specify whether or not the request being made is an API call.  Always default the parameter to false in the theme as to not disrupt non API requests (?api=true) Define a query string parameter to specify in what format to return the content (&format=json)
Step 2: Modify the Theme to Process API Calls <?php     $api = $_GET[‘api’];     $f = $_GET[‘format’]; Section off the header and footer with conditional statements within files like index.php, single.php, archive.php, category.php, tag.php, and search.php Evaluate based on the query string parameters if an API call needs the header and footer If ( $api ) {    // Conditional Header } // The Loop get_template_part(‘loop’,  $f); If ( $api ) {     // Conditional Footer } ?>
Step 3: Determine What Format to Return the Content In Create a series of loops in different formats to handle your custom API requests: loop-html5.php, loop-json.php, loop-xml.php Allow the get_template_part() function to determine the appropriate format to use:get_template_part(‘loop’, $_GET[‘format’]);
Example You have built an events management WordPress theme using custom post types for events, sessions, speakers, attendees, and venues. Now your conference attendees want to use their smart phones or tablets during an event to manage their schedules, rate sessions, etc.
Allowing for Third-Party Development Every new “app” is just another instance of a group of your users interacting with your content or service Twitter would not be were it is today without an API which allows users and developers to interact with Twitter’s services on their terms
Post Rank vs. Page Rank The tide is changing from searchability to shareability SEO is still be important, but what is more important is how accessible and shareable your content is from multiple devices, apps, and social networks
Other API Implementation Ideas Use the API calls for AJAX reloading from within the context of the WordPress theme Use in conjunction with other query string parameters to determine the post type, posts per page, sort order, etc. Be sure to output the correct headers to the browser in the cases where the requested formats are like JSON, XML, or downloadable files
Write It Yourself or Use KickPress The KickPressplugingives WordPress a public API for content distribution across multiple platforms and devices Makes creating and using custom posts types and taxonomies easy Focuses heavily on the publishing of a wide variety of content types (videos, books, events, reviews, authors, contacts, etc.) Enables strong social media integration through a urlshortner, social sharing links, and a social sharing toolbar Enables content aggregation from across the web into a local news feed Enables content bookmarking by logged-in users Extends WordPress through hooks, themes, and plugins, without the need to modify the core source code and/or database tables
WP + API = {        } Beta release coming soon: http://kickpress.org/getting-started/

Mais conteúdo relacionado

Mais procurados

Case Study: Wordpress as a CMS
Case Study: Wordpress as a CMSCase Study: Wordpress as a CMS
Case Study: Wordpress as a CMSKevin Codamon
 
Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Microsoft 365 Developer
 
Wordpress seo and digital marketing
Wordpress seo and digital marketingWordpress seo and digital marketing
Wordpress seo and digital marketingTapan Kapri
 

Mais procurados (7)

Working with newsfeeds
Working with newsfeedsWorking with newsfeeds
Working with newsfeeds
 
Case Study: Wordpress as a CMS
Case Study: Wordpress as a CMSCase Study: Wordpress as a CMS
Case Study: Wordpress as a CMS
 
Facebook & Twitter API
Facebook & Twitter APIFacebook & Twitter API
Facebook & Twitter API
 
Firebase Services
Firebase ServicesFirebase Services
Firebase Services
 
Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020Implement Authorization in your Apps with Microsoft identity platform-June 2020
Implement Authorization in your Apps with Microsoft identity platform-June 2020
 
Wordpress seo and digital marketing
Wordpress seo and digital marketingWordpress seo and digital marketing
Wordpress seo and digital marketing
 
Drupal SEO
Drupal SEODrupal SEO
Drupal SEO
 

Destaque

Fracciones lucero
Fracciones luceroFracciones lucero
Fracciones luceroMisslucero
 
Questions within senteces
Questions within sentecesQuestions within senteces
Questions within sentecesandylopeztriana
 
Bryan e bernardo
Bryan e bernardoBryan e bernardo
Bryan e bernardoninha25
 
Ioulia Klemens Introduction
Ioulia Klemens IntroductionIoulia Klemens Introduction
Ioulia Klemens Introductioniklemens
 
Ahlan Ramadan presentation
Ahlan Ramadan presentationAhlan Ramadan presentation
Ahlan Ramadan presentationbintMahmood
 
Bryan e bernardo
Bryan e bernardoBryan e bernardo
Bryan e bernardoninha25
 
Cuerposgeometricos1
Cuerposgeometricos1Cuerposgeometricos1
Cuerposgeometricos1Misslucero
 
Storycon
StoryconStorycon
StoryconStoree1
 
Experis Overview
Experis OverviewExperis Overview
Experis Overviewcazkading
 
Are you suffering with a chronic condition
Are you suffering with a chronic conditionAre you suffering with a chronic condition
Are you suffering with a chronic conditionJohn Dewitt (LION)
 
"Push Button" Curation
"Push Button" Curation"Push Button" Curation
"Push Button" CurationDavid Tufts
 
Hip hop’s expendable warriors
Hip hop’s expendable warriorsHip hop’s expendable warriors
Hip hop’s expendable warriorshayleycav1
 
How to Prevent Ebola and Some History
How to Prevent Ebola and Some HistoryHow to Prevent Ebola and Some History
How to Prevent Ebola and Some HistoryJohn Dewitt (LION)
 
andrea lopez triana javeriana cali english homework 2011-2
andrea lopez triana javeriana cali english homework 2011-2andrea lopez triana javeriana cali english homework 2011-2
andrea lopez triana javeriana cali english homework 2011-2andylopeztriana
 

Destaque (20)

Reflections 3wb
Reflections 3wbReflections 3wb
Reflections 3wb
 
diplomovka
diplomovkadiplomovka
diplomovka
 
Fracciones lucero
Fracciones luceroFracciones lucero
Fracciones lucero
 
Phrasal verbs 2
Phrasal verbs 2Phrasal verbs 2
Phrasal verbs 2
 
Phrasal verbs 2
Phrasal verbs 2Phrasal verbs 2
Phrasal verbs 2
 
Questions within senteces
Questions within sentecesQuestions within senteces
Questions within senteces
 
Bryan e bernardo
Bryan e bernardoBryan e bernardo
Bryan e bernardo
 
False cognates al
False cognates alFalse cognates al
False cognates al
 
Ioulia Klemens Introduction
Ioulia Klemens IntroductionIoulia Klemens Introduction
Ioulia Klemens Introduction
 
False cognates al
False cognates alFalse cognates al
False cognates al
 
Ahlan Ramadan presentation
Ahlan Ramadan presentationAhlan Ramadan presentation
Ahlan Ramadan presentation
 
Bryan e bernardo
Bryan e bernardoBryan e bernardo
Bryan e bernardo
 
Cuerposgeometricos1
Cuerposgeometricos1Cuerposgeometricos1
Cuerposgeometricos1
 
Storycon
StoryconStorycon
Storycon
 
Experis Overview
Experis OverviewExperis Overview
Experis Overview
 
Are you suffering with a chronic condition
Are you suffering with a chronic conditionAre you suffering with a chronic condition
Are you suffering with a chronic condition
 
"Push Button" Curation
"Push Button" Curation"Push Button" Curation
"Push Button" Curation
 
Hip hop’s expendable warriors
Hip hop’s expendable warriorsHip hop’s expendable warriors
Hip hop’s expendable warriors
 
How to Prevent Ebola and Some History
How to Prevent Ebola and Some HistoryHow to Prevent Ebola and Some History
How to Prevent Ebola and Some History
 
andrea lopez triana javeriana cali english homework 2011-2
andrea lopez triana javeriana cali english homework 2011-2andrea lopez triana javeriana cali english homework 2011-2
andrea lopez triana javeriana cali english homework 2011-2
 

Semelhante a Beyond the Theme - Using WordPress as an API

O'Reilly SACon San Jose, CA - 2019 - API design tutorial
O'Reilly SACon San Jose, CA - 2019 - API design tutorialO'Reilly SACon San Jose, CA - 2019 - API design tutorial
O'Reilly SACon San Jose, CA - 2019 - API design tutorialTom Hofte
 
Using WordPress as a web application platform
Using WordPress as a web application platformUsing WordPress as a web application platform
Using WordPress as a web application platformJoe Querin
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassEuropean Collaboration Summit
 
Word press
Word pressWord press
Word pressgayath3
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!Evan Mullins
 
REST based API
REST based APIREST based API
REST based APIijtsrd
 
Doing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to ProductivityDoing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to Productivityguest3c5c731bc
 
Doing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to ProductivityDoing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to Productivitykevinreiss
 
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...Jonathan Ralton
 
Empowering NGI Media with Alfresco
Empowering NGI Media with AlfrescoEmpowering NGI Media with Alfresco
Empowering NGI Media with AlfrescoJeff Potts
 
PoolParty Thesaurus Management - ISKO UK, London 2010
PoolParty Thesaurus Management - ISKO UK, London 2010PoolParty Thesaurus Management - ISKO UK, London 2010
PoolParty Thesaurus Management - ISKO UK, London 2010Andreas Blumauer
 

Semelhante a Beyond the Theme - Using WordPress as an API (20)

O'Reilly SACon San Jose, CA - 2019 - API design tutorial
O'Reilly SACon San Jose, CA - 2019 - API design tutorialO'Reilly SACon San Jose, CA - 2019 - API design tutorial
O'Reilly SACon San Jose, CA - 2019 - API design tutorial
 
Using WordPress as a web application platform
Using WordPress as a web application platformUsing WordPress as a web application platform
Using WordPress as a web application platform
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
 
Word press
Word pressWord press
Word press
 
Word press
Word pressWord press
Word press
 
Word press
Word pressWord press
Word press
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
 
Wordpress
WordpressWordpress
Wordpress
 
WordPress REST API
WordPress REST APIWordPress REST API
WordPress REST API
 
Web 2.0
Web 2.0 Web 2.0
Web 2.0
 
REST based API
REST based APIREST based API
REST based API
 
Doing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to ProductivityDoing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to Productivity
 
Doing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to ProductivityDoing More with Less: Mash Your Way to Productivity
Doing More with Less: Mash Your Way to Productivity
 
Eden-Wordpress-Session
Eden-Wordpress-SessionEden-Wordpress-Session
Eden-Wordpress-Session
 
Wordpress
WordpressWordpress
Wordpress
 
Wordpress
WordpressWordpress
Wordpress
 
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...
SPSNYC14 - Must Love Term Sets: The New and Improved Managed Metadata Service...
 
Empowering NGI Media with Alfresco
Empowering NGI Media with AlfrescoEmpowering NGI Media with Alfresco
Empowering NGI Media with Alfresco
 
IBAT-Wordpress-Session
IBAT-Wordpress-SessionIBAT-Wordpress-Session
IBAT-Wordpress-Session
 
PoolParty Thesaurus Management - ISKO UK, London 2010
PoolParty Thesaurus Management - ISKO UK, London 2010PoolParty Thesaurus Management - ISKO UK, London 2010
PoolParty Thesaurus Management - ISKO UK, London 2010
 

Último

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Beyond the Theme - Using WordPress as an API

  • 1. Beyond the Theme Using WordPress as an API
  • 2. About Me Find me on online at: @davidscottufts facebook.com/davidscottufts linkedin.com/in/davidtufts davidscotttufts.com I’m not a WordPress guru, ninja, black-belt, author, blogger, consultant, or hacker I do use WordPress everywhere
  • 3. One Year of WordPress at Work Migrated 14 unique brand sites and over 40 unique domains in 7 languages to WordPress multi-site Our most popular brand’s average page views increased from 85,000 to 150,000 (over 130,000 daily emails, over 45,000 iPhone/iPad apps, and over 65,000 Facebook fans) Our online donations increased by 38% Reduced server footprint by 40% and our overhead costs decreased by 30% Development time, costs, and learning curve for new developers were also all significantly reduced
  • 4. Goals of a WordPress Based Web Strategy Have one install for multiple sites Allow for a single sign-on across a network of sites Use an API to allow for content to be easily accessible by other websites and mobile devices Integrate web, social, mobile, social bookmarking, and monetization strategies Aggregate and curate content from across the network of sites in one central stream Think globally—location and language matter
  • 5. Why WordPress It met the conditions of our web strategy It has multi-site capabilities It is open source (FREE) It is easy to migrate to It is easy to use It is easy to install and upgrade It is popular (15% of the web runs on WordPress) It is versatile
  • 6. Versatile you say? Extend it with themes and plugins Modify it with hooks Create custom post types Add custom fields Use custom taxonomies Specify post formats
  • 7. An Analogy—Part 1 The WordPress admin area is like a kitchen and you are the chef The WordPress plugins are like the kitchen appliances that make for a better cooking experience The WordPress theme is like the dining room where the content is laid out for consumption There is a one-to-one relationship between your content and its container, the theme
  • 8. Content vs. Container A WordPress theme exists only within the context of its container—the web browser Your content is consumed from within your website’s theme Your RSS feed is the only way in which your content can be consumed from outside your website’s theme
  • 9. How Do People Find Your Site Search engines index your content Searches point people to your site Users subscribe to your RSS feed Friends might link to your site Anyone can share your content on social networks
  • 10. Your Websites Current Sphere of Influence
  • 11. Introduction to APIs “An API (Application Programming Interface) is a way for two applications to talk to each other in a common language that both systems understand. An API essentially provides a structured way for applications to get content in a predictable, flexible, and powerful way.”
  • 12. Does WordPress have an API? WordPress has XML-RPC for data management at the admin level WordPress has multiple built-in APIs that allow developers to enhance WordPress through plugins and themes WordPress has a robust query string that enables content filtering through the URL WordPress has no end user API that allows for third-party development around your content
  • 13. What Can an API do for You? Allows you to have a single instance of your content and users distributed across multiple channels Allows developers to build third-party applications around your web-based content or service Allows you to enhance the user experience within the context of your site by building an AJAX rich application
  • 14. Separating Content from Container WordPress separates the admin and plugins from the theme It allows for the content to exist independently of the website’s theme Modifying a site’s theme does not impact your content
  • 15. An Analogy—Part 2 Same kitchen, chef, appliances, and dining room as the earlier analogy An API turns your kitchen into a catering business with delivery trucks There is a one-to-many relationship between your content and multiple containers: mobile apps, third-party websites, and social networks
  • 16. Adding an API to WordPress Expands Your Sphere of Influence
  • 17. 3 Simple Steps to Implementing an API into Your Next WordPress Theme Pass additional query string parameters to the theme Modify the theme to process API calls Determine what format to return the content in
  • 18. Step 1: Pass Additional Query String Parameters to the Theme Define a query string parameter to specify whether or not the request being made is an API call. Always default the parameter to false in the theme as to not disrupt non API requests (?api=true) Define a query string parameter to specify in what format to return the content (&format=json)
  • 19. Step 2: Modify the Theme to Process API Calls <?php $api = $_GET[‘api’]; $f = $_GET[‘format’]; Section off the header and footer with conditional statements within files like index.php, single.php, archive.php, category.php, tag.php, and search.php Evaluate based on the query string parameters if an API call needs the header and footer If ( $api ) { // Conditional Header } // The Loop get_template_part(‘loop’, $f); If ( $api ) { // Conditional Footer } ?>
  • 20. Step 3: Determine What Format to Return the Content In Create a series of loops in different formats to handle your custom API requests: loop-html5.php, loop-json.php, loop-xml.php Allow the get_template_part() function to determine the appropriate format to use:get_template_part(‘loop’, $_GET[‘format’]);
  • 21. Example You have built an events management WordPress theme using custom post types for events, sessions, speakers, attendees, and venues. Now your conference attendees want to use their smart phones or tablets during an event to manage their schedules, rate sessions, etc.
  • 22. Allowing for Third-Party Development Every new “app” is just another instance of a group of your users interacting with your content or service Twitter would not be were it is today without an API which allows users and developers to interact with Twitter’s services on their terms
  • 23. Post Rank vs. Page Rank The tide is changing from searchability to shareability SEO is still be important, but what is more important is how accessible and shareable your content is from multiple devices, apps, and social networks
  • 24. Other API Implementation Ideas Use the API calls for AJAX reloading from within the context of the WordPress theme Use in conjunction with other query string parameters to determine the post type, posts per page, sort order, etc. Be sure to output the correct headers to the browser in the cases where the requested formats are like JSON, XML, or downloadable files
  • 25. Write It Yourself or Use KickPress The KickPressplugingives WordPress a public API for content distribution across multiple platforms and devices Makes creating and using custom posts types and taxonomies easy Focuses heavily on the publishing of a wide variety of content types (videos, books, events, reviews, authors, contacts, etc.) Enables strong social media integration through a urlshortner, social sharing links, and a social sharing toolbar Enables content aggregation from across the web into a local news feed Enables content bookmarking by logged-in users Extends WordPress through hooks, themes, and plugins, without the need to modify the core source code and/or database tables
  • 26. WP + API = { } Beta release coming soon: http://kickpress.org/getting-started/