คำถามติดแท็ก ajax

Ajax - หลักของ WordPress ใช้ Ajax เฉพาะในหน้าจอการบริหาร ตัวอย่างเช่น Ajax ใช้สำหรับการอัปเดตทันทีเมื่อคุณทำการกลั่นกรองความคิดเห็นและเมื่อคุณเพิ่มและลบรายการออกจากรายการเช่นหมวดหมู่บล็อกโรลและโพสต์ อาแจ็กซ์ยังเป็นเทคโนโลยีที่อยู่เบื้องหลังฟังก์ชั่นบันทึกอัตโนมัติในหน้าจอแก้ไขโพสต์และหน้า หลายธีมและปลั๊กอินยังใช้ Ajax ตัวอย่างเช่นปลั๊กอินการจัดอันดับโพสต์

2
ฉันสามารถใช้ nonce เดียวกันสำหรับคำร้องขอหลาย ๆ อันในหน้าเดียวกันได้หรือไม่?
หรือนี่เป็นการทำลายจุดประสงค์ของความชั่วซึ่งฉันยอมรับว่าฉันไม่เข้าใจ :) ตัวอย่างเช่นคำขอ ajax สองรายการที่เรียกใช้กับการโหลดหน้าเว็บหรือเมื่อมีการคลิกบางสิ่ง: $.ajax({ type: 'post', url: 'admin-ajax.php', data: { action: 'foo', _ajax_nonce: '<?php echo $nonce; ?>' } }); $.ajax({ type: 'post', url: 'admin-ajax.php', data: { action: 'foo2', _ajax_nonce: '<?php echo $nonce; ?>' } });
13 php  ajax  nonce 

1
วิธีจัดการ ajax call และ JSON ใน wordpress
ฉันมีประเภทโพสต์ที่กำหนดเองที่ฉันต้องการเข้าถึงผ่าน jQuery - ควรใช้ JSON ดังนั้นสิ่งแรกก่อน การสร้างฟังก์ชั่นที่คืนค่า / echos json นั้นง่ายพอ แต่ฉันจะเข้าถึงมันผ่าน jquery ได้อย่างไร อย่างที่ไมค์เขียนในคำถามนี้เขา - เท่าที่ฉันเข้าใจ - วางไว้ในรูท WordPress ซึ่งจะทำให้สามารถเข้าถึงได้โดยใช้ชื่อไฟล์ php - แต่นี่คือการแนะนำหรือไม่ ฉันอยากจะวางไว้ในโฟลเดอร์ปลั๊กอิน ฉันได้ลองอ่าน wordpress codex แต่วิธีการจัดการการโทร ajax ทำให้ฉันสับสนเพราะคุณโพสต์ทุกการโทร ajax ไปที่ admin-ajax.php แม้ว่ามันจะไม่ใช่หน้าผู้ดูแลระบบก็ตาม ใครช่วยกรุณาแก้ไขปัญหาที่ฉันมีให้ตรง /พายุ แก้ไข ปัญหาที่ฉันได้รับคือการเข้าใจวิธีการโทร ajax ใน wordpress รวมถึงสถานที่ที่จะวางโค้ด php และ js ของคุณเพื่อทำ / จัดการการโทร ในคำถามอื่น …
13 jquery  ajax 

4
โหลดสภาพแวดล้อม WordPress ขั้นต่ำ
ฉันสร้างบริการอัพโหลดของฉันเองสำหรับเว็บไซต์ของฉันที่แยกต่างหากจาก WP แต่ใช้ WP เพื่อจัดเตรียมฟังก์ชัน db ระดับต่ำและการตรวจสอบผู้ใช้ ในการทำเช่นนั้นฉันได้รวม wp-load.php ไว้ในสคริปต์หลักของฉัน (Uploadify) แต่การทำเช่นนั้นดูเหมือนว่าจะเติมหน่วยความจำของเซิร์ฟเวอร์ด้วยองค์ประกอบที่ไม่จำเป็น ขอบคุณที่ฉันเห็นข้อผิดพลาดในสคริปต์ของฉันที่ดูเหมือนจะชี้ไปที่ปลั๊กอิน WP ที่ติดตั้ง ฉันจะโหลดเฉพาะคอมโพเนนต์ WP หลักและละเว้นปลั๊กอินได้อย่างไร เป็นไปได้ไหม
12 ajax  uploads 

1
เริ่มต้นตัวแก้ไข TinyMCE / โปรแกรมแก้ไขภาพหลังจากแทรก AJAX
ฉันมีกลุ่มฟิลด์สไตล์ "repeater" ในหน้าตัวเลือกที่กำหนดเอง มีตัวแก้ไขภาพที่ใช้งานอยู่ในสถานะที่ซ่อนอยู่และเมื่อผู้ใช้คลิก "เพิ่มใหม่" แถวทั้งหมดจะถูกโคลน จากนั้นฉันต้องเริ่มต้นโปรแกรมแก้ไขภาพในแถวโคลน รหัสของฉัน: $('.repeater-add-new').click(function(event) { event.preventDefault(); var target = $(this).data('repeater'); $( '#' + target).find('.repeater-row:not(.clone) .repeater-content.in').collapse(); var newRow = $( '#' + target + ' .repeater-row.clone' ).clone().appendTo( '#' + target + ' .repeater-row-wrapper' ).removeClass('clone'); rebuildIndex(target); // Initialize editors if needed newRow.find('.wp-editor-wrap').each(function(index, el) { var ed_id = …
11 ajax  tinymce  editor 

2
เปิด Thickbox ด้วย AJAX รางเนื้อหา
ฉันเพิ่มปุ่มที่กำหนดเองลงในตัวแก้ไข TinyMCE และฉันต้องการเปิด Thickbox ของ WP เมื่อฉันคลิกที่มัน ฉันจะทำให้tb_show()ฟังก์ชั่นโหลดเนื้อหาที่ฉันต้องการด้วย ajax ได้อย่างไร // the ajax add_action('wp_ajax_getTheContent', 'getTheContent'); function getTheContent(){ echo 'weqwtegeqgr'; // <- this should be displayed in the TB die(); } นี่คือรหัสปลั๊กอินสำหรับแก้ไขที่ฉันใช้อยู่: init : function(ed, url) { ed.addButton('do_stuff', { title : 'Do Stuff', image : url + '/icon.gif', onclick : function() …
11 ajax  editor  thickbox 

2
วิธีรับ nonce ที่ไม่ซ้ำสำหรับคำขอ Ajax แต่ละรายการ
ฉันได้เห็นการถกเถียงกันสองสามครั้งเกี่ยวกับการทำให้ Wordpress สร้างความแปลกใหม่ให้กับอาแจ็กซ์ที่ร้องขอ แต่สำหรับชีวิตของฉันฉันไม่สามารถทำให้ Wordpress ทำมันได้ - ทุกครั้งที่ฉันขอสิ่งที่ฉันคิดว่าควรจะเป็นใหม่ ไม่ใช่ฉันได้รับ nonce เดียวกันกลับมาจาก Wordpress ฉันเข้าใจแนวคิดของ nonce_life ของ WP และแม้กระทั่งตั้งค่าเป็นอย่างอื่น แต่นั่นก็ไม่ได้ช่วยฉัน ฉันไม่ได้สร้าง nonce ในวัตถุ JS ในส่วนหัวผ่านการแปลเป็นภาษาท้องถิ่น - ฉันทำในหน้าแสดงผลของฉัน ฉันสามารถทำให้เพจของฉันประมวลผลคำขอ Ajax ได้ แต่เมื่อฉันร้องขอ nonce ใหม่จาก WP ในการติดต่อกลับฉันได้รับ nonce เดียวกันกลับมาและฉันไม่รู้ว่าฉันทำอะไรผิด ... ในที่สุดฉันต้องการ ขยายสิ่งนี้เพื่อให้สามารถมีหลายรายการในหน้าแต่ละรายการมีความสามารถในการเพิ่ม / ลบ - ดังนั้นฉันต้องการโซลูชันที่จะอนุญาตคำขอ Ajax ที่ตามมาหลายรายการจากหน้าเดียว (และฉันควรจะบอกว่าฉันได้ใส่ฟังก์ชั่นทั้งหมดนี้ลงในปลั๊กอินดังนั้น "หน้าจอแสดงผล" ส่วนหน้าจึงเป็นฟังก์ชั่นที่มาพร้อมกับปลั๊กอิน ... ) function.php: …
11 ajax  nonce 

2
ทำไมไม่ลงทะเบียนรหัสย่อถ้า is_admin แดชบอร์ด?
ฉันสังเกตเห็นว่าปลั๊กอินบางตัวเช่นContact-form-7 , Nextgen-galleryหรืออาจเป็นอื่น ๆ นั้นมีคุณสมบัติต่อต้านที่น่าสนใจที่ไม่ได้ลงทะเบียนรหัสย่อเมื่อis_admin()เป็นจริง สิ่งที่เป็นปัญหาคือถ้าคุณต้องการสร้างเนื้อหาแบบไดนามิก (ซึ่งอาจมีรหัสย่อ) จาก ajax และใช้วิธี wp "ถูกต้อง" ในการทำมัน admin-ajax.php เป็นไปไม่ได้ที่จะไม่มี WP_ADMIN เป็นจริง ดูบรรทัดแรกของ admin-ajax.php: define( 'DOING_AJAX', true ); if ( ! defined( 'WP_ADMIN' ) ) { define( 'WP_ADMIN', true ); } ตอนนี้ดูเหมือนว่ามีส่วนขยาย PHP ที่จะช่วยให้คุณยกเลิกการตั้งค่าคงที่ที่กำหนด (แฮ็ค) หรืออาจมีวิธีที่จะยุ่งกับระบบ WP_Screen ที่ไม่มีเอกสารและ$GLOBALS['current_screen']เพื่อให้is_admin()ฟังก์ชั่นกลับเท็จ? วิธีแก้ปัญหาที่ใช้งานได้มากที่สุดดูเหมือนจะโพสต์ไปยังหน้าเว็บหรือรูทไซต์ มันเป็นเรื่องปกติสำหรับปลั๊กอินที่จะลงทะเบียนรหัสย่อของพวกเขาเมื่อis_admin()เป็นเท็จ? ถ้าเป็นเช่นนั้นฉันไม่สามารถหาเอกสารหรือเหตุผลอื่นใดนอกเหนือจากนั้นอาจเป็นการปรับให้เหมาะสมก่อนเวลาอันควร
10 ajax  dashboard 

1
การใช้ jQuery เพื่อลบข้อมูลที่เก็บไว้ใน wp_options
ฉันสงสัยว่าใครสามารถให้คำแนะนำฉันเพิ่มเติมเกี่ยวกับปัญหาของฉัน ส่วนหนึ่งของปลั๊กอินของฉันเก็บไฟล์บันทึกสำหรับการดีบัก ฉันได้แสดงให้พวกเขาประสบความสำเร็จใน (div # log) ในหน้าผู้ดูแลระบบของฉันโดยใช้ jquery และ wp_localise_script ฉันมีปุ่มเพื่อลบบันทึกเหล่านี้ แต่ฉันไม่แน่ใจว่าจะดำเนินการอย่างไร ฉันมีความรู้สึกว่าอาแจ็กซ์อาจมีประโยชน์ที่นี่ แต่ไม่แน่ใจว่าจะเริ่มจากตรงไหน นี่คือส่วนที่เกี่ยวข้องในรหัสของฉัน: admin_enqueue_scripts (การกระทำ) $args = array(get_option('wow_tweets_log'));//log files fetched from wp_options table wp_enqueue_script('wow_tweet');//registered earlier on with jQuery dependency wp_localize_script('wow_tweet', 'wow_vars', $args); หน้าผู้ดูแลระบบ <tr><th scope="row"><strong>Debugging</strong></th><td> <div id="debug" class="button-primary">Debug</div><!--debug button shows logs--> <div id="hide_debug" class="button-secondary">Hide</div><!--debug button hides logs--> <div …
10 jquery  ajax  actions  options 

3
วิธีทำให้ความคิดเห็นทำงานสำหรับโพสต์ที่โหลดต่อ Ajax
ฉันกำลังโหลดโพสต์เดียวโดยใช้ Ajax ในขณะที่การโหลดโพสต์ใช้งานได้ฉันไม่สามารถรับความคิดเห็นในการโหลด นี่คือรหัสของฉัน: จาวาสคริปต์ของฉันที่จะโหลดโพสต์: <script> $(".view_post").click(function(e) { e.preventDefault(); postid = $(this).attr("rel"); $.ajax({ url:"/wp-admin/admin-ajax.php", type:'POST', data:'action=posts_open&postid='+postid, success: function(html){ $("#b_contentwrapper").empty(); $("#b_contentwrapper").append(html); } }); }); </script> จาวาสคริปต์จะผ่านไปยัง functions.php ด้วยวิธีนี้: function implement_posts() { //<?php get_template_part( 'loop', 'single' ); die(); } ตอนนี้นี่คือรหัสที่ฉันโหลดเนื้อหาโพสต์ของฉัน: <?php $linkid = "p=".$_POST["postid"]; $posti = new WP_Query($linkid); $posti->the_post(); echo "Time: "; …
10 posts  comments  ajax 

3
ผู้ดูแลระบบขออาแจ็กซ์กลับ 0 ด้วยตาย ()
ดังนั้นฉันใช้การกำหนดค่านี้สำหรับการโทร AJAX ในพื้นที่การดูแล ( เช่นนี้ ): add_action( 'admin_head', 'ajaxPerNgg' ); function ajaxPerNgg(){ ?> <script type="text/javascript" > jQuery(document).ready(function() { jQuery("#message").remove(); jQuery("#errore a#attivo").click( function(){ var data = { action: 'my_action' }; jQuery.post(ajaxurl, data, function(response) { if(response == "attivato") jQuery("#errore a#inattivo").attr("id","completato").html("Attivato"); else jQuery("#errore a#inattivo").attr("id","attivo").html("Attivalo ora"); }); } ); }); </script> <?php } add_action('wp_ajax_my_action', …
10 wp-admin  ajax 

2
ทำไมต้องใช้ admin-ajax.php และมันทำงานอย่างไร
ajax ของฉันเรียกใช้ข้อมูล json ได้ดีเหมือนฟังก์ชั่นนี้ php: add_action( 'wp_ajax_nopriv_load-filter', 'prefix_load_cat_posts' ); add_action( 'wp_ajax_load-filter', 'prefix_load_cat_posts' ); function prefix_load_cat_posts () { //get data here } javascript: var ajaxurl = 'http://'+window.location.host+'/wp-admin/admin-ajax.php'; jQuery.ajax({ type: 'POST', url: ajaxurl, etc. ฉันมี 2 คำถาม 1) ทำไมต้องใช้ admin-ajax.php แทนที่จะเข้ารหัส json ของคุณในไฟล์แยกเช่นthemes/example/json.phpและเข้ารหัสข้อมูลของคุณที่นั่น? 2) admin-ajax.php ทำงานอย่างไร ฉันไม่เข้าใจมากจากไฟล์นั้น มันโหลดฟังก์ชั่นทั้งหมดเพื่อให้คุณพร้อมใช้งานหรือไม่ ขอบคุณ!
9 ajax 

1
การบันทึก data-URI ไปยังไลบรารีสื่อ
ฉันมีปลั๊กอิน TinyMCEที่สร้างภาพ PNG โดยใช้HTMLCanvasElement.toDataURL()( MDN ) ขณะนี้ฉันเพิ่งแสดงไว้ที่แบ็กเอนด์โดยใส่ data-URI ลงในแท็กรูปภาพ แต่ฉันต้องการเพิ่มสิ่งเหล่านี้ใน WordPress Media Library อะไรคือวิธีที่ดีที่สุด (เช่นเข้ากันได้กับมาตรฐานวีไอพี) ของการอัปโหลดภาพที่ต่อเนื่องกันเป็น base64-encoded data-URI นี่คือฟังก์ชั่นอัพโหลดของฉัน: <?php /** * AJAX callback that inserts chart as attachment into the WP database */ public static function insert_axis_attachment() { // Get config $axis_config = json_decode( $_POST['axisConfig'] ); if ( ! …

2
ใช้ AJAX ในรหัสย่อ
ฉันมีรหัสต่อไปนี้เพื่อย่อเพื่อแสดงคำพูดแบบสุ่ม คำถาม: วิธีการทำปุ่มแสดงคำพูดแบบสุ่มใหม่? ฉันหมายความว่ามันจะกดปุ่มและแสดงคำพูดใหม่ (โดยไม่ต้องรีเฟรชหน้าแน่นอน) function random_quote() { // quotes file $array = file("/path to txt file"); // generate a random number between 0 and the total count of $array minus 1 // we minus 1 from the total quotes because array indices start at 0 rather than 1 by …

3
ทำให้ AJAX ของฉันขับเคลื่อนการรวบรวมข้อมูล WordPress
ฉันอ่านข้อความต่อไปนี้และลองใช้รูปแบบนี้กับเว็บไซต์ที่ใช้ WordPress: http://code.google.com/intl/fr-CA/web/ajaxcrawling/index.html หากคุณเยี่ยมชมเว็บไซต์ของฉันที่http://www.visualise.ca/คุณจะเห็นว่ามันโหลดโพสต์ในหน้าแรกและ URL จะกลายเป็นhttp://visualise.ca/#!/anne-au-cherryเมื่อสิ่งนี้ โหลดโพสต์แล้ว เวอร์ชันเดียวกันของเนื้อหาเดียวกันพร้อมใช้งานสำหรับโปรแกรมรวบรวมข้อมูลที่http://visualise.ca/anne-au-cherryแต่หากผู้เข้าชมที่ใช้เบราว์เซอร์เข้าชมเขาจะถูกเปลี่ยนเส้นทางไปยังhttp://visualise.ca/#! / anne-au-cherry (ทำได้ด้วย javascript) เพื่อให้โปรแกรมรวบรวมข้อมูลมีความจำเป็น?_escaped_fragment_=ฉันใช้แฮ็ค WordPress ที่ฉันพบในเน็ต: http://www.wordpress-fr.net/support/sujet-54810-add-action-parse-requestและตอนนี้ GoogleBot สามารถดูเนื้อหาของหน้าที่ขับเคลื่อน AJAX ของฉัน ฉันคิดว่ามันทำทั้งหมดแล้ว แต่เมื่อฉันวางลิงค์โพสต์ไปที่ Facebook (เช่น) มันไม่สามารถอ่านเนื้อหาของหน้าดังนั้นฉันเดาว่าเว็บไซต์ของฉันไม่เคารพรูปแบบที่อธิบายไว้ในเอกสารของ Google เพราะ Facebook สนับสนุน (ถ้าคุณวางhttp : //twitter.com/#! / gablabelleมันจะทำงานได้) ดังนั้นเนื่องจากฉันใช้ปลั๊กอิน jQuery.address เพื่อรับ hashbang ของฉัน (#!) ฉันไปที่เว็บไซต์ของพวกเขาและดาวน์โหลดไฟล์ตัวอย่างเพื่อดูความแตกต่างระหว่างไฟล์และของฉันและรู้ว่าพวกเขาอาจใช้ฟังก์ชัน php เพื่อสร้างสแนปชอต HTML ที่จำเป็น: https://github.com/bartaz/jquery-address/blob/master/samples/crawling/index.phpเพราะนี่คือเหตุผลที่ฉันเดาว่า Facebook ไม่สามารถอ่านของฉันได้ <?php error_reporting(E_ALL …
9 ajax 

1
อัปโหลดภาพขนาดย่อของโพสต์จากส่วนหน้า
เราต้องการให้ผู้ใช้สามารถอัปโหลดภาพขนาดย่อโพสต์เมื่อแก้ไขโพสต์ สิ่งนี้จะเกิดขึ้นได้อย่างไร ฉันคิดว่ามันจะใช้ประโยชน์จากฟังก์ชั่น ajax ของ wordpress ความคิดใด ๆ มหัศจรรย์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.