Wordpress payı adı önlemek için eklentisi

4 Cevap php

Wordpress için (farklı bir yerde aynı anda ip adresi veya giriş dayalı) username paylaşımı geçersiz bir yolu var mı? Sadece IP adresini takip ve zaman giriş için bir eklenti varsa, çok ince olmalıdır. Teşekkürler

4 Cevap

Eğer functions.php veya bir eklenti dosyasına bu ekleyebilirsiniz.

    //set the most current user to have a cookie matching a unique value    
add_action("set_logged_in_cookie", "one_cookie", 10, 5);
function one_cookie($logged_in_cookie, $expire, $expiration, $user_id, $logged_in) {
    $secure = apply_filters('secure_logged_in_cookie', false, $user_id, is_ssl());
    $cookie = uniqid();
    update_user_meta($user_id, "one_cookie", $cookie);
    setcookie("one_cookie", $cookie, $expire, COOKIEPATH, COOKIE_DOMAIN, $secure, true);
    return;
}
//check requests from users to ensure they have this cookie
add_action("init", "check_one_cookie", 1);
function check_one_cookie() {
    $user = wp_get_current_user();
    if ($user->ID == 0) { return; }
    $storedcookie = get_user_meta($user->ID, 'one_cookie');
    print_r(array('$storedcookie'=>$storedcookie));
  if (!empty($storedcookie) && $_COOKIE['one_cookie'] != $storedcookie) {
    /*if the user doesn't have the same cookie as we have stored, log them out.*/
        wp_logout();
        //auth_redirect() may have a more desired effect
    }
}
//unset a users cookie
add_action('wp-logout', 'one_cookie_logout');
function one_cookie_logout() {
    setcookie("one_cookie", "", 1);
}

Bu olsa sadece tek yönde çalışacaktır. Her zaman yeni bir giriş o eski bir kilitlenir işlenir. Eğer bir kullanıcı vs bir lokavt kırmak, böylece muhtemelen çok daha fazla kod yazmak gerekir ki ters çevirmek isterseniz

Ayrıca, 'wp-includes/pluggable.php' in uygun işlevleri yerine bunu başarabilir

WordPress 3.1 ile çalışmak için yukarıdaki kodu test ettik.

3.6.1 test ve iyi çalışıyor, işlevi "check_one_cookie" dışında böyle güncelleştirilmesi gerekmektedir:

add_action("init", "check_one_cookie", 1);
    function check_one_cookie() {
    $user = wp_get_current_user();
    if ($user->ID == 0) { return; }
    $storedcookie = get_user_meta($user->ID, 'one_cookie');
    // print_r(array('$storedcookie'=>$storedcookie));
    if (!empty($storedcookie) && $_COOKIE['one_cookie'] != $storedcookie[0]) {
    /*if the user doesn't have the same cookie as we have stored, log them out.*/
        wp_logout();
        //auth_redirect() may have a more desired effect
    }
}

$storedcookie should be relaced by $storedcookie[0] (and do not forget to replace the COOKIEPATH, COOKIE_DOMAIN by your own data)

Sorunuz çok net değil. Eğer böyle bir şey istiyorsun LDAP?

Ben bu kullanılır, ancak IP Logger WordPress plugin umut verici görünüyor ettik. Bu günlüğü ve yönetim özellikleri bir yeri vardır.