Ben üzerinde çalışıyorum bir site için özel bir sayfalama oluştururken Ben benzer bir sorunu içine koştu.
Ben functions.php oluşturulan global değişken 0'a tanımlanmış ve kurulmuştur. Benim javascript hiçbir sorun çıktı bu değer olabilir Karsten yukarıda özetlenen @ yöntemini kullanarak. Sorunu ben başlangıçta PHP dosyası içinde 0'a set genel değişkeni güncelleme ile oldu.
İşte benim geçici çözüm (hacky biliyorum?!) Ama sıkı bir süre aşağıdaki eserlerini bir saat uğraştıktan sonra:
Inside archive-episodes.php:
<script>
// We define the variable and update it in a php
// function defined in functions.php
var totalPageCount;
</script>
Inside functions.php
<?php
$totalPageCount = WP_Query->max_num_pages; // In my testing scenario this number is 8.
echo '<script>totalPageCount = $totalPageCount;</script>';
?>
Basit tutmak, ben uyarının üzerinden bir $ajax.success geri arama totalPageCount değişken çıkarılırken edildi.
$.ajax({
url: ajaxurl,
type: 'POST',
data: {"action": "infinite_scroll", "page_no": pageNumber, "posts_per_page": numResults},
beforeSend: function() {
$(".ajaxLoading").show();
},
success: function(data) {
//alert("DONE LOADING EPISODES");
$(".ajaxLoading").hide();
var $container = $("#episode-container");
if(firstRun) {
$container.prepend(data);
initMasonry($container);
ieMasonryFix();
initSearch();
} else {
var $newItems = $(data);
$container.append( $newItems ).isotope( 'appended', $newItems );
}
firstRun = false;
addHoverState();
smartResize();
alert(totalEpiPageCount); // THIS OUTPUTS THE CORRECT PAGE TOTAL
}
O olabilir gibi olun, ben bu başkalarına yardımcı olur umarım! Herkes bir "az-hacky" sürümünü ya da en iyi uygulama örneği varsa ben bütün kulaklar değilim.