Make the xmlrpc user the current user. fixes #2273
git-svn-id: http://svn.automattic.com/wordpress/trunk@3430 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
@@ -530,9 +530,17 @@ function kses_init_filters() {
|
||||
function kses_init() {
|
||||
global $current_user;
|
||||
|
||||
get_currentuserinfo(); // set $current_user
|
||||
remove_filter('pre_comment_author', 'wp_filter_kses');
|
||||
remove_filter('pre_comment_content', 'wp_filter_kses');
|
||||
remove_filter('content_save_pre', 'wp_filter_post_kses');
|
||||
remove_filter('title_save_pre', 'wp_filter_kses');
|
||||
|
||||
if (! defined('XMLRPC_REQUEST') )
|
||||
get_currentuserinfo();
|
||||
|
||||
if (current_user_can('unfiltered_html') == false)
|
||||
kses_init_filters();
|
||||
}
|
||||
add_action('init', 'kses_init');
|
||||
add_action('set_current_user', 'kses_init');
|
||||
?>
|
||||
|
||||
@@ -3,11 +3,38 @@
|
||||
/* These functions can be replaced via plugins. They are loaded after
|
||||
plugins are loaded. */
|
||||
|
||||
if ( !function_exists('set_current_user') ) :
|
||||
function set_current_user($id, $name = '') {
|
||||
global $user_login, $userdata, $user_level, $user_ID, $user_email, $user_url, $user_pass_md5, $user_identity, $current_user;
|
||||
|
||||
$current_user = '';
|
||||
|
||||
$current_user = new WP_User($id, $name);
|
||||
|
||||
$userdata = get_userdatabylogin($user_login);
|
||||
|
||||
$user_login = $userdata->user_login;
|
||||
$user_level = $userdata->user_level;
|
||||
$user_ID = $userdata->ID;
|
||||
$user_email = $userdata->user_email;
|
||||
$user_url = $userdata->user_url;
|
||||
$user_pass_md5 = md5($userdata->user_pass);
|
||||
$user_identity = $userdata->display_name;
|
||||
|
||||
do_action('set_current_user');
|
||||
|
||||
return $current_user;
|
||||
}
|
||||
endif;
|
||||
|
||||
|
||||
if ( !function_exists('get_currentuserinfo') ) :
|
||||
function get_currentuserinfo() {
|
||||
global $user_login, $userdata, $user_level, $user_ID, $user_email, $user_url, $user_pass_md5, $user_identity, $current_user;
|
||||
|
||||
if ( defined('XMLRPC_REQUEST') && XMLRPC_REQUEST )
|
||||
return false;
|
||||
|
||||
if ( empty($_COOKIE[USER_COOKIE]) || empty($_COOKIE[PASS_COOKIE]) ||
|
||||
!wp_login($_COOKIE[USER_COOKIE], $_COOKIE[PASS_COOKIE], true) ) {
|
||||
$current_user = new WP_User(0);
|
||||
|
||||
Reference in New Issue
Block a user