我試圖使用func wp_get_current_user()在我的插件中獲取當前用戶信息。但我越來越 Call to undefined function wp_get_current_user()
wordpress插件 - >調用未定義的函數wp_get_current_user()
顯然這是發生的,因爲包含該功能的文件/wp-includes/pluggable
直到插件加載後才加載。
任何人有關如何獲取我的插件中的用戶細節的任何想法?
我試圖使用func wp_get_current_user()在我的插件中獲取當前用戶信息。但我越來越 Call to undefined function wp_get_current_user()
wordpress插件 - >調用未定義的函數wp_get_current_user()
顯然這是發生的,因爲包含該功能的文件/wp-includes/pluggable
直到插件加載後才加載。
任何人有關如何獲取我的插件中的用戶細節的任何想法?
顯然這是因爲包含該函數的文件/ wp-includes/pluggable直到插件加載後才加載。
事實確實如此。因此,請將您正在做的任何事情包裝到函數中,並將其掛接到plugins_loaded或init鉤子上。 (見WP-的settings.php文件)
例子:
add_action('init','do_stuff');
function do_stuff(){
$current_user = wp_get_current_user();
// ...
}
您可以使用此,
<?php
if(!function_exists('wp_get_current_user')) {
include(ABSPATH . "wp-includes/pluggable.php");
}
?>
這應該解決您的問題:)
這也將打破WP。 – 2011-05-25 19:32:46
@DenisdeBernardy我想實現這個解決方案,但我想知道,這將如何突破WP? – Lumo5 2017-02-04 11:20:23
@ Lumo5:我多年來一直沒有觸及WP,但離開了我的頭頂a)始終包含使用WP的include_once的文件? b)在添加可插入功能(特別是在進行正確的身份驗證之前與身份驗證和權限管理相關的功能)之後,您是否最終可能不會打開安全問題?和c)OP想要做什麼是一個鉤子。 – 2017-02-17 18:56:27
後, wp 3.8的安裝我和我用ajax獲得的頁面有同樣的問題。我用下面的代碼修復了它:
if(!function_exists('wp_delete_user')) {
include(ABSPATH . "wp-admin/includes/user.php.");
}
顯然這個函數是從pluggable.php移到user.php。不過,我不明白爲什麼它包含了wp-blog-header.php後無法使用。
更新WP後我得到了同樣的錯誤信息。這個修補程序對我來說很簡單快捷:
在wp-includes目錄(WP 3.8.x)中找到capabilities.php。 添加以下頂部,開幕PHP標籤後:
require_once('pluggable.php');
你不覺得這是違背最佳實踐來改變核心文件。 – weaveoftheride 2015-01-05 12:52:37
在我的情況下,它打破了WP :) – Sam 2015-01-06 08:37:15
嘗試也
require_once('../../../wp-load.php');
添加具有
require_once(ABSPATH.'wp-includes/pluggable.php');
我的問題與此代碼,請
解決沿include_once(ABSPATH . 'wp-includes/pluggable.php');
快速修復include_once(ABSPATH . 'wp-includes/pluggable.php');
增加您的capabilities.php
wp-includes
這一行,但是:include_once(ABSPATH . "wp-admin/includes/plugin.php");
工作就像一個魅力。 我當時正在構造一個加載用戶細節的類。所以這裏是其他人的代碼。 我現在有: 'add_action('plugins_loaded','construct_my_class'); function construct_my_class(){ $ controller = new myClass(); } – 2011-05-25 19:28:28
在哪裏添加代碼? @Coombesy? – Prakash 2014-03-18 19:11:56
@Prakash取決於你的插件架構。對於大多數wordpress開發,我會想象它會在插件'index.php'文件 – 2014-03-18 21:21:48