Example #1
0
 /**
  * Metadata plugin
  * @return void
  */
 public function metaData()
 {
     global $pagenow;
     if (!current_user_can('edit_posts') || !current_user_can('edit_pages') || $pagenow != 'post.php') {
         return;
     }
     add_action('admin_footer', function () {
         global $post;
         $metakeys = \Municipio\Helper\Post::getPostMetaKeys($post->ID);
         echo '<script>
                 var metadata_button = [
         ';
         $count = 0;
         foreach ($metakeys as $key => $value) {
             echo "{text: '{$value->meta_key}', value: '[meta key=\"{$value->meta_key}\"]'},";
             $count++;
         }
         echo '];</script>';
     });
     add_filter('mce_external_plugins', function ($plugins) {
         $plugins['metadata'] = get_template_directory_uri() . '/assets/dist/js/mce-metadata.js';
         return $plugins;
     });
     add_filter('mce_buttons_2', function ($buttons) {
         array_splice($buttons, 2, 0, array('metadata'));
         return $buttons;
     });
 }