【发布时间】:2014-08-25 20:04:46
【问题描述】:
我正在尝试在 Woocommerce 中创建一个使用 Ajax 请求加载更多产品的函数。我的想法是创建一个按钮“加载更多产品”来替换 woocommerce 分页并使用 ajax 请求加载第二个第三个等页面。我已经创建了使用 ajax 请求创建加载更多按钮的脚本并且它可以工作,但我正在尝试创建一个使用 ajax 请求检索其余产品的 php 函数。
在我的代码下面创建加载更多按钮:
<?php
$max_num_pages = $wp_query->max_num_pages;
if ($max_num_pages > 1) {
$output .=
'<script type="text/javascript">
var page = 1,
max_page = '.$max_num_pages.'
jQuery(document).ready(function(){
jQuery(".woocommerce-pagination").hide();
jQuery("#woo_load_more").click(function(){
jQuery(this).hide();
jQuery("#spinner").show();
jQuery.ajax({
type: "POST",
url: "http://demo.ecquadro.com/transport/wp-admin/admin-ajax.php",
data: {
action: "wooPagination",
page: page+1,
per_page: 4,
},
success: function(data, textStatus, XMLHttpRequest){
page++;
jQuery(".prova").append(data);
jQuery("#spinner").hide();
if (max_page > page) {
jQuery("#woo_load_more").show();
}
},
error: function(MLHttpRequest, textStatus, errorThrown){
jQuery("#spinner").hide();
jQuery(this).show();
}
});
});
});
</script>
<div class="woo-products-load">
<a href="javascript:void(0);" id="woo_load_more" class=""><span>'.__('Load More Posts', '').'</span></a>
<img id="spinner" src="'.get_template_directory_uri().'/img/loader.gif" style="display: none;">
</div>';
}
echo $output;
?>
知道如何创建一个名为“wooPagination”的函数来加载其余页面吗?
提前致谢。
【问题讨论】:
-
您能准确描述问题所在吗?有什么问题?如果您知道要寻找什么,那么提供帮助会容易得多。
-
您好,感谢您的评论。我的演示商店中有 12 种产品,每页 4 种产品。我想创建一个使用 ajax 调用加载产品第二页和第三页的函数。您可以在此处查看上面的脚本。 demo.ecquadro.com/transport/products 正如您所看到的,ajax 调用返回“0”值,因为我无法创建 php 函数来加载商店第 2 和第 3 页中包含的其余产品。希望你能帮助我,因为我是 woocommerce 新手。谢谢。
标签: php jquery wordpress woocommerce