enexoonoma
  • 0
Новичок

Не удается получить доступ к функциям WordPress в файле, вызываемом через Ajax?

  • 0

Я пытаюсь перезагрузить свежие сообщения с помощью jQuery. Насколько я знаю, я не могу перезагрузить содержимое div внутри страницы, поэтому перезагружаю файл в этот div.

Проблема в том, что мой загруженный файл выдает фатальную ошибку: вызов неопределенной функции wp_query()

Как я могу реализовать функции для вновь созданного файла внутри каталога темы, чтобы он работал правильно?

Это мой jquery

<script language="JavaScript">
$(function() {
    var SANAjax = function(){

    }
    setInterval(SANAjax, 15000 );
});
</script>

И это то, что у меня есть reloadhomeposts.php (хотя я удалил контент)

<?php $recent = new WP_Query("cat=3,4,5&showposts=10"); while($recent->have_posts()) : $recent->the_post();?>
.
.
.
<?php endwhile; ?>
Share
  1. Причина этой ошибки в том, что вы загружаете файл без загрузки в систему WordPress, поэтому wp_query() не существует.

    Быстрое исправление заключается в следующем:

    include("../../../wp-load.php"); <— угадывание местоположения файла wordpress.

    в верхней части файла php.

    • 0
  2. Правильный способ справиться с этим — использовать файл WP admin-ajax.php вместо вашего собственного. См. эту страницу Кодекса:

    http://codex.wordpress.org/AJAX_in_Plugins#Ajax_on_the_Viewer-Facing_Side

    Вместо того, чтобы помещать код в плагин, просто поместите его в свой файл functions.php.

    • 0

Оставить ответ

You must login to add an answer.