私は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; ?>
このエラーの原因は、WordPressシステムにロードせずにファイルをロードしているため、wp_query()が存在しないことです。
クイックフィックスは以下のとおりです。
include("../../../wp-load.php");
< - ワードプレスファイルの場所を推測します。
phpファイルの先頭にあります。
これを処理する正しい方法はあなた自身の代わりにWPのadmin-ajax.phpファイルを使うことです。このコーデックスページを参照してください。
http://codex.wordpress.org/AJAX_in_Plugins#Ajax_on_the_Viewer-Facing_Side
コードをプラグインに入れるのではなく、単にfunctions.phpファイルに入れるだけです。