get_plugin_data() — возвращает массив мета-данных плагина

Возвращает массив с информацией о плагине, прописанной в основном файле плагина. В случае, если указанного плагина не сущестует, возвращает ошибку «Warning: fopen( … ) [function.fopen]: failed to open stream: No such file or directory in …»

get_plugin_data( $plugin_file, $markup = true, $translate = true )
$plugin_file
(строка) абсолютный путь к главному файлу плагина.
$markup
(логическое) нужно ли применить HTML-разметку к возвращаемому результату.
$translate
(логическое) нужно ли переводить возвращаемый результат.

Для тех, у кого возникает «Fatal error: Call to undefined function get_plugin_data()…», непосредственно перед использованием функции добавьте следующий код:

if( !function_exists('get_plugin_data') ){
	require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
}

Пример

Предположим, мы используем функцию get_plugin_data() в каком-нибудь файле темы, тогда:

require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
$plugin_info = get_plugin_data( ABSPATH . 'wp-content/plugins/hello.php' );
 
/*
	$plugin_info['Name'] - название плагина
	$plugin_info['PluginURI'] - страница плагина
	$plugin_info['Version'] - версия
	$plugin_info['Description'] - описание
	$plugin_info['Author'] - автор
	$plugin_info['AuthorURI'] - страница автора
	$plugin_info['TextDomain'] - для плагинов с локализацией
	$plugin_info['DomainPath'] - пусть к директории плагина относительно .mo файлов
	$plugin_info['Network'] - логическое, может ли плагин быть использован только для сети
*/
 
echo $plugin_info['Version'];

Оставить комментарий / вопрос

phpjsHTMLCSSSQLПросто код
  Для того, чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или авторизуйтесь на сайте.
Получайте новости блога по email или следите за мной в социальных сетях.
  • alex morozov: Ура, спасибо! Все-таки я разобрался ! Сделал:

  • alex morozov: Сделал Класс добаляется даже если поле пустое

  • Vladislav: Лучше бы посоветовали изящное решение имеющейся проблемы.

  • alex morozov: Не очень понял. Я добавляю метабокс через класс, почти как у вас. class Desc_Meta_Box { private $screens = array(...

  • Миша: Метод тыка хорош, но оснвоы нужно знать в любом случае. Рекомендую почитать это.