Задать вопрос
@Mr_Joe

Почему AJAX запросы работают, только когда авторизован?

Привет! Сайт на WP, написал функцию которая возвращает json. В JS написал обработчик, который посылает запрос и выводит результат. И это всё работает, только когда ты на сайте с админкай. Когда ты не авторизован, не работает.
Почему?

function er() {
    date_default_timezone_set('Europe/Moscow');
    $currentTime = date("H:i");
    $list = schedule();
    $id = $list;

    foreach ($list as $key => $val) {
        if(strtotime($currentTime) >= strtotime($key)) {
            $id = $key;
            continue;
        }
        echo json_encode( $list[$id] );
        return 0;
    }
    echo json_encode( $list[$id] );
    return 0;
}

add_action( 'wp_ajax_misha', 'test_function' ); 
add_action( 'wp_ajax_nopriv_misha', 'test_function' ); 
function test_function(){
	er();
	die; // даём понять, что обработчик закончил выполнение
}

var info_title = $('#info-title');
    var info_subtitle = $('#info-subtitle');
    var info_img = $('#info-img');
    setInterval(function(){
        $.ajax({
            url:  'http://www.site.com/wp-admin/admin-ajax.php',
            type: 'GET',
            data: 'action=misha',
            success: function( data ) {
                info_title.text(data[0]);
                info_subtitle.text(data[2]);
                $(info_img).attr("src", data[1]);
                console.log( data );
            },
            dataType:"json"
        });
    }, 60000);
  • Вопрос задан
  • 200 просмотров
Подписаться 2 Простой 4 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы