你要求的不止一件事:
- Enumerate hooks: 这可以在
$wp_filter
全局变量。如果您只想查找挂钩的名称,请使用array_keys()
. 有关一些代码示例,请参见here 或者还有很多其他的例子 - Enumerate classes: 使用PHP函数
get_declared_classes()
. - Enumerate functions: 类似地,使用PHP函数
get_defined_functions()
. 这将为您提供一个数组的关联数组,听起来您可能只需要user
键 - Filter these lists: 这是骗子的部分。可能您需要建立一个要过滤掉的内容的参考列表,就像所有WP自定义函数一样(一个长列表)。以上所有引用的源代码都提供了数组
array_filter()
可能是你最好的朋友 - Display your content: 可能最终会得到一个或多个包含要显示的内容的数组。构建您的
foreach
循环将内容转储到屏幕上您想要的位置和方式。我不太清楚“内联页面内容”是什么意思,但几次快速运行应该可以帮助您整理事情,并使其看起来像您喜欢的那样。请记住,如果要将字符串数组转储到分隔列表中的屏幕,implode(\', \', $array_of_strings)
提供良好的结果
如果要查找特定页面上调用的内容,而不是定义的内容,那么如果不中断PHP解析器(或重新解析调用的PHP文件),类和函数很难实现。在这种情况下,挂钩相对容易,只需使用
all
滤器这将为您提供在呈现页面时从端到端的调用内容。
如果您正在查找PHP文件中定义的内容,那么这只是解析或挂接PHP解析器的练习。这里更大的问题是,WP中的特定页面加载与加载的PHP文件的数量有着非常松散的关联。访问的URL和加载的单个PHP文件之间没有一对一的关联。例如,每个支持类,如WP_Post
和wpdb
, 在单个PHP文件中定义,其中没有一个文件可能直接负责任何页面加载的任何输出,但所有这些都是几乎每个页面加载所必需的。
如果没有更多关于你想要完成什么(特别是为什么)的信息,很难说得更多。所以你想完成什么?这些背景信息是否足以帮助您完成任务?