如何获取当前插件名称?

时间:2015-04-27 作者:Tetravalente

我需要使用如下定义获取当前插件名称

define(PLUGIN_NAME, plugin_basename(dirname(__FILE__)));
遗憾的是,该代码无法工作,因为php文件嵌套在插件目录的子目录(includes)中,并且返回

my-plugin/includes 
Wordpress API中是否有任何函数可以完成此任务?提前谢谢。

2 个回复
SO网友:Mark Howells-Mead

在插件的主PHP文件中:

$plugin_data = get_plugin_data( __FILE__ );
$plugin_name = $plugin_data[\'Name\'];

SO网友:Kerkness

这将为您提供插件文件夹名称,无论文件位于何处,也不必知道插件的目录结构。

$plugin_folder_name = reset(explode(\'/\', str_replace(WP_PLUGIN_DIR . \'/\', \'\', __DIR__)));
了解正在发生的事情

// Get the relative path to current file from plugin root
$file_path_from_plugin_root = str_replace(WP_PLUGIN_DIR . \'/\', \'\', __DIR__);

// Explode the path into an array
$path_array = explode(\'/\', $file_path_from_plugin_root);

// Plugin folder is the first element
$plugin_folder_name = reset($path_array);

结束

相关推荐

JQuery Plugins in Wordpress

我已经能够在某种程度上拼凑出应该如何做到这一点,但我真的很难做到这一点。我想使用Table Sorter插件(http://tablesorter.com) 在自定义页面模板中显示数据,但我不确定它是否正确。我已经钩住了“wp\\u enqueue\\u scripts”,并使用此函数将表分类器JS文件排入队列。我相信这是正确的,但是我还需要在JQuery Ready()函数中放置一行,但是我不确定如何从自定义页面模板中执行此操作。有人能解释一下吗?<?php /* Templat