Ajax не определяет, является ли клиент администратором/пользователем WordpressPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Ajax не определяет, является ли клиент администратором/пользователем Wordpress

Сообщение Anonymous »

У меня есть метод PHP на стороне сервера, который вызывается (ajax/jquery) и должен выводить другой результат, если вызывающий абонент (браузер) вошел в систему как администратор WordPress или просто посетитель.
Пробывал разные вещи, в том числе
  • на стороне сервера: is_user_logged_in() : не возвращает true, даже если администратор вошел в систему
    < li>клиентская сторона: document.body.classList.contains('logged-in'): возвращает true, даже если вход не выполнен
Возможно, файл cookie или вход в WordPress нужно передать токен? или другое?
Мысли?
Пробовал несколько вещей, включая:
  • сторона сервера: is_user_logged_in(): не возвращает true, даже если администратор вошел в систему
    клиентская сторона: document.body.classList.contains('logged-in'): возвращает true, даже если вход не выполнен< /li>
var form_data = new FormData();


form_data.append('action', 'ajax_custom_request_general');

form_data.append('ajax_request_id', 'getuserinfo' );


jQuery.ajax

(

{

ajaxurl: 'https://www.example.com/wp-admin/admin-ajax.php',

url: 'https://www.example.com/wp-admin/admin-ajax.php',

type: 'post',

contentType: false,

processData: false,

data: form_data,

success: function (response) 

{

alert("success"+response+"[end]");

},  

error: function (response) 

{

alert("error"+response+"[end]");

}


}

);

СЕРВЕР:
function ajax_custom_request_general()

{

$result = "";

if ( isset($_REQUEST) )

{

$_field_ajax_request_id = $_REQUEST['ajax_request_id'];

$_field_ajax_request_id = trim($_field_ajax_request_id);


$result = "ERR[no request specified]".'='.$_field_ajax_request_id;


if( $_field_ajax_request_id == 'getuserinfo' )

{


if ( is_user_logged_in() ) // DOES NOT WORK

{

$result = '1';

}

else

{

$result = '0';

}


if (isset($_SESSION['user_id'])) // DOES NOT WORK

{

$result = '1';

}

else

{

$result = '0';

}


}


echo $result;


}


// Always die in functions echoing ajax content

die();

}

add_action( 'wp_ajax_ajax_custom_request_general', 'ajax_custom_request_general' );

add_action( 'wp_ajax_nopriv_ajax_custom_request_general', 'ajax_custom_request_general' );


Подробнее здесь: https://stackoverflow.com/questions/791 ... admin-user
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»