Changeset 1460312
- Timestamp:
- 07/25/2016 04:19:14 PM (10 years ago)
- Location:
- wp-api-yoast-meta/trunk
- Files:
-
- 2 edited
-
plugin.php (modified) (1 diff)
-
readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
wp-api-yoast-meta/trunk/plugin.php
r1458070 r1460312 5 5 * Author: Charlie Francis 6 6 * Author URI: https://github.com/ChazUK 7 * Version: 0.1.17 * Version: 1.1.0 8 8 * Plugin URI: https://github.com/ChazUK/wp-api-yoast-seo 9 9 */ 10 10 11 function wp_api_encode_yoast($post, $field_name, $request) { 12 $yoastMeta = array( 13 'yoast_wpseo_focuskw' => get_post_meta($post['id'], '_yoast_wpseo_focuskw', true), 14 'yoast_wpseo_title' => get_post_meta($post['id'], '_yoast_wpseo_title', true), 15 'yoast_wpseo_metadesc' => get_post_meta($post['id'], '_yoast_wpseo_metadesc', true), 16 'yoast_wpseo_linkdex' => get_post_meta($post['id'], '_yoast_wpseo_linkdex', true), 17 'yoast_wpseo_metakeywords' => get_post_meta($post['id'], '_yoast_wpseo_metakeywords', true), 18 'yoast_wpseo_meta-robots-noindex' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-noindex', true), 19 'yoast_wpseo_meta-robots-nofollow' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-nofollow', true), 20 'yoast_wpseo_meta-robots-adv' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-adv', true), 21 'yoast_wpseo_canonical' => get_post_meta($post['id'], '_yoast_wpseo_canonical', true), 22 'yoast_wpseo_redirect' => get_post_meta($post['id'], '_yoast_wpseo_redirect', true), 23 'yoast_wpseo_opengraph-title' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-title', true), 24 'yoast_wpseo_opengraph-description' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-description', true), 25 'yoast_wpseo_opengraph-image' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-image', true), 26 'yoast_wpseo_twitter-title' => get_post_meta($post['id'], '_yoast_wpseo_twitter-title', true), 27 'yoast_wpseo_twitter-description' => get_post_meta($post['id'], '_yoast_wpseo_twitter-description', true), 28 'yoast_wpseo_twitter-image' => get_post_meta($post['id'], '_yoast_wpseo_twitter-image', true) 29 ); 11 class WPAPIYoastMeta { 30 12 31 return (array) $yoastMeta; 13 function __construct() { 14 add_action('rest_api_init', array($this, 'add_yoast_data')); 15 } 16 17 function add_yoast_data() { 18 // Posts 19 register_api_field( 'post', 20 'yoast_meta', 21 array( 22 'get_callback' => array( $this, 'wp_api_encode_yoast' ), 23 'update_callback' => null, 24 'schema' => null, 25 ) 26 ); 27 28 // Pages 29 register_api_field( 'page', 30 'yoast_meta', 31 array( 32 'get_callback' => array( $this, 'wp_api_encode_yoast' ), 33 'update_callback' => null, 34 'schema' => null, 35 ) 36 ); 37 38 // Public custom post types 39 $types = get_post_types(array( 40 'public' => true, 41 '_builtin' => false 42 )); 43 foreach($types as $key => $type) { 44 register_api_field( $type, 45 'yoast_meta', 46 array( 47 'get_callback' => array( $this, 'wp_api_encode_yoast' ), 48 'update_callback' => null, 49 'schema' => null, 50 ) 51 ); 52 } 53 } 54 55 function wp_api_encode_yoast($post, $field_name, $request) { 56 $yoastMeta = array( 57 'yoast_wpseo_focuskw' => get_post_meta($post['id'], '_yoast_wpseo_focuskw', true), 58 'yoast_wpseo_title' => get_post_meta($post['id'], '_yoast_wpseo_title', true), 59 'yoast_wpseo_metadesc' => get_post_meta($post['id'], '_yoast_wpseo_metadesc', true), 60 'yoast_wpseo_linkdex' => get_post_meta($post['id'], '_yoast_wpseo_linkdex', true), 61 'yoast_wpseo_metakeywords' => get_post_meta($post['id'], '_yoast_wpseo_metakeywords', true), 62 'yoast_wpseo_meta-robots-noindex' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-noindex', true), 63 'yoast_wpseo_meta-robots-nofollow' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-nofollow', true), 64 'yoast_wpseo_meta-robots-adv' => get_post_meta($post['id'], '_yoast_wpseo_meta-robots-adv', true), 65 'yoast_wpseo_canonical' => get_post_meta($post['id'], '_yoast_wpseo_canonical', true), 66 'yoast_wpseo_redirect' => get_post_meta($post['id'], '_yoast_wpseo_redirect', true), 67 'yoast_wpseo_opengraph-title' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-title', true), 68 'yoast_wpseo_opengraph-description' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-description', true), 69 'yoast_wpseo_opengraph-image' => get_post_meta($post['id'], '_yoast_wpseo_opengraph-image', true), 70 'yoast_wpseo_twitter-title' => get_post_meta($post['id'], '_yoast_wpseo_twitter-title', true), 71 'yoast_wpseo_twitter-description' => get_post_meta($post['id'], '_yoast_wpseo_twitter-description', true), 72 'yoast_wpseo_twitter-image' => get_post_meta($post['id'], '_yoast_wpseo_twitter-image', true) 73 ); 74 75 return (array) $yoastMeta; 76 } 77 32 78 } 33 79 34 add_action('rest_api_init', function() { 35 register_api_field('page', 'yoast_meta', array( 36 'get_callback' => 'wp_api_encode_yoast', 37 'update_callback' => null, 38 'schema' => null, 39 )); 40 }); 41 42 add_action('rest_api_init', function() { 43 register_api_field('post', 'yoast_meta', array( 44 'get_callback' => 'wp_api_encode_yoast', 45 'update_callback' => null, 46 'schema' => null, 47 )); 48 }); 80 $WPAPIYoastMeta = new WPAPIYoastMeta(); -
wp-api-yoast-meta/trunk/readme.txt
r1458073 r1460312 22 22 == Changelog == 23 23 24 = 1.1 = 25 26 Using Class instead of plain function 27 Added output to public custom post types 28 24 29 = 1.0 = 25 30
Note: See TracChangeset
for help on using the changeset viewer.