SlideShare a Scribd company logo
The WordPress Way
Kan Ouivirach
Navarat Pramuksan
CMS course, Stamford, 2015
Kan Ouivirach
Research & Development Engineer
Navarat Pramuksan (Oy)
Software Engineer
Pronto Marketing
Pronto Marketing
WordPress
• Originally developed as blog software having two
functions: blogging capacity and CMS abilities
• Designed for non-programmers
• Easy for writing posts
• Powerful features for developing Web sites
WordPress As
• Solution to help grow the business
• Web site for people
• Blog/Diary
• Ecommerce site
• etc.
Why WordPress?
Credit: https://yoast.com/wordpress-stats/
Why WordPress?
Credit: https://yoast.com/wordpress-stats/
Why WordPress?
• Stable
• Easy
• Large community
• Scalable
WordPress Users
WordPress.com WordPress.org
Focus on your beautiful content, and let us handle
the rest.
Get your hands dirty, and host your website
yourself.
Premium hosting, security, and backups are
included. You can even upgrade to a custom
domain, like YourGroovyDomain.com.
You’ll need to find a host, and perform backups and
maintenance yourself. We offer VaultPress for
security and backups.
Choose from hundreds of beautiful themes. Make it
your own with Custom Design.
Install custom themes. Build your own with PHP and
CSS.
Integrate your site with Facebook, Twitter, Tumblr,
and other social networks.
Install a plugin, like Jetpack, to enable sharing
functionality on your site.
Popular features like sharing, stats, comments, and
polls are included. There’s no need to install plugins.
Install plugins to extend your site’s functionality.
Personal support and the WordPress.com forums
are always available.
Visit the WordPress.org support forums for
assistance.
You must register for an account on WordPress.com
and abide by our Terms of Service.
No registration with WordPress.org is required.
WordPress Theme
Change the overall visual design and functionality
without having to alter the underlying core software.
Choosing Theme?
• Depend on situation to choose: free, framework, or
your own theme
• Choosing the right theme is very important.
WordPress Theme
Theme contains two main parts:
1. Template
2. Plugin
http://wphierarchy.com/
WordPress Template
Hierarchy
WordPress Plugin
• Allow easy modification, customization, and
enhancement.
• Instead of changing the core programming of
WordPress, you can add functionality with
WordPress Plugins.
• Seamlessly integrated using the WordPress Plugin
Application Program Interface (API).
I want to show my team on my Web site!
The WordPress Way
What We Normally Do in
Database Design..
id team_id firstname lastname
1 1 Kan Ouivirach
2 1 Navarat Pramuksan
id name
1 R&D
Team
People
Custom Post Types
• All the post types are stored in the same place, in
the wp_posts database table, but are differentiated
by a column called post_type.
• Five default post types:
• post
• page
• attachment
• revision
• nav_menu_item
Custom Post Types in
Database
Never create your own table, use
custom post type!
Custom Fields
• Allow you to assign custom fields to a post. This arbitrary
extra information is known as meta-data.
• Post meta data are stored in the wp_postmeta database
table.
• Meta-data is handled with key/value pairs.
• Meta-data can include bits of information such as:
• Mood: Happy
• Weather: Hot
Example of Custom Fields
Custom Fields in Database
wp_posts
wp_postmeta
Option API
• The Options API is a simple and standardized way
of storing data in the database.
• The API makes it easy to create, access, update,
and delete options.
• All the data is stored in the wp_options table
under a given custom name.
Options in Database
wp_options
If really necessary, instead of creating a
new table, use wp_options table.
Transients API
• Standard way to store cached data
• Similar to the Options API but with the added
feature of an expiration time
WordPress with Transients
Credit: http://www.businessbee.com/resources/news/technology-buzz/cloud-vs-network-attached-storage-pros-cons/
Database
Loading JS/CSS
<script type=“text/javascript” src=“path/to/scripts.js” />
<link rel=“stylesheet” href=“path/to/style.css”
type=“text/css” media=“all” />
• wp_register_script
• wp_enqueue_script
• wp_register_style
• wp_enqueue_style
Interacting with External
APIs
• Use wp_remote_* instead of curl because it is
not all PHP environments that have it installed.
JSON to Exchange Data
• JSON (JavaScript Object Notation)
• json_encode
• json_decode
{
"pk": 988,
"model": "accounts.account",
"fields": {
"status": "active",
"zuora_account_id": "",
"signup_date": "2014-06-26",
"name": "James Bond",
"currency": "USD"
}
},
Example of JSON
Sending Email
wp_mail(

$to,

$subject,

$message,

$header,

$attachment

);
Query Arguments
• Use add_query_arg to construct the URL.
$params = array(
“get” => “hello”,
“for” => “Kan”,
“because” => “world”
);
$url = add_query_arg( $params, $url );
Result: https://wordpress.org/?get=hello&for=Kan&because=world
WP-Cron: Scheduling Tasks
• Cron is a Unix command for scheduling tasks.
• Unlike the normal cron, WP-Cron function runs every time the site
is accessed.
• We can disable it and set up our own cron job to access the site.
• WP-Cron functions:
• Checking theme & plugin updates
• Publish scheduled posts
• + more
Pronto Showcase
WE FOLLOW WORDPRESS STANDARD
Credit: https://www.youtube.com/watch?v=EhpyonLif6U
WE COOL
Resources
• WordPress Codex - http://codex.wordpress.org/
• WordPress Plugins - https://wordpress.org/plugins/
• WordPress.tv - http://wordpress.tv/
• Make WordPress - https://make.wordpress.org/
• WordPress on Slack - https://wordpress.slack.com/
References
• https://codex.wordpress.org
• http://www.slideshare.net/mattwiebe/doing-things-
the-wordpress-way
• http://ben.lobaugh.net/blog/46117/wordpress-
interacting-with-external-apis
• http://wphierarchy.com
WordPress Workshop
Let’s get your hands dirty!
Prerequisites
• Have WordPress installed on your local machine.
• Have a source code editor like Sublime Text or
Atom on your machine.

More Related Content

PPTX
Ithemes presentation
PPTX
WordPress 101
PPTX
Optimizing WordPress - WordPress SF Meetup April 2012
PDF
Speeding up your WordPress Site - WordCamp Toronto 2015
PPTX
Speeding Up WordPress sites
PPTX
Piecing Together the WordPress Puzzle
PDF
WordPress Template Hierarchy
PPTX
WordPress Template hierarchy
Ithemes presentation
WordPress 101
Optimizing WordPress - WordPress SF Meetup April 2012
Speeding up your WordPress Site - WordCamp Toronto 2015
Speeding Up WordPress sites
Piecing Together the WordPress Puzzle
WordPress Template Hierarchy
WordPress Template hierarchy

What's hot (20)

PDF
Child Themes and CSS in WordPress
PPTX
WordPress Themes and Plugins
PPSX
Wordpress Setup Basics for Dummies by Haneef Puttur
PDF
WordPress Theme Reviewers Team
PPSX
Wordpress Installation in Local machine for Dummies By Haneef Puttur
PPSX
Wordpress Installation in CPANEL for Dummies
PPT
WordPress Fav Plugins & Security
PDF
WordPress Intermediate Workshop
PPTX
WordCamp Boston WordPress plugins-8-2014
PPTX
Optimizing WordPress (WordCamp Philly 2011)
PDF
WordPress as a CMS
PPT
WordPress Multisite
KEY
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
PPTX
Wordpress For Begineer
PDF
Optimizing wp
PDF
SEMCON 2013 - WordPress Optimization
PDF
Optimizing the performance of WordPress
PDF
Dangerous CSS
PPTX
Using MAMP for Web Development
PPTX
WordPress Resources Nov 2014
Child Themes and CSS in WordPress
WordPress Themes and Plugins
Wordpress Setup Basics for Dummies by Haneef Puttur
WordPress Theme Reviewers Team
Wordpress Installation in Local machine for Dummies By Haneef Puttur
Wordpress Installation in CPANEL for Dummies
WordPress Fav Plugins & Security
WordPress Intermediate Workshop
WordCamp Boston WordPress plugins-8-2014
Optimizing WordPress (WordCamp Philly 2011)
WordPress as a CMS
WordPress Multisite
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
Wordpress For Begineer
Optimizing wp
SEMCON 2013 - WordPress Optimization
Optimizing the performance of WordPress
Dangerous CSS
Using MAMP for Web Development
WordPress Resources Nov 2014
Ad

Similar to The WordPress Way (20)

PPTX
Wordpress
PDF
WordPress: After The Install
PPTX
WordPress for Entrepreneurs Management of your own website
PDF
Getting to Know WordPress May 2015
PDF
Getting Started with Wordpress
PPTX
Your first word press site
PDF
Niraj Govinda Shrestha with complete Wordpress Tutorial
PDF
eMusic: WordPress in the Enterprise
DOCX
What is WordPress.docx
PDF
Getting to know WordPress
PPT
WordPress Installation Tutorial - How to Install WordPress manually
PPT
Hire WordPress Web development
PPTX
WordPress Basics
PPTX
How to create a WordPress Site
PPTX
WORDPRESS
PDF
Beginning WordPress Workshop
PDF
Wordpress Guide
PDF
Complete word press explained guide for beginners 2022
PPT
Wordpress Beyond A Blog Word Camp Toronto08
PDF
WordPress 101
Wordpress
WordPress: After The Install
WordPress for Entrepreneurs Management of your own website
Getting to Know WordPress May 2015
Getting Started with Wordpress
Your first word press site
Niraj Govinda Shrestha with complete Wordpress Tutorial
eMusic: WordPress in the Enterprise
What is WordPress.docx
Getting to know WordPress
WordPress Installation Tutorial - How to Install WordPress manually
Hire WordPress Web development
WordPress Basics
How to create a WordPress Site
WORDPRESS
Beginning WordPress Workshop
Wordpress Guide
Complete word press explained guide for beginners 2022
Wordpress Beyond A Blog Word Camp Toronto08
WordPress 101
Ad

More from Kan Ouivirach, Ph.D. (19)

PDF
Adoption of AI: The Great Opportunities for Everyone
PDF
Uncover Python's Potential in Machine Learning
PDF
WordPress Hooks: The Right Way to Extend Your WordPress
PDF
Lesson Learned from Using Docker Swarm at Pronto
PDF
หัดเขียน A.I. แบบ AlphaGo กันชิวๆ
PDF
Agile and Scrum Methodology
PDF
Machine Learning at Geeky Base 2
PDF
Machine Learning คือ? #bcbk
PDF
What We Do in This Weird Office Culture
PDF
Exploring Machine Learning in Python with Scikit-Learn
PDF
Machine Learning at Geeky Base
PDF
Thailand Hadoop Big Data Challenge #1
PDF
Achieving "Zero Downtime Deployment" with Automated Testing
PDF
Pronto R&D Presentation
PDF
Scrum at Pronto Marketing
PDF
Practical Experience in Automated Testing at Pronto Marketing
PDF
Extracting the Object from the Shadows: Maximum Likelihood Object/Shadow Disc...
PDF
Clustering Human Behaviors with Dynamic Time Warping and Hidden Markov Models...
PDF
Adapting Scrum to Managing a Research Group
Adoption of AI: The Great Opportunities for Everyone
Uncover Python's Potential in Machine Learning
WordPress Hooks: The Right Way to Extend Your WordPress
Lesson Learned from Using Docker Swarm at Pronto
หัดเขียน A.I. แบบ AlphaGo กันชิวๆ
Agile and Scrum Methodology
Machine Learning at Geeky Base 2
Machine Learning คือ? #bcbk
What We Do in This Weird Office Culture
Exploring Machine Learning in Python with Scikit-Learn
Machine Learning at Geeky Base
Thailand Hadoop Big Data Challenge #1
Achieving "Zero Downtime Deployment" with Automated Testing
Pronto R&D Presentation
Scrum at Pronto Marketing
Practical Experience in Automated Testing at Pronto Marketing
Extracting the Object from the Shadows: Maximum Likelihood Object/Shadow Disc...
Clustering Human Behaviors with Dynamic Time Warping and Hidden Markov Models...
Adapting Scrum to Managing a Research Group

Recently uploaded (20)

PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Encapsulation theory and applications.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPT
Teaching material agriculture food technology
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Reach Out and Touch Someone: Haptics and Empathic Computing
Mobile App Security Testing_ A Comprehensive Guide.pdf
Approach and Philosophy of On baking technology
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Per capita expenditure prediction using model stacking based on satellite ima...
NewMind AI Monthly Chronicles - July 2025
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Understanding_Digital_Forensics_Presentation.pptx
Encapsulation_ Review paper, used for researhc scholars
Encapsulation theory and applications.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Teaching material agriculture food technology
Review of recent advances in non-invasive hemoglobin estimation
Digital-Transformation-Roadmap-for-Companies.pptx
20250228 LYD VKU AI Blended-Learning.pptx
Network Security Unit 5.pdf for BCA BBA.
Diabetes mellitus diagnosis method based random forest with bat algorithm
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows

The WordPress Way

  • 1. The WordPress Way Kan Ouivirach Navarat Pramuksan CMS course, Stamford, 2015
  • 2. Kan Ouivirach Research & Development Engineer Navarat Pramuksan (Oy) Software Engineer Pronto Marketing Pronto Marketing
  • 3. WordPress • Originally developed as blog software having two functions: blogging capacity and CMS abilities • Designed for non-programmers • Easy for writing posts • Powerful features for developing Web sites
  • 4. WordPress As • Solution to help grow the business • Web site for people • Blog/Diary • Ecommerce site • etc.
  • 7. Why WordPress? • Stable • Easy • Large community • Scalable
  • 9. WordPress.com WordPress.org Focus on your beautiful content, and let us handle the rest. Get your hands dirty, and host your website yourself. Premium hosting, security, and backups are included. You can even upgrade to a custom domain, like YourGroovyDomain.com. You’ll need to find a host, and perform backups and maintenance yourself. We offer VaultPress for security and backups. Choose from hundreds of beautiful themes. Make it your own with Custom Design. Install custom themes. Build your own with PHP and CSS. Integrate your site with Facebook, Twitter, Tumblr, and other social networks. Install a plugin, like Jetpack, to enable sharing functionality on your site. Popular features like sharing, stats, comments, and polls are included. There’s no need to install plugins. Install plugins to extend your site’s functionality. Personal support and the WordPress.com forums are always available. Visit the WordPress.org support forums for assistance. You must register for an account on WordPress.com and abide by our Terms of Service. No registration with WordPress.org is required.
  • 10. WordPress Theme Change the overall visual design and functionality without having to alter the underlying core software.
  • 11. Choosing Theme? • Depend on situation to choose: free, framework, or your own theme • Choosing the right theme is very important.
  • 12. WordPress Theme Theme contains two main parts: 1. Template 2. Plugin
  • 14. WordPress Plugin • Allow easy modification, customization, and enhancement. • Instead of changing the core programming of WordPress, you can add functionality with WordPress Plugins. • Seamlessly integrated using the WordPress Plugin Application Program Interface (API).
  • 15. I want to show my team on my Web site!
  • 17. What We Normally Do in Database Design.. id team_id firstname lastname 1 1 Kan Ouivirach 2 1 Navarat Pramuksan id name 1 R&D Team People
  • 18. Custom Post Types • All the post types are stored in the same place, in the wp_posts database table, but are differentiated by a column called post_type. • Five default post types: • post • page • attachment • revision • nav_menu_item
  • 19. Custom Post Types in Database
  • 20. Never create your own table, use custom post type!
  • 21. Custom Fields • Allow you to assign custom fields to a post. This arbitrary extra information is known as meta-data. • Post meta data are stored in the wp_postmeta database table. • Meta-data is handled with key/value pairs. • Meta-data can include bits of information such as: • Mood: Happy • Weather: Hot
  • 23. Custom Fields in Database wp_posts wp_postmeta
  • 24. Option API • The Options API is a simple and standardized way of storing data in the database. • The API makes it easy to create, access, update, and delete options. • All the data is stored in the wp_options table under a given custom name.
  • 26. If really necessary, instead of creating a new table, use wp_options table.
  • 27. Transients API • Standard way to store cached data • Similar to the Options API but with the added feature of an expiration time WordPress with Transients Credit: http://www.businessbee.com/resources/news/technology-buzz/cloud-vs-network-attached-storage-pros-cons/ Database
  • 28. Loading JS/CSS <script type=“text/javascript” src=“path/to/scripts.js” /> <link rel=“stylesheet” href=“path/to/style.css” type=“text/css” media=“all” /> • wp_register_script • wp_enqueue_script • wp_register_style • wp_enqueue_style
  • 29. Interacting with External APIs • Use wp_remote_* instead of curl because it is not all PHP environments that have it installed.
  • 30. JSON to Exchange Data • JSON (JavaScript Object Notation) • json_encode • json_decode { "pk": 988, "model": "accounts.account", "fields": { "status": "active", "zuora_account_id": "", "signup_date": "2014-06-26", "name": "James Bond", "currency": "USD" } }, Example of JSON
  • 32. Query Arguments • Use add_query_arg to construct the URL. $params = array( “get” => “hello”, “for” => “Kan”, “because” => “world” ); $url = add_query_arg( $params, $url ); Result: https://wordpress.org/?get=hello&for=Kan&because=world
  • 33. WP-Cron: Scheduling Tasks • Cron is a Unix command for scheduling tasks. • Unlike the normal cron, WP-Cron function runs every time the site is accessed. • We can disable it and set up our own cron job to access the site. • WP-Cron functions: • Checking theme & plugin updates • Publish scheduled posts • + more
  • 35. WE FOLLOW WORDPRESS STANDARD Credit: https://www.youtube.com/watch?v=EhpyonLif6U WE COOL
  • 36. Resources • WordPress Codex - http://codex.wordpress.org/ • WordPress Plugins - https://wordpress.org/plugins/ • WordPress.tv - http://wordpress.tv/ • Make WordPress - https://make.wordpress.org/ • WordPress on Slack - https://wordpress.slack.com/
  • 37. References • https://codex.wordpress.org • http://www.slideshare.net/mattwiebe/doing-things- the-wordpress-way • http://ben.lobaugh.net/blog/46117/wordpress- interacting-with-external-apis • http://wphierarchy.com
  • 38. WordPress Workshop Let’s get your hands dirty!
  • 39. Prerequisites • Have WordPress installed on your local machine. • Have a source code editor like Sublime Text or Atom on your machine.