我正在尝试弄清楚如何get_current_user_id()正确使用该功能。
我需要它来分离用户数据,就像普通的 PHP 代码使用$_SESSION.
我找到了我放入的以下代码示例,Function.php它工作正常,但它似乎在每个页面上执行,这不是本意。
function hf_Function(){
$user_ID = get_current_user_id();
_SESSION["uid"] = user_ID;
}
add_action('init', 'hf_Function');
Run Code Online (Sandbox Code Playgroud)
我只需要它执行一次并将信息保存在$_SESSION我可以从我自己的 PHP 页面访问的变量或全局变量中。
我尝试将上面的行放入我自己的 PHP 脚本中,但它似乎不起作用。
这是正确的方法还是我做错了什么?
get_current_user_id()使用和其他内置功能时的最佳实践是什么?
根据您的示例代码,将 user_id 存储在$_SESSION.
get_current_user_id()您可以在整个站点中使用该方法。如果当前用户已登录,则返回当前用户 ID;0如果当前用户未登录,则返回当前用户 ID。
例如,您可以执行以下操作:
function hf_Function(){
$user_ID = get_current_user_id();
if ($user_ID == 0) {
// The user ID is 0, therefore the current user is not logged in
return; // escape this function, without making any changes
}
// Run your SQL queries here (using WordPress DB class)
global $wpdb;
// $wpdb->query($sql);
}
add_action('init', 'hf_Function');
Run Code Online (Sandbox Code Playgroud)
由于您正在使用该init操作,因此该函数将在每次页面加载时运行。您可能需要更改操作,具体取决于您想要实现的目标。WordPress SE 上的这个答案可能有助于帮助您了解 WordPress 生命周期。
| 归档时间: |
|
| 查看次数: |
30223 次 |
| 最近记录: |