我想构建一个WordPress管理仪表板小部件,它应该从另一个插件返回一些信息。
此仪表板小部件应在此处阅读此插件的功能: http://plugins.svn.wordpress.org/wp-document-revisions/trunk/wp-document-revisions.php
所以我的代码是:
include (WP_PLUGIN_URL.'/wp-document-revisions/wp-document-revisions.php');
$file_type = get_file_type('3');
但这不起作用。这些是错误:
致命错误:调用未定义的函数add_action() /.../wp-content/plugins/wp-document-revisions/wp-document-revisions.php 在第26行
致命错误:调用未定义的函数get_file_type() /.../可湿性粉剂内容/插件/仪表板插件/仪表板widget.php
有谁能告诉我如何做到这一点,我可以读取函数get_file_type('3')?
答案 0 :(得分:0)
我假设您直接导航到wp-content / plugins /文件夹中的PHP文件,而不是使用存根来创建URL。如果是这种情况,那么您可能忘记包含wp-load.php
答案 1 :(得分:0)
您不应该包含插件文件(因为可能未安装或激活插件)。 而不是这个,你应该检查函数是否存在:
if (function_exists('get_file_type')) {
$file_type = get_file_type('3');
// rest of the code of the widget
}
答案 2 :(得分:0)
听起来你正试图直接访问PHP文件,而不是通过正确的WordPress。您应该创建一个插件,并挂钩Dashboard Widgets API。
对于WP Document Revisions的实施,您有两个选择。从版本1.2开始,get_documents()
和get_document_revisions()
是两个全局函数,可以在plugins_loaded
挂钩后随时访问。 FAQ有更多信息,但它们的功能基本上与原生get_posts()
功能相同。
或者,该课程应在全球范围内以$wpdr
的形式提供。例如,如果您想要致电get_latest_version( 1 )
,那就是$wpdb->get_latest_version( 1 )
。
两者都假设插件已经激活。如果您只是包含该文件,那么您将尝试重新声明WP_Document_Revisions
类的错误。
如果你确实创建了一个仪表板,我很乐意将它包含在插件的未来版本中!