Как получить название текущего плагина?
Мне нужно получить название текущего плагина, используя define, например так:
define(PLUGIN_NAME, plugin_basename(dirname(__FILE__)));
К сожалению, этот код не работает, потому что php файл находится во вложенной директории (includes) моего плагина, и он возвращает:
my-plugin/includes
Есть ли какая-то функция в WordPress API для выполнения этой задачи? Заранее спасибо.

Мне нравится это, но когда я вывожу все ключи и значения ассоциативного массива, только TextDomain возвращает значение: PluginURI =
Version =
Description =
Author =
AuthorURI =
TextDomain = my-calculator
DomainPath =
Network =
Title =
AuthorName =
... как мне установить/получить все остальные значения для #plugin_data ?

Убедитесь, что основной комментарий в вашем файле плагина содержит соответствующие данные в соответствии с https://codex.wordpress.org/File_Header

вы можете получить название плагина в подкаталоге вашего плагина с помощью этого фрагмента кода:
$plugin = basename( plugin_dir_path( dirname( __FILE__ , 2 ) ) );
вам нужно только указать уровень подкаталога относительно папки плагина во втором параметре функции dirname().

Это позволит вам получить название папки плагина независимо от того, где расположен файл, и без необходимости знать структуру директорий плагина.
$plugin_folder_name = reset(explode('/', str_replace(WP_PLUGIN_DIR . '/', '', __DIR__)));
Разберем, что происходит, по шагам:
// Получаем относительный путь к текущему файлу от корня плагина
$file_path_from_plugin_root = str_replace(WP_PLUGIN_DIR . '/', '', __DIR__);
// Разбиваем путь на массив
$path_array = explode('/', $file_path_from_plugin_root);
// Название папки плагина - первый элемент массива
$plugin_folder_name = reset($path_array);
