prompts
2 years ago
colibri.php
2 years ago
contact-form.php
2 years ago
entity.php
4 years ago
get-body-class.php
4 years ago
get-classic-page-template.php
4 years ago
get-page-query.php
4 years ago
get-page-title.php
4 years ago
get-post-content.php
4 years ago
get-post-styles.php
4 years ago
index.php
2 years ago
kubio-cloud.php
2 years ago
page-templates.php
4 years ago
save-template-parts-filter.php
2 years ago
subscribe-form.php
4 years ago
typekit.php
4 years ago
update-settings-flags.php
2 years ago
typekit.php
49 lines
| 1 | <?php |
| 2 | |
| 3 | function kubio_typekit_query( WP_REST_Request $data ) { |
| 4 | |
| 5 | $path = $data->get_param( 'path' ); |
| 6 | $key = $data->get_param( 'key' ); |
| 7 | |
| 8 | $url = 'https://typekit.com/' . trim( $path, '/' ); |
| 9 | $response = wp_remote_get( |
| 10 | $url, |
| 11 | array( |
| 12 | 'headers' => array( |
| 13 | 'X-Typekit-Token' => $key, |
| 14 | ), |
| 15 | ) |
| 16 | ); |
| 17 | |
| 18 | if ( is_wp_error( $response ) ) { |
| 19 | return $response; |
| 20 | } |
| 21 | |
| 22 | if ( $response = json_decode( wp_remote_retrieve_body( $response ) ) ) { |
| 23 | return $response; |
| 24 | } |
| 25 | |
| 26 | return new WP_Error( 'Unable to decode' ); |
| 27 | } |
| 28 | |
| 29 | |
| 30 | add_action( |
| 31 | 'rest_api_init', |
| 32 | function () { |
| 33 | $namespace = 'kubio/v1'; |
| 34 | |
| 35 | register_rest_route( |
| 36 | $namespace, |
| 37 | '/typekit-query', |
| 38 | array( |
| 39 | 'methods' => 'GET', |
| 40 | 'callback' => 'kubio_typekit_query', |
| 41 | 'permission_callback' => function () { |
| 42 | return current_user_can( 'edit_theme_options' ); |
| 43 | }, |
| 44 | |
| 45 | ) |
| 46 | ); |
| 47 | } |
| 48 | ); |
| 49 |