* @copyright Copyright (c) 2008 - 2014, Justin Tadlock * @link http://themehybrid.com/hybrid-core * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html */ /* Register meta on the 'init' hook. */ add_action( 'init', 'hybrid_register_meta' ); /** * Registers the framework's custom metadata keys and sets up the sanitize callback function. * * @since 1.3.0 * @access public * @return void */ function hybrid_register_meta() { /* Register meta if the theme supports the 'hybrid-core-template-hierarchy' feature. */ if ( current_theme_supports( 'hybrid-core-template-hierarchy' ) ) { $post_types = get_post_types( array( 'public' => true ) ); foreach ( $post_types as $post_type ) { if ( 'page' !== $post_type ) register_meta( 'post', "_wp_{$post_type}_template", 'hybrid_sanitize_meta' ); } } } /** * Callback function for sanitizing meta when add_metadata() or update_metadata() is called by WordPress. * If a developer wants to set up a custom method for sanitizing the data, they should use the * "sanitize_{$meta_type}_meta_{$meta_key}" filter hook to do so. * * @since 1.3.0 * @access public * @param mixed $meta_value The value of the data to sanitize. * @param string $meta_key The meta key name. * @param string $meta_type The type of metadata (post, comment, user, etc.) * @return mixed $meta_value */ function hybrid_sanitize_meta( $meta_value, $meta_key, $meta_type ) { return strip_tags( $meta_value ); }