2013-06-23 64 views

回答

4

你可以用JavaScript代碼在PHP代碼之間像下面

<script> 
$('#checkLogin').click(function() { 
    <?php if (!is_user_logged_in()): ?> 
    alert('Please login to access this page'); 
    location = 'http://www.example.com'; 
    <?php else: ?> 
    alert('You are logged in'); 
    <?php endif; ?> 
}); 
</script> 
+0

但這隻發生在我點擊一個div – user2469440

+0

@ user2469440 - 你是什麼意思?你可以做''稍後再使用它:'if(loggedIn){/ * do stuff * /} else {/ * redirect * /}'。 – Joe

+0

也許我做錯了這是我在想什麼︰我有一個div onclicked將更新MySQL表,所以我已經存儲,如果有一個用戶或沒有,但是當我點擊該div時,我仍然想要做的MySQL更新。所以我雖然不得不調用一個可以執行mysql更新的javascript函數。 – user2469440

2

到functions.php

function check_login() { 
    $return['loggedin'] = false; 
    if (is_user_logged_in()) { 
     $return['loggedin'] = true;  
    } 
    echo json_encode($return); 
    die(); 
} 
add_action('wp_ajax_check_login', 'check_login'); 
add_action('wp_ajax_nopriv_check_login', 'check_login'); 

添加此添加到您的自定義JS代碼

$.ajax({ 
    url : YOUR_AJAX_URL, // "/wp-admin/admin-ajax.php" 
    type : "GET", 
    dataType : "json", 
    cache : false, 
    data : { 
     action : 'check_login' 
    }, 
    success : function (json) { 
     if (json.loggedin) { 
      alert("Loggedin"); 
     } 
    } 
});