我想节省用户激活插件的时间。因此,我需要在注册挂钩触发的函数中设置值:
function ucme_reg_func () {
//------------other functions-------------
global $sega;
$sega = new setTime();
$sega->theTimeis = time();}
setTime是一个简单的类,应该保存时间戳:
class setTime{
public $theTimeis;
public function settingTime($theTimeis) {
$this->theTimeis = $theTimeis;
}
public function getTime() {
return $this->theTimeis;
}
}
我试图通过一个快捷码函数访问值$sega:
function new_func() {
global $post;
global $sega;
$now = $sega->getTime();
//-------------------------
var_dump($now);
}
错误是:致命错误:对中的非对象调用成员函数GETTIME()。。。
我在纯php环境中应用了相同的逻辑,并且它起到了作用。我欢迎任何关于如何正确设置时间戳的帮助,也欢迎有人指出我在理解Wordpress和PHP之间的差异时的错误,我认为这是问题的真正原因。
最合适的回答,由SO网友:JoshuaW 整理而成
你必须使用get- and add_option 内部aregister_activation_hook.
<?php
register_activation_hook(__FILE__,\'save_activation_timestamp\');
function save_activation_timestamp()
{
add_option("myplugin_activation_timestamp",mktime());
}
?>
你可以在以下网站上找到关于这方面的完整教程
CodeYoghurt.它甚至以你的情况为例。