คำถามติดแท็ก wp-api

4
ซ่อนจุดสิ้นสุด WordPress REST API v2 จากการดูสาธารณะ
ฉันต้องการเริ่มใช้WordPress REST API v2เพื่อค้นหาข้อมูลจากเว็บไซต์ของฉัน ฉันสังเกตเห็นว่าเมื่อฉันเยี่ยมชม URL ปลายทางโดยตรงฉันสามารถดูข้อมูลทั้งหมดแบบสาธารณะ ฉันเคยเห็นด้วยเช่นกันว่าบทเรียนจำนวนมากพูดถึงการใช้เซิร์ฟเวอร์ทดสอบหรือเซิร์ฟเวอร์ในพื้นที่มากกว่าในเว็บไซต์ คำถามของฉันคือ: สิ่งนี้มีไว้เพื่อใช้กับไซต์ที่ผลิตหรือไม่ มีความเสี่ยงด้านความปลอดภัยหรือไม่ที่จะอนุญาตให้ทุกคนสามารถดูจุดปลายได้เช่น /wp-json/wp/v2/users/ที่แสดงให้ผู้ใช้ทุกคนลงทะเบียนกับเว็บไซต์หรือไม่ เป็นไปได้หรือไม่ที่จะอนุญาตให้ผู้ใช้ที่ได้รับอนุญาตเท่านั้นเข้าถึงจุดปลายได้ ฉันต้องการตรวจสอบให้แน่ใจว่าฉันได้ปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับความปลอดภัยดังนั้นเคล็ดลับใด ๆ จะเป็นประโยชน์ เอกสาร APIพูดถึงการตรวจสอบ แต่ผมไม่แน่ใจว่าวิธีการป้องกัน URL จากการเข้าถึงโดยตรง คนอื่น ๆ มักจะตั้งค่าข้อมูลนี้ให้เข้าถึงได้โดยแอปพลิเคชันภายนอกโดยไม่เปิดเผยข้อมูลมากเกินไปหรือไม่
15 http  wp-api  rest-api 

6
รับเมนูการนำทาง WP จาก REST API V2
ฉันพยายามรับเมนูการนำทางจากการตอบกลับ JSON โดยใช้ปลั๊กอินWP REST API v2 ไม่มีส่วนขยายปลั๊กอินเมนูนำทางสำหรับ REST API v2แต่สำหรับ V1 เท่านั้น จากประเภทโพสต์ WordPress ของ codex ฉันได้เรียนรู้ว่าเมนูนำทางนั้นถือว่าเป็นประเภทโพสต์ จากRest API Docนี่คือวิธีที่เราได้รับโพสต์ประเภท: GET http://demo.wp-api.org/wp-json/wp/v2/types/<type> ฉันพยายามทำให้เป็นเช่นนั้น: URL : http://localhost/wptest/wp-json/wp/v2/types/nav_menu_item ฉันได้รับข้อผิดพลาด 403 {"code":"rest_cannot_read_type","message":"Cannot view type.","data":{"status":403}} เซิร์ฟเวอร์เข้าใจคำขอของฉัน แต่ปฏิเสธที่จะให้ข้อมูล ถาม: ฉันจะแก้ไขได้อย่างไร

4
รับการนับโพสต์ใน wp rest API v2 และรับหมวดหมู่ทั้งหมด
ฉันต้องการนับจำนวนการโพสต์ของฉัน ฉันคิดว่าใช้ wp-json / wp / v2 / categories? page = 1 >> นับว่าเป็นวิธีที่ดีที่จะไป แต่การใช้วิธีแก้ปัญหาข้างต้นไม่ใช่ถ้วยชาในแง่ของความเร็วและฉันไม่รู้วิธีรับหมวดหมู่ทั้งหมดด้วยการโทรเพียงครั้งเดียว (ถ้าคุณรู้ว่ามันจะมีประโยชน์มากถ้าคุณแชร์มัน) มีวิธีใดบ้าง / tutorial / ... ทำให้ฉันสามารถเพิ่มจำนวนการโพสต์ในการโทรหลักได้หรือไม่ ชอบเส้นทางนี้: wp-json / wp / v2 / posts ....
10 rest-api  wp-api 

1
การอัพโหลดสื่อด้วย REST API
ฉันมีปัญหาในการอัพโหลดสื่อไปยังเว็บไซต์ WordPress ด้วย JSON REST API ด้วยรหัสต่อไปนี้ฉันสามารถอัปโหลดภาพถ่าย แต่ไม่มีการกำหนดข้อมูลให้กับพวกเขาแม้แต่ชื่อจริง ๆ แล้วชื่อนั้นจะกลายเป็น URL และชื่อไฟล์โดยอัตโนมัติ (ไม่มีส่วนขยาย) $username = "ZX"; $password = "ZX"; $host = 'http://ZX.com/wp-json/wp/v2/media'; $data = json_encode($data); $file = '/Users/xx.png'; $imagedata = file_get_contents($file); $process = curl_init($host); curl_setopt($process, CURLOPT_RETURNTRANSFER, 1); curl_setopt($process, CURLOPT_BINARYTRANSFER, TRUE); curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($process, CURLOPT_TIMEOUT, 50); curl_setopt($process, CURLOPT_USERPWD, $username . …
9 php  uploads  media  wp-api  curl 

2
เคียวรี WP REST API v2 ด้วยหลายเมตาคีย์
ใช้ v2 ของ REST API ฉันต้องการสอบถามบางโพสต์ด้วยเมตาคีย์หลายอัน ด้วย v1 ฉันสามารถจัดรูปแบบ URL ที่ชอบ&filter[meta_value][month]=12&[meta_value][year]=2015และใช้งานได้ (หลังจากเปิดเผยค่าเมตาไปยัง API) ตอนนี้ด้วย v2 ฉันสามารถใช้งานได้โดยใช้วิธีการที่ระบุไว้ในกระทู้ GitHub นี้: https://github.com/WP-API/WP-API/issues/1599#issuecomment-161166805 โดยทั่วไปให้เพิ่มเขตข้อมูลเมตาโดยใช้rest_query_varsตัวกรองดังนี้ add_filter( 'rest_query_vars', 'flux_allow_meta_query' ); function flux_allow_meta_query( $valid_vars ) { $valid_vars = array_merge( $valid_vars, array( 'meta_key', 'meta_value', 'meta_compare' ) ); return $valid_vars; } กับที่ผมสามารถกรองตามอย่างใดอย่างหนึ่งที่สำคัญเมตาโดยใช้ URL wp-json/wp/v2/posts?filter[meta_key]=test&filter[meta_value]=onเช่น อย่างไรก็ตามดูเหมือนว่าวิธีเดียวในการกรองเมตาคีย์หลายรายการคือการเขียนตัวกรองแบบกำหนดเอง ใครช่วยชี้ให้ฉันในทิศทางที่ถูกต้องของการทำเช่นนั้น?

1
แสดงโพสต์ยอดนิยมในเว็บไซต์ php อื่นผ่าน WP REST JSON API
ฉันต้องการแสดงโพสต์ที่ได้รับความนิยม & ล่าสุดในเว็บไซต์ PHP อื่นภายใต้โดเมนเดียวกัน ตัวอย่าง: www.example.com -> เว็บไซต์หลัก (php, mysql) www.example.com/blog -> บล็อก WordPress ต้องแสดงบล็อกโพสต์ยอดนิยมล่าสุดในเว็บไซต์หลัก โปรดทราบว่าบล็อกและเว็บไซต์หลักใช้ฐานข้อมูลแยกกันสองฐาน ฉันตัดสินใจใช้ปลั๊กอินWP REST JSON APIสำหรับสิ่งนั้น ตอนนี้ฉันมีคำถามที่แตกต่าง ฉันใช้รหัสต่อไปนี้เพื่อดึงโพสต์ยอดนิยมเมื่อสัปดาห์ที่แล้ว สิ่งที่ฉันต้องการคือการได้รับข้อมูลเดียวกันนี้ผ่านการเรียก API $args = array( 'date_query' => array( array( 'after' => '1 week ago' ) ), 'posts_per_page' => $recent_posts_count, 'ignore_sticky_posts' => 1, 'meta_key' => 'post_views_count', 'orderby' => …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.