我正在开发一个用于wordpress的API,我正在寻找一种方法来唯一地识别请求API的wordpress安装。有谁知道安装ID或独特的wordpress博客ID?这甚至是一件事吗?
答案 0 :(得分:1)
我已经编写了2个API,并与多个API合作过,我很久以前就偶然发现了这个问题......
我喜欢保持简单...所以我使用site_url()
作为博客的身份,因为我确定没有其他安装会在同一个网站上运行,因此每当出现问题时调试,我知道网站ID是网址
在我的数据库中保存了一个额外字段(如果我的ID不同,我需要另一个字段用于网站网址。)
您还可以使用复杂的解决方案,例如使用site_url的md5以及一些随机生成的字符串来命名。
这将在激活时生成ID并将其保存在数据库中。
function generate_password($length = 12) {
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$password = '';
for ($i = 0; $i < $length; $i++) {
$password. = substr($chars, rand(0, strlen($chars) - 1), 1);
}
return $password;
}
function my_plugin_activated() {
$id = generate_password();
add_option('my_plugin_installation_id', $id);
}
register_activation_hook( __FILE__, 'my_plugin_activated' );
my_plugin_activated()
中的代码仅在激活插件时执行一次(您可以对主题执行相同操作),您可以在激活挂钩本身中调用您的api并在您的数据库中注册该站点
希望有所帮助。