Я пытаюсь создать плагин для показа диаграммы, основанной на количестве тех категорий, у которых есть максимальные сообщения. Эта диаграмма является мета-полем на странице редактирования сообщений. Вот мой источник вдохновения: jquery charts
Большая часть функции работает так же, но я добавил несколько крючков, чтобы добавить ее в мета-окно. Вот мой код:
add_action( 'add_meta_boxes', 'category_meta_box_add' ); function category_meta_box_add() { add_meta_box( 'my-meta-box-id', 'Category by Percentage', 'categories', 'post', 'normal', 'high' ); } function categories($atts,$content = '') { } //full function is defined in link above add_shortcode('mycategories', 'categories'); echo do_shortcode('[mycategories]');
Этот плагин при установке показывает мета-окно без данных, также дает ошибку:
Плагин генерировал 721 символ неожиданного выхода во время активации. Если вы заметили сообщения «уже отправленные», проблемы с фидами синдикации или другие проблемы, попробуйте отключить или удалить этот плагин.
Как это решить?
благодаря
Полный плагин здесь
Проблема может быть из-за этой строки:
echo do_shortcode('[mycategories]');
Он не должен оставаться таким же, как в файле плагина, потому что это будет отображаться до отправки заголовков. Думаю, вы добавили эту строку, чтобы проверить выход? Попробуйте удалить эту строку или инкапсулировать ее с помощью соответствующей функции. Вместо этого вы могли бы добавить [mycategories]
в содержимое некоторого сообщения / страницы для его проверки.
Вы можете заменить эту строку
add_meta_box( 'my-meta-box-id', 'Category by Percentage', 'categories', 'post', 'normal', 'high' );
с
add_meta_box( 'my-meta-box-id', 'Category by Percentage', 'category_meta_box_html', 'post', 'normal', 'high' );
и добавьте эту функцию:
function category_meta_box_html(){ echo do_shortcode("[mycategories]"); }
для отображения графика внутри метабокса.