我正在使用AJAX和WordPress来填充模态窗口。这个想法如下:
id
存储在HTML属性中,然后我通过AJAX发送到服务器。functions.php
文件中的函数内执行。 See the documentation。我遇到的问题是如何(如果可能的话)我可以在我的主题的另一个模板中调用此函数。基本上我想从这个查询中检索数据并填充一个特定的模板。但是,我试图通过使用不同的简单方法(创建全局变量,返回数组等)来调用它,但我无法获得预期的结果。我最终做的是从服务器检索此查询的数据,并通过替换动态值来使用JS构建模式。但是,这不是一个好的解决方案,我试图找到一种更简单,更有效的方法。
这是我正在使用的功能:
add_action( 'wp_ajax_product_categories_list', 'product_categories_list_info' );
add_action( 'wp_ajax_nopriv_product_categories_list', 'product_categories_list_info' );
function product_categories_list_info () {
$term_id = $_POST['id'];
$args = array(
'post_type' => 'product',
'tax_query' => array(
array(
'taxonomy' => 'product_categories',
'terms' => $term_id
)
)
);
$product_list = new WP_Query($args);
if ( $product_list -> have_posts() ) {
while ( $product_list -> have_posts() ) {
$product_list -> the_post();
$product_title = get_the_title();
$product_id = get_the_id();
$product_featured_image= the_field('product_featured_image', $product_id);
}
}
wp_reset_postdata();
}
所以,我想获取上面变量的值,并在另一个模板中使用它们。