WordPress

คำถาม & คำตอบสำหรับนักพัฒนา WordPress และผู้ดูแลระบบ

1
เติมข้อความอัตโนมัติหรือแนะนำอัตโนมัติจากรายการชื่อโพสต์
ฉันต้องการฟังก์ชั่นเติมข้อความอัตโนมัติหรือแนะนำอัตโนมัติในแบบฟอร์ม (ค้นหา): เมื่อผู้ใช้เริ่มพิมพ์ก็จะแนะนำชื่อโพสต์ที่มีข้อความที่ตรงกัน ฉันต้องการให้แสดง meta-data (ตัวเลข) ที่ฉันเก็บไว้ซึ่งเกี่ยวข้องกับการโพสต์ที่กำหนดเองแต่ละรายการ ตัวอย่าง: ถ้าฉันพิมพ์ "A" แนะนำ "แอปเปิ้ล (13), Aardvarks (51), นักบินอวกาศ (21)" เป็นต้น

1
สร้าง API สำหรับการลงชื่อเพียงครั้งเดียวด้วยไซต์ของบุคคลที่สาม
ไซต์ของฉันต้องรวมเข้ากับซอฟต์แวร์ของ บริษัท อื่นซึ่งจะอยู่ในโดเมนย่อยของตัวเองซึ่งโฮสต์โดย บริษัท ซอฟต์แวร์ ฉันต้องให้ปลายทางที่นักพัฒนาบุคคลที่สามสามารถใช้ในการโทร API (ไปยังไซต์ wordpress ของฉัน) เพื่อให้ผู้ใช้ของไซต์ของฉันสามารถเข้าถึงโดเมนย่อยได้ ไซต์อื่นจำเป็นต้องตรวจสอบสิทธิ์ผู้ใช้จากเว็บไซต์ของฉันผ่าน API บางประเภท ฉันไม่แน่ใจว่าจะเริ่มจากตรงไหน แต่ความรู้สึกของฉันคือการที่ผู้คนฉลาดกว่าฉัน ขอบคุณล่วงหน้า!

3
วิธีปิด REVISIONS และ AUTOSAVE อย่างถูกต้องสำหรับทั้งไซต์และเป็นทางเลือกสำหรับประเภทโพสต์ที่กำหนดเองเท่านั้น
มีการรวมเบ็ด / ฟังก์ชั่นที่สามารถเพิ่มในธีมของฉันfunctions.phpเพื่อปิดการใช้งาน REVISIONS และ AUTOSAVE อย่างถูกต้องสำหรับการติดตั้ง wordpress ทั้งหมดหรือไม่ จะเป็นอย่างไรถ้าเพียงแค่โพสต์ที่กำหนดเองบางประเภท? การค้นหาออนไลน์ให้แฮ็กต่างๆตั้งแต่การลงทะเบียนสคริปต์ไปจนถึงการดัดแปลงไฟล์หลัก อะไรคือวิธีที่ยอมรับ / ถูกต้องในการทำเช่นนี้?

4
ฉันจะรับรายการปลั๊กอินที่ใช้งานอยู่ในบล็อก WordPress ของฉันโดยทางโปรแกรมได้อย่างไร
ฉันมี 2 บล็อกบล็อกหนึ่งซึ่งเป็นไซต์ Multisite และบล็อกที่ไม่ใช่ ฉันต้องการรับรายการปลั๊กอินที่ใช้งานได้บนทั้งบล็อกเพื่อให้สามารถเปรียบเทียบได้ ในบล็อกหลายไซต์ฉันต้องการแสดงรายการปลั๊กอินที่เปิดใช้งานทั้งเครือข่ายและกว้างไซต์

3
จัดคิวสคริปต์ / สไตล์ชีทของวิดเจ็ตใน HEAD ตามเงื่อนไข (เฉพาะเมื่อปรากฏบนหน้า!)
ฉันพยายามโหลดสคริปต์และสไตล์สำหรับวิดเจ็ต WordPress ด้วยเงื่อนไขต่อไปนี้ ... สคริปต์ต้องโหลดใน HEAD (มิฉะนั้นจะแตก) สคริปต์จะต้องโหลดเฉพาะเมื่อวิดเจ็ตแสดงจริง (ค่อนข้างหนัก) ฉันได้ทำการค้นหาบ่อยครั้งและดูเหมือนว่านี่จะเป็นปัญหาที่พบบ่อย (ยังไม่แก้) ... แต่ฉันหวังว่าจะมีใครบางคนที่นี่สามารถแก้ไขปัญหาได้สำเร็จ นี่คือสิ่งที่ดีที่สุดที่ฉันเคยได้รับ ... ต่อไปนี้เป็นวิดเจ็ตง่ายๆที่พิมพ์ข้อความไปยังแถบด้านข้าง มันประสบความสำเร็จในการโหลด jQuery ตามเงื่อนไข (เมื่อวิดเจ็ตปรากฏขึ้นจริง) ... แม้ว่าจะอยู่ในส่วนท้ายเท่านั้น! (หมายเหตุ: อาจใช้งานได้กับ WordPress 3.3เท่านั้นแม้ว่าแฮ็คนี้อาจให้ความเข้ากันได้ย้อนหลัง) class BasicWidget extends WP_Widget { function __construct() { parent::__construct(__CLASS__, 'BasicWidget', array( 'classname' => __CLASS__, 'description' => "This is a basic widget template that outputs …

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 

7
คุณจะได้รับขนาดภาพย่อของโพสต์ได้อย่างไร
ฉันรู้วิธีการกำหนดขนาดของภาพขนาดย่อโพสต์โดยใช้การตั้งค่า WP Admin Mediaหรือใช้ฟังก์ชั่นนี้ : set_post_thumbnail_size( 150, 150 ) แต่เราจะได้รับความกว้าง และ ความสูงของภาพที่ตั้งไว้สำหรับขนาดภาพย่อได้อย่างไร? ฉันต้องการทำสิ่งนี้: get_post_thumbnail_size(); // return array(150, 150) สิ่งนี้จะเกิดขึ้นได้อย่างไร? มันใช้งานget_option()หรือไม่และปุ่มตัวเลือกจะเป็นความกว้างและความสูงของภาพขนาดย่อหรือไม่

5
โพสต์สามารถมีผู้ปกครองได้หรือไม่?
โพสต์ควรมีพ่อแม่ไหม? ถ้าเป็นเช่นนั้นการโพสต์มีผู้ปกครองหมายความว่าอย่างไร นอกจากนี้หากมีข้อ จำกัด บางประการเกี่ยวกับการโพสต์ที่มีพ่อแม่แล้วจะมีการบังคับใช้ที่ไหน? ไม่ได้อยู่ในฐานข้อมูลเท่าที่ฉันเห็น
13 posts  database 

3
ความขัดแย้งบุ้งโพสต์แบบกำหนดเอง / ความบุ้งของหน้า - ป้องกันการใช้บุ้งสงวนในการบันทึกหน้า?
ฉันมีประเภทโพสต์ที่กำหนดเองของผลงาน (ผลงานกระสุน) ในชุดรูปแบบของฉันและทั้งหมดทำงานได้ดียกเว้นสิ่งหนึ่ง เมื่อผู้คนสร้างเพจที่มีผลงานกระสุนเช่น: example.com/portfolio ชุดรูปแบบคิดว่าฉันต้องการใช้หน้าเก็บถาวรชนิดโพสต์ที่กำหนดเองไม่ใช่หน้าของฉันสร้างขึ้นในโปรแกรมแก้ไข ฉันจะ "สำรอง" พอร์ตกระสุนอย่างใดอย่างหนึ่งเมื่อหน้าจะถูกบันทึกเพื่อให้แน่ใจว่ามันไม่เคยถูกใช้งานอาจถูกเปลี่ยนชื่อเป็นหน้าพอร์ตโฟลิโอ? โครงการของฉันใช้วิธีการที่ระบุไว้ในบทช่วยสอนนี้ต่อไปนี้เป็นข้อขัดแย้งที่ฉันอ้างถึง: "นอกเหนือจากการแก้ไขรหัสแล้วยังมีอีกหนึ่งสิ่งที่คุณไม่สามารถเรียกหน้ากระสุนของคุณได้เช่นเดียวกับกระสุนชนิดโพสต์ที่กำหนดเองคิดว่ากระสุนชนิดโพสต์ที่กำหนดเองของคุณเป็นคำหลักที่สงวนไว้อย่างไรก็ตามคุณสามารถสร้าง ชื่อของหน้าของคุณเป็นชื่อเดียวกับทากประเภทโพสต์ที่กำหนดเองตราบใดที่ทากหน้าของคุณมีความแตกต่าง " - http://wp.tutsplus.com/tutorials/custom-post-type-pagination-chaining-method/ ขอบคุณสำหรับคำแนะนำใด ๆ !

6
Wp รับเพจย่อยทั้งหมดของพาเรนต์โดยใช้คิวรี wp
นี่คือรหัสของฉัน $my_wp_query = new WP_Query(); $all_wp_pages = $my_wp_query->query(array('post_type' => 'page','post_parent'=>$parid,'orderby'=>'title','order'=>'ASC' )); จะแสดงหน้าย่อยระดับแรกเท่านั้น ฉันต้องการหน้าย่อยทั้งหมดหน้าย่อยของ ... และทั้งหมด ฉันค้นหาวิธีแก้ปัญหาและฉันสามารถรับเพจย่อยทั้งหมดโดยใช้ get_pages และ wp_list_pages แต่ฉันต้องเรียงลำดับตามค่าเมตาโพสต์ที่กำหนดเอง ดังนั้นฉันต้องใช้แบบสอบถามที่กำหนดเอง กรุณาช่วย. ขอบคุณ

2
มีวิธีการปิด Pingbacks / Trackbacks โดยสิ้นเชิงหรือไม่?
มีตัวเลือกที่จะปิดการติดตาม / Settings > Discussionติดตามภายใต้คือ แต่ฉันต้องการลบX-Pingbackส่วนหัวของ WordPress ที่ส่งและลบtrackbackจุดสิ้นสุดโดยสมบูรณ์ มีวิธีทำเช่นนี้หรือไม่?
13 pingbacks 

2
จะโหลด Widget javascript + css ได้อย่างไรหากใช้?
ฉันต้องการเก็บสไตล์ javascript และ css ที่ใช้โดยวิดเจ็ตของฉันไว้ในไฟล์ของตัวเอง (และไม่เพิ่มลงในธีม) แต่ฉันไม่สามารถรับ wordpress เพื่อเพิ่มพวกเขาได้เมื่อมีการใช้วิดเจ็ตบนแถบด้านข้าง ฉันเคยลองแล้ว: ในการประกาศ Class ฉันได้เพิ่ม 2 ฟังก์ชัน class EssentielleRubriquesPosts extends WP_Widget { function addFrontendCss(){ wp_enqueue_style('erw-frontend-css', ESSENTIELLE_RUBRIQUE_WIDGET_PLUGIN_PATH . 'css/EssentielleRubriqueWidget-frontend.css'); } function addFrontendJavascript(){ wp_register_script('jq-hoverintent', PLUGIN_PATH . 'js/jquery.hoverintent.js', array('jquery'), '1.0',true); wp_enqueue_script('jq-hoverintent'); wp_enqueue_script('jq-tools', PLUGIN_PATH . 'js/jquery.tools.js', array('jquery'),'1.0',true); wp_enqueue_script('erw-frontend-js', PLUGIN_PATH . 'js/widget-frontend.js', array('jquery', 'jq-hoverintent', 'jq-tools'),'1.0',true); } และภายในฟังก์ชั่น …

2
จะตรวจสอบได้อย่างไรถ้าฉันอยู่ในหน้า 'ปลั๊กอิน' ของ bbpress?
ฉันจะตรวจสอบได้อย่างไรว่าฉันอยู่ในหน้าฟอรัมหรือโพสต์ในฟอรัมในธีมของฉัน ฉันใช้ปลั๊กอิน bbpress (ไม่ใช่ bbpress แบบสแตนด์อโลน) ควรมีเงื่อนไขเช่น is_bbpress () หรืออะไรบางอย่าง?
13 bbpress 

1
wp_insert_posts () ปลอดภัย / ถูกสุขลักษณะอย่างไร
การดู Codex สำหรับwp_insert_post ()ระบุว่าฟังก์ชันนี้ "... ฆ่าเชื้อตัวแปรทำการตรวจสอบบางอย่างเติมข้อมูลในตัวแปรที่ขาดหายไปเช่นวันที่ / เวลา ฯลฯ " (แก้ไข: ฉันอัปเดตรายการ Codexเพื่อรวมตัวอย่างที่แข็งแกร่งมากขึ้น ที่มีความปลอดภัยเช่นเดียวกับการโพสต์เมตาและการกำหนดหมวดหมู่) เพียงแค่สงสัยว่าฉันจะต้องทำการฆ่าเชื้อใด ๆ เพิ่มเติมเพื่อป้องกันการแฮ็ก XSS และสิ่งที่ชอบหรือไม่เพียงพอที่จะทำผ่านฟังก์ชั่น ความจริงแล้วฉันได้ตรวจสอบผ่านฟังก์ชั่นในแกนกลางและไม่พบ wp_kses () หรือการฆ่าเชื้ออื่น ๆ ใน post_content เช่นฉันจึงกังวลเล็กน้อย ทั้งหมดที่ฉันเห็นว่ามันคือ striplashes_deep () บนข้อมูล ดังนั้นฉันควรใช้ wp_kses () หรือสิ่งอื่นใดเมื่อฉันสร้างอาร์กิวเมนต์เพื่อ wp_insert_post () การปฏิบัติที่ดีที่สุดที่นี่คืออะไร Codex เป็นทหารม้าที่น่ารักเกี่ยวกับความปลอดภัยในตัวอย่าง ขอบคุณ

3
ข้อดีของ API การตั้งค่าคืออะไร
ให้ฉันนำหน้าสิ่งนี้โดยบอกว่าฉันแทบจะไม่เคยทำงานกับ WordPress - ในความเป็นจริงครั้งล่าสุดที่ฉันทำเว็บไซต์ใน WordPress กลับมาในช่วง 2.2 เมื่อวานนี้ฉันทำทุกอย่างยุ่ง ๆ และถามคำถามหลายข้อที่นี่เพื่อพยายามใช้งานปลั๊กอินเมนูพื้นฐาน ตอนนี้ฉันมีปลั๊กอินทำงานได้อย่างสมบูรณ์และทำงานตามที่ฉันคาดไว้ดังนั้นฉันจึงตัดสินใจเปลี่ยนแปลงเล็กน้อยที่นี่และเพิ่มฟังก์ชั่นและความเข้ากันได้รวมถึงการใช้ API การตั้งค่า อย่างไรก็ตามช่วงเวลาสั้น ๆ ในการอ่านบทช่วยสอนเกี่ยวกับ API นี้และฉันค่อนข้างสับสนแล้วความสับสนนี้จะลึกซึ้งยิ่งขึ้นเมื่อฉันอ่านและพยายามใช้ตัวอย่าง - ซึ่งทำให้ยากยิ่งขึ้นโดยความจริงที่ว่าปลั๊กอินของฉันถูกใช้เป็นคลาส . หากฉันทำสิ่งผิดปกติจากสิ่งที่ฉันเข้าใจในการใช้งาน API การตั้งค่าต้องมีการสร้างฟังก์ชั่นใหม่ต่อการตั้งค่า นี่หมายถึงฟังก์ชั่น 3-5 ตัวสำหรับปลั๊กอินเฉลี่ยและสูงสุดถึงร้อยสำหรับปลั๊กอินขั้นสูงเพิ่มเติม ดูเหมือนว่าน่าหัวเราะที่จะเขียนฟังก์ชั่นมากมาย (และพัฒนาระบบการตั้งชื่อเพื่อไม่ให้เกิดความสับสน) เมื่อคุณสามารถนำเข้า$_POSTตัวแปรที่เกี่ยวข้องทั้งหมดลงในอาเรย์และนำไปสู่ความยุ่งเหยิงทั้งหมดได้อย่างง่ายดาย บางทีฉันอาจจะล้าสมัย แต่ถ้ามีบางอย่างที่จะได้รับจากสิ่งนี้ฉันไม่เห็นเหตุผลที่จะเพิ่มจำนวนสามเท่าหรือสี่เท่าของรหัสที่ฉันเขียน นี่คือวิธีที่ฉันจัดการตัวเลือกก่อนพยายามเพิ่มการตั้งค่า API: function __construct() { /* constructor stuff */ $this->options = $this->db_options = get_option( 'de-menu-options' ); if( $this->options …

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