Php 如何在add#u操作(';init';,';method';)中使用className::method()/array(';className';,';method';)
我是WP的新手,仍然需要学习更多的概念、良好的实践和功能。此外,我的英语不是很好。所以,放松点:P 当我尝试开发自己的插件时,我遇到了Php 如何在add#u操作(';init';,';method';)中使用className::method()/array(';className';,';method';),php,wordpress,plugins,Php,Wordpress,Plugins,我是WP的新手,仍然需要学习更多的概念、良好的实践和功能。此外,我的英语不是很好。所以,放松点:P 当我尝试开发自己的插件时,我遇到了add_action('init','')(还不确定)的问题。这是我的班级(名为MeuPlugin): 然后我用 $pluginFile = substr(strrchr(dirname(__FILE__),DIRECTORY_SEPARATOR),1).DIRECTORY_SEPARATOR.basename(__FILE__); register_activ
add_action('init','')
(还不确定)的问题。这是我的班级(名为MeuPlugin):
然后我用
$pluginFile = substr(strrchr(dirname(__FILE__),DIRECTORY_SEPARATOR),1).DIRECTORY_SEPARATOR.basename(__FILE__);
register_activation_hook($pluginFile, array('MeuPlugin', 'install'));
add_filter('init', array('MeuPlugin', 'initialize'));
“运行”我的插件我的问题:为什么
add_action('init',array('MeuPlugin','newslettesposttype')代码>(“行”7)不起作用,而添加操作('admin_menu',数组('MeuPlugin','addMenu')代码>(“行”8)有什么作用
注意:当我使用add_action('init',MeuPlugin::newslettesposttype())时代码>(“行”6)而不是添加操作('init',数组('MeuPlugin','newslettesposttype')代码>(“行”7),工作正常。为什么我必须放置className::method()
而不是数组('className','method')
我希望我已经说清楚了。谢谢 Hi“添加动作”功能定义如下:
function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) {
return add_filter($tag, $function_to_add, $priority, $accepted_args);
}
第一个参数是字符串;
第二个参数是对函数的引用,而不是您试图使用的数组
array('MeuPlugin', 'newslettersPostType')
目前我无法解释为什么第8行:
add_action('admin_menu', array('MeuPlugin', 'addMenu'));
正在工作。。。。。“添加操作”功能定义如下,它不应出现在该功能中:
function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) {
return add_filter($tag, $function_to_add, $priority, $accepted_args);
}
第一个参数是字符串;
第二个参数是对函数的引用,而不是您试图使用的数组
array('MeuPlugin', 'newslettersPostType')
目前我无法解释为什么第8行:
add_action('admin_menu', array('MeuPlugin', 'addMenu'));
正在工作。。。。。不应该我想这会回答你的问题question@Laurentiu我仍然不明白为什么add_action('init',array('MeuPlugin','newslettespostType'))
不起作用,而add_action('admin_menu',array('MeuPlugin','addMenu'))不起作用。这些不是“同一件事”?我错过什么了吗?谢谢。我想这会回答你的问题question@Laurentiu我仍然不明白为什么add_action('init',array('MeuPlugin','newslettespostType'))
不起作用,而add_action('admin_menu',array('MeuPlugin','addMenu'))不起作用。这些不是“同一件事”?我错过什么了吗?谢谢,谢谢回复!我认为array('MeuPlugin','newslettesposttype')
也可以像回调函数一样工作,但可以用作数组。请参见我的例子,使用//类型2:静态类方法调用\u user\u func(数组('MyClass','myCallbackMethod')代码>感谢您的回复!我认为array('MeuPlugin','newslettesposttype')
也可以像回调函数一样工作,但可以用作数组。请参见我的例子,使用//类型2:静态类方法调用\u user\u func(数组('MyClass','myCallbackMethod')代码>