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»