简短回答:否。
答案稍长一些,大多数WordPress方法都需要一个运行正常的WordPress后端。让我们看看wp_get_current_user
例如:
function wp_get_current_user() {
return _wp_get_current_user();
}
这导致我们
_wp_get_current_user
:
function _wp_get_current_user() {
global $current_user;
if ( ! empty( $current_user ) ) {
if ( $current_user instanceof WP_User ) {
return $current_user;
}
// Upgrade stdClass to WP_User
if ( is_object( $current_user ) && isset( $current_user->ID ) ) {
$cur_id = $current_user->ID;
$current_user = null;
wp_set_current_user( $cur_id );
return $current_user;
}
// $current_user has a junk value. Force to WP_User with ID 0.
$current_user = null;
wp_set_current_user( 0 );
return $current_user;
}
if ( defined(\'XMLRPC_REQUEST\') && XMLRPC_REQUEST ) {
wp_set_current_user( 0 );
return $current_user;
}
/**
* Filters the current user.
*
* The default filters use this to determine the current user from the
* request\'s cookies, if available.
*
* Returning a value of false will effectively short-circuit setting
* the current user.
*
* @since 3.9.0
*
* @param int|bool $user_id User ID if one has been determined, false otherwise.
*/
$user_id = apply_filters( \'determine_current_user\', false );
if ( ! $user_id ) {
wp_set_current_user( 0 );
return $current_user;
}
wp_set_current_user( $user_id );
return $current_user;
}
我们可以看到WordPress在获取当前用户方面做了很多“幕后”工作,因此将此函数作为一个独立的方法实现可能不会让您走得太远。
备选方案
正如@AlexanderHolsgrove在另一个答案中所建议的那样,如果您需要从另一个应用程序获取/发送数据到WordPress,REST API是与WordPress安装通信的好方法。
您还应该看看SHORTINIT
常量-如果在wp-config.php
, 它加载WordPress的某些部分,然后退出。我不确定它是否能满足您的需要,但它可能值得一看。