這裏自定義字段使用AJAX值是情景:獲得WordPress的
- 有幾個產品類別(產品是指在 特定類別的職位)
- 每個產品(後)有幾個圖片
- 在前端(我加入 自定義字段管理吧),產品將顯示所有一起
- 該網頁上會出現一個像滑塊在頁腳
- 點擊每個產品的名稱,將相應地改變滑塊圖像 所點擊產品
因此,所有我需要的是得到對應單擊產品的自定義字段值。是否有可能使用AJAX請求來做到這一點?這樣我就可以管理所有這些過程而不需要回帖。
謝謝。
這裏自定義字段使用AJAX值是情景:獲得WordPress的
因此,所有我需要的是得到對應單擊產品的自定義字段值。是否有可能使用AJAX請求來做到這一點?這樣我就可以管理所有這些過程而不需要回帖。
謝謝。
這很簡單。 Ofjourse感謝Rajat Modi在ajax的幫助。在這裏你去:
在模板文件中這個到functions.php中添加:
wp_enqueue_script('ajax-script', get_stylesheet_directory_uri().'/js/myajax.js', array('jquery'), 1.0); // jQuery will be included automatically
// get_template_directory_uri() . '/js/script.js'; // Inside a parent theme
// get_stylesheet_directory_uri() . '/js/script.js'; // Inside a child theme
// plugins_url('/js/script.js', __FILE__); // Inside a plugin
wp_localize_script('ajax-script', 'ajax_object', array('ajaxurl' => admin_url('admin-ajax.php'))); // setting ajaxurl
add_action('wp_ajax_ajax_action', 'ajax_action_stuff'); // ajax for logged in users
add_action('wp_ajax_nopriv_ajax_action', 'ajax_action_stuff'); // ajax for not logged in users
function ajax_action_stuff()
{
$post_id = $_POST['post_id']; // getting variables from ajax post
// doing ajax stuff
$custom_fields = get_post_custom($post_id);
$imageurlset = $custom_fields['images'];
$urlstring = $imageurlset[0];
$imageurl = explode(',', $urlstring);
//update_post_meta($post_id, 'post_key', 'meta_value');
exit(json_encode($imageurl)); // stop executing script
}
創建並添加以下代碼爲 「/js/script.js」:
$(document).ready(
function() {
$('.prduct_name').click(function() {
$('.spcl_content').find('.prduct_name').removeClass("selected");
$(this).addClass("selected");
var ithis = $(this);
$.post(ajax_object.ajaxurl, {
action: 'ajax_action',
post_id: ithis.attr("id")
}, function(data) {
var number_of_images = data.length;
//console.log(data);
var image_link="";
for(var i=0; i<number_of_images; i++)
{
var image_url = data[i];
image_link = image_link+'<li><a href="'+image_url+'" rel="scroller" target="temp_win"><img src="'+image_url+'"/></a></li>'
}
//console.log(image_link); // alerts 'ajax submitted'
var starting='<div class="wt-scroller"><div class="prev-btn"></div><div class="slides"><ul class="slider_mania">';
var ending='</ul></div><div class="next-btn"></div><div class="lower-panel"></div></div>';
var total=starting+image_link+ending;
//console.log(total);
$(".container_carol").html(total).fadeIn("slow");
},"json");
return false;
});
我希望現在很清楚。再次感謝我的朋友的回覆。祝你有美好的一天。 :)
我的情況是有點不同,那麼你。我有一個關於這個鏈接的問題 - > http://stackoverflow.com/questions/14416409/wordpress-custom-metabox-input-value-with-ajax你能回答我嗎 – zxprince
我還沒有經驗的WordPress,但我可以告訴你的AJAX的例子。
據我所知,你必須調用阿賈克斯函數點擊相關的帖子或產品是這樣的。
<script>
jQuery(document).ready(function() {
jQuery("#PRODCUTID").click(function() {
jQuery.ajax({
type : "POST"
,url :"YOUR_URL_ON_WHICH_YOU_PUT_LOGIC_TO_FETCH_IDS_FOR_SLIDER"
,data :"CLICKED_PRODUCT_ID="+CLICKED_PRODUCT_ID // this the variable which will be posted and will find it (particular URL which you passed) on the controller action or in view file
,success : function(data){
//YOUR CODE HERE WHICH IS REPLACING PRODUCT ID
}
,beforeSend: function(html){
//some kind of loader or text mean while data is waiting for the response
},
});
})
})
</script>
希望這將有助於並隨時爲AJAx請求提出任何要求。
簡單的請求一個ajax調用點擊項目名稱或放一些代碼剪斷並告訴我們你試過了什麼? –
你好,謝謝你的回覆。我還沒有嘗試過任何東西。我沒有得到一個起點。所有我知道的是「admin-ajax.php」管理所有的ajax請求。你能舉個例子嗎? –
我不會在文字按下exp,但我會找出一些東西,並會嘗試將一些ccode剪下來,但您可以嘗試通過簡單的調用jqueyy函數和ajax請求url在您的手中,這不是neccesaay使用admin_ajax.php whaetever網址你會提出請求必須去那個頁面。任何希望有一些聰明的詞新聞開發人員將幫助你肯定 –