xmlhttpリクエストを使用して小さなデータ(PHPループ)をロードする方法を解明しようとします。私が使用している機能が完璧に働いているAjaxリクエスト(または同様のJavascriptソリューション)を使用してPHPループをロード
、しかし私は、ファイル「gallery.php」であるだけでPHPのループをロードしたいと思います:
function refreshData(){
var display = document.getElementById("content");
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "<?php echo esc_url(home_url('/')) ?>gallery/");
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send();
xmlhttp.onreadystatechange = function() {
if (this.readyState === 4 && this.status === 200) {
display.innerHTML = this.responseText;
} else {
display.innerHTML = "Loading...";
};
}
}
を私はポストを持っていると私は試してみますよこの投稿にバインドされた画像を読み込む。 gallery.phpのループはここにある:
<?php $images = get_attached_media('image');
foreach($images as $image) { ?>
<div>
<img src="<?php echo wp_get_attachment_url($image->ID,'full'); ?>"/>
</div>
<?php } ?>
私はボタンがXMLHTTPリクエストでクリックされた後の画像で、このループをロードしたいが、私は動的なデータを要求するかの助けが必要なのです。
ありがとうございました。
ありがとう、しかし私はフロントエンドでjQueryを含む多くのものを解体したので、このソリューションを使用することはできません。だからこそ、私はxmlhttpのデータを取得するリクエストを作る方法を理解しようとしています。 – MadMatt
これを使うことができます。このフックと関数を登録して、関数名がget_galleryimage()であればxmlhttpリクエストをそのURL /wp-admin/admin-ajax.php?action=get_galleryimageに送りますあなたがjsでやっていることと一緒に。そして、その機能よりもギャラリーの投稿IDを送信してください。必要に応じてサンプルコードを送信できます –
このソリューションは完璧に機能しました。 – MadMatt