本文整理汇总了PHP中wp_clearcookie函数的典型用法代码示例。如果您正苦于以下问题:PHP wp_clearcookie函数的具体用法?PHP wp_clearcookie怎么用?PHP wp_clearcookie使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了wp_clearcookie函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: wp_login
function wp_login($username, $password, $already_md5 = false) {
global $wpdb, $error;
if(is_object($GLOBALS["xoopsModule"]) && WP_BLOG_DIRNAME == $GLOBALS["xoopsModule"]->getVar("dirname")){
if(!is_object($GLOBALS["xoopsUser"])){
wp_clearcookie();
return false;
}
}
$username = sanitize_user($username);
if ( '' == $username )
return false;
if ( '' == $password ) {
$error = __('<strong>ERROR</strong>: The password field is empty.');
return false;
}
$login = get_userdatabylogin($username);
//$login = $wpdb->get_row("SELECT ID, user_login, user_pass FROM $wpdb->users WHERE user_login = '$username'");
if (!$login) {
$error = __('<strong>ERROR</strong>: Invalid username.');
return false;
} else {
if ($login->user_login == $username) {
if ($login->user_pass == $password) return true;
if ($login->user_pass == md5($password)) return true;
}
$error = __('<strong>ERROR</strong>: Incorrect password.');
$pwd = '';
return false;
}
}
示例2: ProjectTheme_do_login_scr
function ProjectTheme_do_login_scr()
{
/*do_action( 'login_enqueue_scripts' );
do_action( 'login_head' );
do_action('login_footer');
*/
global $wpdb, $error, $wp_query, $current_theme_locale_name;
if (!is_array($wp_query->query_vars)) {
$wp_query->query_vars = array();
}
$action = $_REQUEST['action'];
$error = '';
nocache_headers();
header('Content-Type: ' . get_bloginfo('html_type') . '; charset=' . get_bloginfo('charset'));
if (defined('RELOCATE')) {
// Move flag is set
if (isset($_SERVER['PATH_INFO']) && $_SERVER['PATH_INFO'] != $_SERVER['PHP_SELF']) {
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF']);
}
$schema = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on' ? 'https://' : 'http://';
if (dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) != get_settings('siteurl')) {
update_option('siteurl', dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']));
}
}
do_action('login_init');
do_action('login_form_' . $action);
switch ($_REQUEST["action"]) {
//logout
case "logout":
wp_clearcookie();
session_start();
$sessions->destroy_all();
/*session_start();
if(isset($vstrsnln_blog_id))
{
unset( $vstrsnln_blog_id);
session_destroy();
} */
if (get_option("jk_logout_redirect_to")) {
$redirect_to = get_option("jk_logout_redirect_to");
} else {
$redirect_to = "wp-login.php";
}
do_action('wp_logout');
nocache_headers();
if (isset($_REQUEST['redirect_to'])) {
$redirect_to = $_REQUEST['redirect_to'];
}
wp_redirect(get_bloginfo('siteurl'));
exit;
break;
//lost lost password
//lost lost password
case 'lostpassword':
case 'retrievepassword':
$http_post = 'POST' == $_SERVER['REQUEST_METHOD'];
if ($http_post) {
$errors = my_retrieve_password();
if (!is_wp_error($errors)) {
$redirect_to = !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
wp_safe_redirect($redirect_to);
exit;
}
}
if (isset($_GET['error']) && 'invalidkey' == $_GET['error']) {
$errors->add('invalidkey', __('Sorry, that key does not appear to be valid.'));
}
$redirect_to = apply_filters('lostpassword_redirect', !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '');
do_action('lost_password');
$user_login = isset($_POST['user_login']) ? stripslashes($_POST['user_login']) : '';
get_header();
?>
<div class="page_heading_me">
<div class="page_heading_me_inner">
<div class="mm_inn"><?php
printf(__("Retrieve Password - %s", $current_theme_locale_name), get_bloginfo('name'));
?>
</div>
</div>
</div>
<!-- ########## -->
<div id="main_wrapper">
<div id="main" class="wrapper"><div class="padd10">
<div class="my_box3">
<div class="padd10">
<div class="box_content">
//.........这里部分代码省略.........
示例3: un_set
/**
* Clears the authentication cookie, logging the user out.
*
* @since 1.5
* @deprecated Use wp_clear_auth_cookie()
* @see wp_clear_auth_cookie()
*/
function un_set()
{
wp_clearcookie();
}
示例4: wp_update_user
function wp_update_user($userdata) {
global $wpdb, $current_user;
$ID = (int) $userdata['ID'];
// First, get all of the original fields
$user = get_userdata($ID);
// Escape data pulled from DB.
$user = add_magic_quotes(get_object_vars($user));
// If password is changing, hash it now.
if ( ! empty($userdata['user_pass']) ) {
$plaintext_pass = $userdata['user_pass'];
$userdata['user_pass'] = md5($userdata['user_pass']);
}
// Merge old and new fields with new fields overwriting old ones.
$userdata = array_merge($user, $userdata);
$user_id = wp_insert_user($userdata);
// Update the cookies if the password changed.
if( $current_user->id == $ID ) {
if ( isset($plaintext_pass) ) {
wp_clearcookie();
wp_setcookie($userdata['user_login'], $plaintext_pass);
}
}
return $user_id;
}
示例5: hma_new_user
/**
* Creates a new user with args passed through an array or string of arguments.
*
* wp_nonce_field( 'register' ) must be used on the register form
*
* @param: username [string] - The desired username for the new user
* @param: email [string] - The desired email address for the new user
* @param: use_password [bool] [default: false] - Whether to specify a password on registration
* @param: password [string] - If use_password is true, the desired password for the new user
* @param: use_tos [bool] [default: true] - Whether the user needs to accept Terms of Service
* @param: tos [string] - If use_tos is true, the value to the accept Terms of Service checkbox
* @param: unique_email [bool] [default: false] - Set to true if only one username is allowed per email address
* @param: do_redirect [bool] [default: true] Whether to redirect the user after registration is complete
* @param: redirect [string] [default: User Profile Page] - The url to redirect the user to after successful login
* @param: send_email [bool] [default: true] Whether to send an email containing the username and password of the newly registered user
* @param: profile_info [array] [dafault: false] An array containing values to be used in wp_update_user() such as first_name, last_name
* @param: validate [bool] [default: true]
* @param: require_verify_email [bool] [default: false] Sends the user an email with a Activate Account link to activate their account
* @param: override_nonce [bool] [default: false] Bypasses the nonce check, not recommended in most situations
*
* @return: Int ID, the ID of the newly registered user [on error returns error string] or WP_Error
*/
function hma_new_user($args)
{
if (is_user_logged_in()) {
hm_error_message('You are already logged in', 'register');
return new WP_Error('already-logged-in');
}
$checks = array('use_password' => false, 'tos' => '', 'use_tos' => true, 'unique_email' => false, 'do_redirect' => true, 'do_login' => false, 'redirect' => '', 'send_email' => false, 'override_nonce' => false);
$defaults = array('user_login' => '', 'user_email' => '', 'user_pass' => false, 'role' => 'subscriber', 'validate' => true);
$original_args = $args;
$default_args = array_merge($defaults, $checks);
$args = wp_parse_args($args, $default_args);
extract($args, EXTR_SKIP);
$validation = apply_filters('hma_registration_info', $args);
unset($args['user_pass2']);
unset($original_args['user_pass2']);
unset($user_pass2);
if (is_wp_error($validation) && $validate == true) {
return $validation;
}
// Merge arrays overwritting defaults, remove any non-standard keys keys with empty values.
$user_vars = array_filter(array('user_login' => $user_login, 'user_pass' => $user_pass, 'user_email' => $user_email, 'display_name' => $display_name));
// Check for require_verify_email, send email and store temp data
if ($require_verify_email) {
$original_args['require_verify_email'] = false;
$unverified_users = (array) get_option('unverified_users');
$unverified_users[time()] = $original_args;
update_option('unverified_users', $unverified_users);
$message = "Please click the link below to activate your account for " . get_bloginfo() . "\n \n";
$message .= '<a href="' . get_bloginfo('url') . '/login/?verify_email=' . $user_vars['user_email'] . '&key=' . time() . '">' . get_bloginfo('url') . '/login/?verify_email=' . $user_vars['user_email'] . '&key=' . time() . '</a>';
$headers = 'From: ' . get_bloginfo() . ' <noreply@' . get_bloginfo('url') . '>' . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1 \r\n\r\n";
wp_mail($user_vars['user_email'], 'Please activate your account for ' . get_bloginfo(), $message, $headers);
return hm_return_success('sent-email-activation', '<p class="message success">You have been sent an activation email, please follow the link in the email sent to ' . $user_vars['user_email'] . '</p>');
}
$user_id = wp_insert_user($user_vars);
if (!$user_id || is_wp_error($user_id)) {
return $user_id;
}
// Setup the users role
if ($role) {
$user = new WP_User($user_id);
$user->set_role($role);
}
// Get any remaining variable that were passed
$meta_vars = array_diff_key($original_args, $defaults, $checks, $user_vars);
foreach ((array) $meta_vars as $key => $value) {
if (hma_is_profile_field($key) || !hma_custom_profile_fields()) {
update_user_meta($user_id, $key, $value);
}
}
$user = get_userdata($user_id);
// Send Notifcation email if specified
if ($send_email) {
$email = hma_email_registration_success($user, $user_pass);
}
// If they chose a password, login them in
if (($use_password == 'true' || $do_login == true) && !empty($user->ID)) {
wp_login($user->user_login, $user_pass);
wp_clearcookie();
wp_setcookie($user->user_login, $user_pass, false);
do_action('wp_login', $user->user_login);
wp_set_current_user($user->ID);
}
// Redirect the user if is set
if ($redirect !== '' && !empty($user->ID) && $do_redirect == true) {
wp_redirect($redirect);
exit;
}
do_action('hma_registered_user', $user);
return $user_id;
}
示例6: shipme_do_login_scr
function shipme_do_login_scr()
{
/*do_action( 'login_enqueue_scripts' );
do_action( 'login_head' );
do_action('login_footer');
*/
global $wpdb, $error, $wp_query;
if (!is_array($wp_query->query_vars)) {
$wp_query->query_vars = array();
}
$action = $_REQUEST['action'];
$error = '';
nocache_headers();
header('Content-Type: ' . get_bloginfo('html_type') . '; charset=' . get_bloginfo('charset'));
if (defined('RELOCATE')) {
// Move flag is set
if (isset($_SERVER['PATH_INFO']) && $_SERVER['PATH_INFO'] != $_SERVER['PHP_SELF']) {
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF']);
}
$schema = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on' ? 'https://' : 'http://';
if (dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) != get_settings('siteurl')) {
update_option('siteurl', dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']));
}
}
do_action('login_init');
do_action('login_form_' . $action);
switch ($_REQUEST["action"]) {
//logout
case "logout":
wp_clearcookie();
if (get_option("jk_logout_redirect_to")) {
$redirect_to = get_option("jk_logout_redirect_to");
} else {
$redirect_to = "wp-login.php";
}
do_action('wp_logout');
nocache_headers();
if (isset($_REQUEST['redirect_to'])) {
$redirect_to = $_REQUEST['redirect_to'];
}
wp_redirect(get_bloginfo('siteurl'));
exit;
break;
//lost lost password
//lost lost password
case 'lostpassword':
case 'retrievepassword':
$http_post = 'POST' == $_SERVER['REQUEST_METHOD'];
if ($http_post) {
$errors = my_retrieve_password();
if (!is_wp_error($errors)) {
$redirect_to = !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
wp_safe_redirect($redirect_to);
exit;
}
}
if (isset($_GET['error']) && 'invalidkey' == $_GET['error']) {
$errors->add('invalidkey', __('Sorry, that key does not appear to be valid.', 'shipme'));
}
$redirect_to = apply_filters('lostpassword_redirect', !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '');
do_action('lost_password');
$user_login = isset($_POST['user_login']) ? stripslashes($_POST['user_login']) : '';
global $real_ttl;
$real_ttl = __("Retrieve Password", 'shipme');
add_filter('wp_title', 'shipme_sitemile_filter_ttl', 10, 3);
get_header();
?>
<div class="container_ship_no_bk margin_top_40">
<ul class="virtual_sidebar">
<li class="widget-container widget_text"><h3 class="widget-title"><?php
_e("Retrieve Password", 'shipme');
?>
- <?php
echo get_bloginfo('name');
?>
</h3>
<div class="my-only-widget-content ">
<?php
if (isset($errors) && isset($_POST['action'])) {
?>
<div class="bam_bam"> <div class="error">
<ul>
<?php
$me = $errors->get_error_messages();
foreach ($me as $mm) {
echo "<li>" . $mm . "</li>";
}
?>
</ul>
</div> </div>
<?php
}
//.........这里部分代码省略.........
示例7: logout
/**
* Logout the user by removing their WRAP cookies
*
*/
public function logout()
{
foreach (array_keys($_COOKIE) as $name) {
if (preg_match('/^WRAP.*/',$name)) {
// set the expiration date to one hour ago
setcookie($name, "", time() - 3600, "/", "ncsu.edu");
}
}
wp_clearcookie();
nocache_headers();
header('Location:' . get_option('siteurl'));
exit();
}
开发者ID:ncsuwebdev,项目名称:Plugin-Wordpress-WrapAuthentication,代码行数:20,代码来源:ncstate-wrap-authentication.php
示例8: nocache_headers
$error = '';
nocache_headers();
header('Content-Type: ' . get_bloginfo('html_type') . '; charset=' . get_bloginfo('charset'));
if (defined('RELOCATE')) {
// Move flag is set
if (isset($_SERVER['PATH_INFO']) && $_SERVER['PATH_INFO'] != $_SERVER['PHP_SELF']) {
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF']);
}
$schema = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on' ? 'https://' : 'http://';
if (dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) != get_settings('siteurl')) {
update_option('siteurl', dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']));
}
}
switch ($action) {
case 'logout':
wp_clearcookie();
do_action('wp_logout');
nocache_headers();
$redirect_to = 'wp-login.php';
if (isset($_REQUEST['redirect_to'])) {
$redirect_to = $_REQUEST['redirect_to'];
}
wp_safe_redirect($redirect_to);
exit;
break;
case 'lostpassword':
do_action('lost_password');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
示例9: openid_create_new_user
/**
* Create a new WordPress user with the specified identity URL and user data.
*
* @param string $identity_url OpenID to associate with the newly
* created account
* @param array $user_data array of user data
*/
function openid_create_new_user($identity_url, &$user_data) {
global $wpdb;
// Identity URL is new, so create a user
@include_once( ABSPATH . 'wp-admin/upgrade-functions.php'); // 2.1
@include_once( ABSPATH . WPINC . '/registration-functions.php'); // 2.0.4
// otherwise, try to use preferred username
if ( empty($username) && array_key_exists('nickname', $user_data) ) {
$username = openid_generate_new_username($user_data['nickname'], false);
}
// finally, build username from OpenID URL
if (empty($username)) {
$username = openid_generate_new_username($identity_url);
}
$user_data['user_login'] = $username;
$user_data['user_pass'] = substr( md5( uniqid( microtime() ) ), 0, 7);
$user_id = wp_insert_user( $user_data );
if( $user_id ) { // created ok
$user_data['ID'] = $user_id;
// XXX this all looks redundant, see openid_set_current_user
$user = new WP_User( $user_id );
if( ! wp_login( $user->user_login, $user_data['user_pass'] ) ) {
openid_message(__('User was created fine, but wp_login() for the new user failed. This is probably a bug.', 'openid'));
openid_status('error');
openid_error(openid_message());
return;
}
// notify of user creation
wp_new_user_notification( $user->user_login );
wp_clearcookie();
wp_setcookie( $user->user_login, md5($user->user_pass), true, '', '', true );
// Bind the provided identity to the just-created user
openid_add_user_identity($user_id, $identity_url);
openid_status('redirect');
if ( !$user->has_cap('edit_posts') ) $redirect_to = '/wp-admin/profile.php';
} else {
// failed to create user for some reason.
openid_message(__('OpenID authentication successful, but failed to create WordPress user. This is probably a bug.', 'openid'));
openid_status('error');
openid_error(openid_message());
}
}
示例10: tja_new_user
/**
* TT New User
* Creates a new user with args passed through an array or string of arguments. Passing arguments works the same
* as functions such as query_posts(). Params are show as variable names which you must use when passing args
* NOTE: wp_nonce_field( 'register' ) must be used on the register form
*
* @Param: username [string] - The desired username for the new user
* @Param: email [string] - The desired email address for the new user
* @Param: use_password [bool] [default: false] - Whether to specify a password on registration
* @Param: password [string] - If use_password is true, the desired password for the new user
* @Param: use_tos [bool] [default: true] - Whether the user needs to accept Terms of Service
* @Param: tos [string] - If use_tos is true, the value to the accept Terms of Service checkbox
* @Param: unique_email [bool] [default: false] - Set to true if only one username is allowed per email address
* @Param: do_redirect [bool] [default: true] Whether to redirect the user after registration is complete
* @Param: redirect [string] [default: User Profile Page] - The url to redirect the user to after successful login
* @Param: send_email [bool] [default: true] Whether to send an email containing the username and password of the newly registered user
* @Param: profile_info [array] [dafault: false] An array containing values to be used in wp_update_user() such as first_name, last_name
* @Param: validate [bool] [default: true]
* @param: require_verify_email [bool] [default: false] Sends the user an email with a Activate Account link to activate their account
* @param: override_nonce [bool] [default: false] Bypasses the nonce check, not recommended in most situations
* @return: The ID of the newly registered user [on error returns error string]
* @author: Joe Hoyle
* @version 1.0
**/
function tja_new_user($args)
{
//Check the nonce field
if ($args['override_nonce'] !== true) {
check_admin_referer('register');
}
if (is_user_logged_in()) {
tj_error_message('You are already logged in', 'register');
return new WP_Error('already-logged-in');
}
include_once ABSPATH . '/wp-includes/registration.php';
$checks = array('use_password' => false, 'tos' => '', 'use_tos' => true, 'unique_email' => false, 'do_redirect' => true, 'redirect' => '', 'send_email' => false);
$defaults = array('user_login' => '', 'user_email' => '', 'user_pass' => false, 'role' => 'subscriber', 'validate' => true);
$original_args = $args;
$default_args = array_merge($defaults, $checks);
//Strip any tags then may have been put into the array
strip_tags((string) $args);
$args = wp_parse_args($args, $default_args);
extract($args, EXTR_SKIP);
$validation = apply_filters('tja_registration_info', $args);
unset($args['user_pass2']);
unset($user_pass2);
if ($validation['status'] === 'error' && $validate == true) {
return $validation;
}
// Merge arrays overwritting defaults, remove any non-standard keys keys with empty values.
$user_vars = array_filter(array_intersect_key(array_merge($defaults, $args), $defaults));
//Check for require_verify_email, send email and store temp data
if ($require_verify_email) {
$original_args['require_verify_email'] = false;
$unverified_users = (array) get_option('unverified_users');
$unverified_users[time()] = $original_args;
update_option('unverified_users', $unverified_users);
$message = "Please click the link below to activate your account for " . get_bloginfo() . "\n \n";
$message .= '<a href="' . get_bloginfo('url') . '/login/?verify_email=' . $user_vars['user_email'] . '&key=' . time() . '">' . get_bloginfo('url') . '/login/?verify_email=' . $user_vars['user_email'] . '&key=' . time() . '</a>';
$headers = 'From: ' . get_bloginfo() . ' <noreply@' . get_bloginfo('url') . '>' . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1 \r\n\r\n";
wp_mail($user_vars['user_email'], 'Please activate your account for ' . get_bloginfo(), $message, $headers);
return tj_return_success('sent-email-activation', '<p class="message success">You have been sent an activation email, please follow the link in the email sent to ' . $user_vars['user_email'] . '</p>');
}
$user_id = wp_insert_user($user_vars);
if ($role) {
$user = new WP_User($user_id);
$user->set_role($role);
}
// Get any remaining variable that were passed
$meta_vars = array_diff_key($original_args, $defaults, $checks);
foreach ((array) $meta_vars as $key => $value) {
update_usermeta($user_id, $key, $value);
}
$user = get_userdata($user_id);
//Send Notifcation email if specified
if ($send_email == true) {
$email = tja_email_registration_success($user, $user_pass);
}
//If they chose a password, login them in
if ($use_password == 'true' && $user->ID > 0) {
wp_login($user->user_login, $user_pass);
wp_clearcookie();
wp_setcookie($user->user_login, $user_pass, false);
}
//Redirect the user if is set
if ($redirect !== '' && $user->ID && $do_redirect == true) {
wp_redirect($redirect);
}
return $user_id;
}
示例11: ProjectTheme_do_login_scr
function ProjectTheme_do_login_scr()
{
global $wpdb, $error, $wp_query, $current_theme_locale_name;
if (!is_array($wp_query->query_vars)) {
$wp_query->query_vars = array();
}
$action = $_REQUEST['action'];
$error = '';
nocache_headers();
header('Content-Type: ' . get_bloginfo('html_type') . '; charset=' . get_bloginfo('charset'));
if (defined('RELOCATE')) {
// Move flag is set
if (isset($_SERVER['PATH_INFO']) && $_SERVER['PATH_INFO'] != $_SERVER['PHP_SELF']) {
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF']);
}
$schema = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on' ? 'https://' : 'http://';
if (dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) != get_settings('siteurl')) {
update_option('siteurl', dirname($schema . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']));
}
}
$secure = 'https' === parse_url(site_url(), PHP_URL_SCHEME) && 'https' === parse_url(home_url(), PHP_URL_SCHEME);
setcookie(TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure);
if (SITECOOKIEPATH != COOKIEPATH) {
setcookie(TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure);
}
$http_post = 'POST' == $_SERVER['REQUEST_METHOD'];
$interim_login = isset($_REQUEST['interim-login']);
do_action('login_init');
do_action('login_form_' . $action);
switch ($_REQUEST["action"]) {
//logout
case "logout":
wp_clearcookie();
if (get_option("jk_logout_redirect_to")) {
$redirect_to = get_option("jk_logout_redirect_to");
} else {
$redirect_to = "wp-login.php";
}
do_action('wp_logout');
nocache_headers();
if (isset($_REQUEST['redirect_to'])) {
$redirect_to = $_REQUEST['redirect_to'];
}
wp_redirect(get_bloginfo('siteurl'));
exit;
break;
//lost lost password
//lost lost password
case 'lostpassword':
case 'retrievepassword':
$http_post = 'POST' == $_SERVER['REQUEST_METHOD'];
if ($http_post) {
$errors = my_retrieve_password();
if (!is_wp_error($errors)) {
$redirect_to = !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
wp_safe_redirect($redirect_to);
exit;
}
}
if (isset($_GET['error']) && 'invalidkey' == $_GET['error']) {
$errors->add('invalidkey', __('Sorry, that key does not appear to be valid.'));
}
$redirect_to = apply_filters('lostpassword_redirect', !empty($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '');
do_action('lost_password');
$user_login = isset($_POST['user_login']) ? stripslashes($_POST['user_login']) : '';
get_header();
?>
<div class="page_heading_me">
<div class="page_heading_me_inner">
<div class="mm_inn"><?php
printf(__("Retrieve Password - %s", $current_theme_locale_name), get_bloginfo('name'));
?>
</div>
</div>
</div>
<!-- ########## -->
<div id="main_wrapper">
<div id="main" class="wrapper"><div class="padd10">
<div class="my_box3">
<div class="padd10">
<div class="box_content">
<div class="login-submit-form">
<form name="lostpass" action="<?php
echo esc_url(site_url('wp-login.php?action=lostpassword', 'login_post'));
?>
" method="post" id="loginform">
//.........这里部分代码省略.........
示例12: do_wp_logout
function do_wp_logout()
{
//
// LOG OUT
// ------------------------------
// used by login.php
// No need to check for newly-created vars after this one, or use any globals, it's all too simple.
if ($this->wpVersion >= 2.5) {
wp_logout();
unset($_COOKIE[AUTH_COOKIE]);
unset($_COOKIE[SECURE_AUTH_COOKIE]);
unset($_COOKIE[LOGGED_IN_COOKIE]);
} else {
wp_clearcookie();
}
do_action('wp_logout');
wp_set_current_user(0, 0);
nocache_headers();
unset($_COOKIE[USER_COOKIE]);
unset($_COOKIE[PASS_COOKIE]);
}
示例13: create_new_user
/**
* Create a new WordPress user with the specified identity URL and user data.
*
* @param string $identity_url OpenID to associate with the newly
* created account
* @param array $user_data array of user data
*/
function create_new_user($identity_url, &$user_data)
{
global $wpdb, $openid;
// Identity URL is new, so create a user
@(include_once ABSPATH . 'wp-admin/upgrade-functions.php');
// 2.1
@(include_once ABSPATH . WPINC . '/registration-functions.php');
// 2.0.4
// use email address for username if URL is from emailtoid.net
$username = $identity_url;
if (null != $_SESSION['openid_login_email'] and strpos($username, 'http://emailtoid.net/') == 0) {
if ($user_data['user_email'] == NULL) {
$user_data['user_email'] = $_SESSION['openid_login_email'];
}
$username = $_SESSION['openid_login_email'];
unset($_SESSION['openid_login_email']);
}
$user_data['user_login'] = $wpdb->escape(WordPressOpenID_Logic::generate_new_username($username));
$user_data['user_pass'] = substr(md5(uniqid(microtime())), 0, 7);
$user_id = wp_insert_user($user_data);
$openid->log->debug("wp_create_user( {$user_data} ) returned {$user_id} ");
if ($user_id) {
// created ok
$user_data['ID'] = $user_id;
// XXX this all looks redundant, see WordPressOpenID_Logic::set_current_user
$openid->log->debug("OpenIDConsumer: Created new user {$user_id} : " . $user_data['user_login'] . " and metadata: " . var_export($user_data, true));
$user = new WP_User($user_id);
if (!wp_login($user->user_login, $user_data['user_pass'])) {
$openid->message = 'User was created fine, but wp_login() for the new user failed. ' . 'This is probably a bug.';
$openid->action = 'error';
$openid->log->err($openid->message);
return;
}
// notify of user creation
wp_new_user_notification($user->user_login);
wp_clearcookie();
wp_setcookie($user->user_login, md5($user->user_pass), true, '', '', true);
// Bind the provided identity to the just-created user
global $userdata;
$userdata = get_userdata($user_id);
$store = WordPressOpenID_Logic::getStore();
$store->insert_identity($user_id, $identity_url);
$openid->action = 'redirect';
if (!$user->has_cap('edit_posts')) {
$redirect_to = '/wp-admin/profile.php';
}
} else {
// failed to create user for some reason.
$openid->message = 'OpenID authentication successful, but failed to create WordPress user. ' . 'This is probably a bug.';
$openid->action = 'error';
$openid->log->error($openid->message);
}
}
示例14: update_home_siteurl
function update_home_siteurl( $old_value, $value ) {
global $wp_rewrite, $user_login, $user_pass_md5;
if ( defined( "WP_INSTALLING" ) )
return;
// If home changed, write rewrite rules to new location.
$wp_rewrite->flush_rules();
// Clear cookies for old paths.
wp_clearcookie();
// Set cookies for new paths.
wp_setcookie( $user_login, $user_pass_md5, true, get_option( 'home' ), get_option( 'siteurl' ));
}
示例15: single_user_login_uid_check
function single_user_login_uid_check()
{
global $wpdb;
$ID = wp_get_current_user();
$logout_url = wp_logout_url(home_url());
$user_uni_uid = $_COOKIE["user_uni_uid" . $ID->user_login . ""];
$sql = "SELECT uni_hash FROM `wp_users` WHERE uni_hash='" . $user_uni_uid . "'";
$getinfo = $wpdb->get_results($sql);
$check_time = $wpdb->get_results("SELECT session_time FROM `wp_users` WHERE user_login='" . $ID->user_login . "'");
if (!is_null($check_time)) {
$time_result = $check_time[0]->session_time;
} else {
$time_result = time() - 2000;
}
if ($getinfo[0]->uni_hash != $user_uni_uid && time() - $time_result < 1800 && is_user_logged_in()) {
wp_clearcookie();
myEndSession();
do_action('wp_logout');
nocache_headers();
$redirect_to = home_url();
wp_redirect($redirect_to);
exit;
} else {
myStartSession();
if (!isset($_SESSION["LAST_ACTIVITY"])) {
$_SESSION["LAST_ACTIVITY"] = time();
} elseif (time() - $_SESSION["LAST_ACTIVITY"] > 120) {
$_SESSION["LAST_ACTIVITY"] = time();
}
$new_time = $_SESSION["LAST_ACTIVITY"];
$sql = "UPDATE `wp_users` set `session_time`='" . $new_time . "' WHERE user_login='" . $ID->user_login . "'";
$wpdb->get_results($sql);
}
}