admin-ajax.php
वर्डप्रेस AJAX एपीआई का हिस्सा है , और हाँ, यह बैकएंड और फ्रंट दोनों से अनुरोधों को संभालता है। यहाँ मैं अपने सवाल के लिए क्या समझ रहा हूँ:
2) कैसे काम करता है admin-ajax.php?
के लिए तर्क आप यहां देख सकते हैं।
यह मानता है कि आप पहले से ही जानते हैं कि जावास्क्रिप्ट को कैसे बनाया जाता है, आदि।
जावास्क्रिप्ट टुकड़ा:
jQuery(document).ready(function($) {
// We'll pass this variable to the PHP function example_ajax_request
var fruit = 'Banana';
// This does the ajax request
$.ajax({
url: ajaxurl,
data: {
'action':'example_ajax_request',
'fruit' : fruit
},
success:function(data) {
// This outputs the result of the ajax request
console.log(data);
},
error: function(errorThrown){
console.log(errorThrown);
}
});
});
PHP टुकड़ा:
function example_ajax_request() {
// The $_REQUEST contains all the data sent via ajax
if ( isset($_REQUEST) ) {
$fruit = $_REQUEST['fruit'];
// Let's take the data that was sent and do something with it
if ( $fruit == 'Banana' ) {
$fruit = 'Apple';
}
// Now we'll return it to the javascript function
// Anything outputted will be returned in the response
echo $fruit;
// If you're debugging, it might be useful to see what was sent in the $_REQUEST
// print_r($_REQUEST);
}
// Always die in functions echoing ajax content
die();
}
add_action( 'wp_ajax_example_ajax_request', 'example_ajax_request' );
// If you wanted to also use the function for non-logged in users (in a theme for example)
add_action( 'wp_ajax_nopriv_example_ajax_request', 'example_ajax_request' );
1) थीम / उदाहरण / json.php जैसी किसी अलग फ़ाइल में अपने जोंस को एन्कोडिंग करने के बजाय एडमिन-अजाक्स.एक्सपी का उपयोग क्यों करें और वहां अपना डेटा एनकोड करें?
यह मददगार हो सकता है। Ajax अनुरोधों के लिए कस्टम-पेज ajax.php बनाम कस्टम पेज टेम्पलेट
themes/example/json.php
एक प्रमुख सुरक्षा भेद्यता विचार किया जाना चाहिए