簡體   English   中英

將自定義Cookie添加到Wordpress

[英]Adding Custom Cookie To Wordpress

嗨,我對wordpress,php和所有這些編輯工作還很陌生。 我想在身份驗證時使用名稱“ xxx”和值“(currentusername)”向wordpress添加新的cookie。 我已經閱讀了http://wptheming.com/2011/04/set-a-cookie-in-wordpress/ 我將所需的代碼添加到我的代碼的functions.php中,但是我不知道如何調用它,以便將logginned的currentusername添加到cookie中。 提前致謝

這是我插入在functions.php中的另一個網站上的代碼

function set_newuser_cookie() {
if (!isset($_COOKIE['sitename_newvisitor'])) {
    setcookie('sitename_newvisitor', 1, time()+1209600, COOKIEPATH, COOKIE_DOMAIN, false);
}

} add_action('init','set_newuser_cookie');

碰到這個-我建議不要添加新的cookie,相反,我會劫持(利用)當前的cookie,並讓WP為您管理它。 另外,WP中的可用鈎子允許使用WP功能實現非常干凈和緊密的代碼-嘗試以下代碼段-我在注釋中添加了詳細信息:

function custom_set_newuser_cookie() {
    // re: http://codex.wordpress.org/Function_Reference/get_currentuserinfo
    if(!isset($_COOKIE)){ // cookie should be set, make sure
        return false; 
    }
    global $current_user; // gain scope
    get_currentuserinfo(); // get info on the user
    if (!$current_user->user_login){ // validate
        return false;
    }
    setcookie('sitename_newvisitor', $current_user->user_login, time()+1209600, COOKIEPATH, COOKIE_DOMAIN, false); // change as needed
}
// http://codex.wordpress.org/Plugin_API/Action_Reference/wp_login
add_action('wp_login', 'custom_set_newuser_cookie'); // will trigger on login w/creation of auth cookie
/**
To print this out
if (isset($_COOKIE['sitename_newvisitor'])) echo 'Hello '.$_COOKIE['sitename_newvisitor'].', how are you?';
*/

是的,為此代碼使用functions.php。 祝好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM