SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
Strawberry Custom
Fields Forever
!
Matt Banks
!
@mattbanks
photo credit: Sheri Bigelow, @designsimply
talk title credit: Damon Cook, @dcook
What are Custom Fields and
Meta boxes?
• Custom Fields allow you to attach additional
information (metadata) to a post, page, custom
post type, etc
• http://codex.wordpress.org/Custom_Fields
• Meta boxes are for separating and grouping
your Custom Fields into logical panels in the
post/page editor screen
Custom Fields
Meta boxes
Adding Custom Fields and Meta
boxes using Core functions
Add the Meta Box
add_meta_box(

$id,

$title,

$callback,

$post_type,

$context,

$priority,

$callback_args

);
Adding Custom Fields and Meta
boxes using Core functions
Create a Nonce and render the Meta Box via
callback function
wp_nonce_field(

'myplugin_meta_box',

'myplugin_meta_box_nonce'

);
Adding Custom Fields and Meta
boxes using Core functions
Verify the nonce, sanitize the data and update the Post Meta
sanitize_text_field(

$_POST['myplugin_new_field']

);
update_post_meta(

$post_id,

'_my_meta_value_key',

$my_data

);
Displaying Custom Field
data in your Theme
get_post_meta(

$post_id,

$key,

$single

);
$key_1_value = get_post_meta(
get_the_ID(), 'key_1', true );
http://codex.wordpress.org/Function_Reference/
get_post_meta
Playing Nice with the

New REST API
• Protected meta (prefixed with _) needs authorization to be
accessed by the API. Gets hooked to ‘init’ or ‘plugins_loaded’
!
register_meta(
$meta_type,
$meta_key,
$sanitize_callback,

$auth_callback = null
);
!
register_meta( 'post', '_my_meta_key',
'', '__return_true' );
Adding Custom Fields and Meta
boxes using Core functions
Demo
Adding Custom Fields and Meta
boxes using Core functions
Full code examples in Codex:
http://codex.wordpress.org/Function_Reference/
add_meta_box#Procedural

http://codex.wordpress.org/Function_Reference/
add_meta_box#Class
Is there something easier?
Yes!
photo credit: Sheri Bigelow
With a Little Help From My Friends
!
Plugins to create Custom Fields and Meta boxes
• Advanced Custom Fields (ACF)
• Custom Field Suite (CFS)
• Pods
• Custom Metaboxes and Fields
Advanced Custom Fields
(ACF)
http://www.advancedcustomfields.com/
Advanced Custom Fields
(ACF)
• Output data into your theme using:



the_field( 'your_field_name' );
Advanced Custom Fields
(ACF)
• Multiple field types
• Easy to use
• Premium add-ons (changing in version 5)
Custom Field Suite (CFS)
https://uproot.us
Custom Field Suite (CFS)
• Output data into your theme using:
!
$cfs->get(
$field_name,
$post_id,
$options
);
Custom Field Suite (CFS)
• Includes loop field types in free version
• Easy to use
• Great documentation
Custom Field Suite (CFS)
Demo
Pods
http://pods.io
Pods
• Output data multiple ways into your theme:
!
pods_field_display( $pod, $id,
$name, $single);
!
pods_image( $image, $size,
$default, $attributes, $force );
• Custom Pods loops, templates, pages
Pods
• Extremely powerful!
• Creates Custom Post Types and Taxonomies as well
as Custom Fields
• Able to extend Users, Comments, etc
• More complex than other plugins/solutions
• No loop fields (coming in v3.0)
• No meta box management (coming in v3.0)
Custom Metaboxes and
Fields
https://github.com/WebDevStudios/Custom-
Metaboxes-and-Fields-for-WordPress
Custom Metaboxes and
Fields
• Framework to create meta boxes and fields in
code
• Can be embedded in custom plugins
• Uses native WordPress functions for display
get_post_meta( $post_id, $key,
$single );
Custom Metaboxes and
Fields
• Extensive list of available post types
• Active development
• Extendible
Custom Metaboxes and
Fields
Demo
So, what’s the best
choice?
Well, it Depends…
• Plugins like ACF, CFS and Pods are the easiest
solution for adding data for most sites
• Custom Metaboxes and Fields and Core
functions are better for custom plugins, building
web apps with WordPress
Can we help Core?
Metadata UI API
Being built as a Feature Plugin
Metadata UI API
• A work in progress
• API to add fields and forms (meta boxes) to posts, pages,
custom post types. In the future, plans to add forms and
fields to options, users, comments, taxonomy terms,
media, etc.
• Any plugin using forms will be able to interface with the
API to display them, both on the back-end and public
forms
• Make Core easier for creating custom fields and meta
boxes for developers
Metadata UI API Example
Register new Form (meta box). User, Option
Group, Comment Forms planned for later.
!
register_post_form(
$form_name,
$post_type,
$form_args
);
Metadata UI API Example
Add Fields to Post Type. Fields can be inside a
Form (meta box) or in the editor at any point.
!
register_post_field(
$field_name,
$post_type,
$field_args
);
Metadata UI API
• UI/UX in progress for displaying custom fields
and meta boxes on post type edit screens
• Plugin authors will be able to extend field types,
HTML templates, form types, etc.
Come Together
• You can help!
• Follow along with the development on Github



https://github.com/wordpress-metadata/
metadata-ui-api
• Weekly meetings on IRC in

#wordpress-core-plugins Friday’s at 2pm ET
Hello, Goodbye
!
Thank You!
If you have any questions, let me know!
!
matt@collectivthkg.com
!
Twitter: @mattbanks
!
Skype: mattbanks-14
!
!
https://github.com/mattbanks/strawberry-custom-fields-forever

Weitere ähnliche Inhalte

Andere mochten auch

Andere mochten auch (15)

Giant Pandas
Giant PandasGiant Pandas
Giant Pandas
 
Novedades junio 2014
Novedades junio 2014Novedades junio 2014
Novedades junio 2014
 
Shakib Al Hasan Photos
Shakib Al Hasan PhotosShakib Al Hasan Photos
Shakib Al Hasan Photos
 
Novedades mayo 2015
Novedades mayo 2015Novedades mayo 2015
Novedades mayo 2015
 
Novedades noviembre2015
Novedades noviembre2015Novedades noviembre2015
Novedades noviembre2015
 
Radware state of_the_union_report_winter_2013-14
Radware state of_the_union_report_winter_2013-14Radware state of_the_union_report_winter_2013-14
Radware state of_the_union_report_winter_2013-14
 
Novedades septiembre 2015
Novedades septiembre 2015Novedades septiembre 2015
Novedades septiembre 2015
 
Novedades diciembre 2015
Novedades diciembre 2015Novedades diciembre 2015
Novedades diciembre 2015
 
Mailing Services Price Changes
Mailing Services Price ChangesMailing Services Price Changes
Mailing Services Price Changes
 
ISOC Panel at IETF 90 - Internet Security and Privacy: Ten years later
ISOC Panel at IETF 90 - Internet Security and Privacy: Ten years laterISOC Panel at IETF 90 - Internet Security and Privacy: Ten years later
ISOC Panel at IETF 90 - Internet Security and Privacy: Ten years later
 
Il Sisma del 2012 nella Bassa Modenese: il ruolo del MMG
Il Sisma del 2012 nella Bassa Modenese: il ruolo del MMGIl Sisma del 2012 nella Bassa Modenese: il ruolo del MMG
Il Sisma del 2012 nella Bassa Modenese: il ruolo del MMG
 
Novedades enero 2016
Novedades enero 2016Novedades enero 2016
Novedades enero 2016
 
Novedades octubre 2015
Novedades octubre 2015Novedades octubre 2015
Novedades octubre 2015
 
Formazione ed implementazione dell'EBM con i social network. Risultati di un ...
Formazione ed implementazione dell'EBM con i social network. Risultati di un ...Formazione ed implementazione dell'EBM con i social network. Risultati di un ...
Formazione ed implementazione dell'EBM con i social network. Risultati di un ...
 
Novedades marzo 2016
Novedades marzo 2016Novedades marzo 2016
Novedades marzo 2016
 

Kürzlich hochgeladen

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

Kürzlich hochgeladen (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

Strawberry Custom Fields Forever - WordPress Metadata and Custom Fields

  • 2. photo credit: Sheri Bigelow, @designsimply talk title credit: Damon Cook, @dcook
  • 3. What are Custom Fields and Meta boxes? • Custom Fields allow you to attach additional information (metadata) to a post, page, custom post type, etc • http://codex.wordpress.org/Custom_Fields • Meta boxes are for separating and grouping your Custom Fields into logical panels in the post/page editor screen
  • 6. Adding Custom Fields and Meta boxes using Core functions Add the Meta Box add_meta_box(
 $id,
 $title,
 $callback,
 $post_type,
 $context,
 $priority,
 $callback_args
 );
  • 7. Adding Custom Fields and Meta boxes using Core functions Create a Nonce and render the Meta Box via callback function wp_nonce_field(
 'myplugin_meta_box',
 'myplugin_meta_box_nonce'
 );
  • 8. Adding Custom Fields and Meta boxes using Core functions Verify the nonce, sanitize the data and update the Post Meta sanitize_text_field(
 $_POST['myplugin_new_field']
 ); update_post_meta(
 $post_id,
 '_my_meta_value_key',
 $my_data
 );
  • 9. Displaying Custom Field data in your Theme get_post_meta(
 $post_id,
 $key,
 $single
 ); $key_1_value = get_post_meta( get_the_ID(), 'key_1', true ); http://codex.wordpress.org/Function_Reference/ get_post_meta
  • 10. Playing Nice with the
 New REST API • Protected meta (prefixed with _) needs authorization to be accessed by the API. Gets hooked to ‘init’ or ‘plugins_loaded’ ! register_meta( $meta_type, $meta_key, $sanitize_callback,
 $auth_callback = null ); ! register_meta( 'post', '_my_meta_key', '', '__return_true' );
  • 11. Adding Custom Fields and Meta boxes using Core functions Demo
  • 12. Adding Custom Fields and Meta boxes using Core functions Full code examples in Codex: http://codex.wordpress.org/Function_Reference/ add_meta_box#Procedural
 http://codex.wordpress.org/Function_Reference/ add_meta_box#Class
  • 13. Is there something easier? Yes! photo credit: Sheri Bigelow
  • 14. With a Little Help From My Friends ! Plugins to create Custom Fields and Meta boxes • Advanced Custom Fields (ACF) • Custom Field Suite (CFS) • Pods • Custom Metaboxes and Fields
  • 16. Advanced Custom Fields (ACF) • Output data into your theme using:
 
 the_field( 'your_field_name' );
  • 17. Advanced Custom Fields (ACF) • Multiple field types • Easy to use • Premium add-ons (changing in version 5)
  • 18. Custom Field Suite (CFS) https://uproot.us
  • 19. Custom Field Suite (CFS) • Output data into your theme using: ! $cfs->get( $field_name, $post_id, $options );
  • 20. Custom Field Suite (CFS) • Includes loop field types in free version • Easy to use • Great documentation
  • 21. Custom Field Suite (CFS) Demo
  • 23. Pods • Output data multiple ways into your theme: ! pods_field_display( $pod, $id, $name, $single); ! pods_image( $image, $size, $default, $attributes, $force ); • Custom Pods loops, templates, pages
  • 24. Pods • Extremely powerful! • Creates Custom Post Types and Taxonomies as well as Custom Fields • Able to extend Users, Comments, etc • More complex than other plugins/solutions • No loop fields (coming in v3.0) • No meta box management (coming in v3.0)
  • 26. Custom Metaboxes and Fields • Framework to create meta boxes and fields in code • Can be embedded in custom plugins • Uses native WordPress functions for display get_post_meta( $post_id, $key, $single );
  • 27. Custom Metaboxes and Fields • Extensive list of available post types • Active development • Extendible
  • 29. So, what’s the best choice?
  • 30. Well, it Depends… • Plugins like ACF, CFS and Pods are the easiest solution for adding data for most sites • Custom Metaboxes and Fields and Core functions are better for custom plugins, building web apps with WordPress
  • 31. Can we help Core?
  • 32. Metadata UI API Being built as a Feature Plugin
  • 33. Metadata UI API • A work in progress • API to add fields and forms (meta boxes) to posts, pages, custom post types. In the future, plans to add forms and fields to options, users, comments, taxonomy terms, media, etc. • Any plugin using forms will be able to interface with the API to display them, both on the back-end and public forms • Make Core easier for creating custom fields and meta boxes for developers
  • 34. Metadata UI API Example Register new Form (meta box). User, Option Group, Comment Forms planned for later. ! register_post_form( $form_name, $post_type, $form_args );
  • 35. Metadata UI API Example Add Fields to Post Type. Fields can be inside a Form (meta box) or in the editor at any point. ! register_post_field( $field_name, $post_type, $field_args );
  • 36. Metadata UI API • UI/UX in progress for displaying custom fields and meta boxes on post type edit screens • Plugin authors will be able to extend field types, HTML templates, form types, etc.
  • 37. Come Together • You can help! • Follow along with the development on Github
 
 https://github.com/wordpress-metadata/ metadata-ui-api • Weekly meetings on IRC in
 #wordpress-core-plugins Friday’s at 2pm ET
  • 38. Hello, Goodbye ! Thank You! If you have any questions, let me know! ! matt@collectivthkg.com ! Twitter: @mattbanks ! Skype: mattbanks-14 ! ! https://github.com/mattbanks/strawberry-custom-fields-forever