WordPress

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

4
ทำไมฉันถึงต้องใส่ถ้า (have_posts ()) อยู่ในขณะที่ (have_posts ()) ไม่พอ?
ฉันมีคำถามเกี่ยวกับ "วง" <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php endwhile; else: ?> <p><?php _e('Sorry, no posts matched your criteria.'); ?></p> <?php endif; ?> รหัสนำมาจากหน้าห่วง WordPress Codex ทำไมฉันถึงต้องมีifส่วนร่วม? ดูเหมือนว่าหากมีการwhileวนซ้ำก็ใช้งานได้ดี ในกรณีใดปัญหาเกิดขึ้นหากไม่มีifคำสั่ง? แก้ไข ฉันยอมรับคำตอบของ @ Chip แต่พูดอย่างสุจริตว่าฉันต้องการเพียงส่วนสุดท้าย ตอนนี้ฉันรู้สิ่งที่ฉันอยากรู้จากคำถามของฉัน ifคำสั่งเป็นเพียงเมื่อจำเป็นถ้าคุณต้องการที่จะนำส่วนหัวหรือส่วนท้ายที่ควรจะเขียนเพียงครั้งเดียว หากคุณไม่ได้ใช้ "wrapper" ifคำสั่งนั้นไม่จำเป็น
22 loop 


1
เมื่อใดควรใช้ add_rewrite_tag ()
ฉันใช้เวลาสองสามวันเพื่อเรียนรู้วิธีเพิ่มกฎการเขียนใหม่ให้ดีที่สุด จนถึงตอนนี้ความเข้าใจของฉันก็คือวิธีที่เหมาะสมในการเพิ่มกฎง่ายๆคือadd_rewrite_rules()ต้องขอบคุณJan Fabry อย่างมากในการแลกเปลี่ยนนี้ แม้ว่าเขาจะพูดถึงว่าadd_rewrite_tags()ฉันไม่ได้เห็นไกด์นำเที่ยวอธิบายเมื่อมันมีประโยชน์ในการใช้งานซึ่งตรงข้ามกับวิธีอื่น ๆ ในการเพิ่มกฎการเขียนซ้ำหรือตัวอย่างที่ดีเกี่ยวกับการใช้งาน ดูเหมือนว่าจะเป็นเครื่องมือที่ทรงพลังกว่า แต่นั่นก็เป็นเรื่องที่ฉันเข้าใจได้ ผมหาตัวอย่างใน Codex ที่จะเกินไปคลุมเครือหรือไม่สมบูรณ์ ใครบางคนสามารถอธิบายอย่างละเอียดเกี่ยวกับมันหรือชี้ไปที่ทรัพยากรบางอย่าง? ฉันพบว่าไม่มีประโยชน์ใน Google แก้ไข: มัน Codex หน้าพูดคุยเกี่ยวกับ 'ทั่วไป' ใช้มันร่วมกับadd_rewrite_rules()แต่ไม่ได้ทำอย่างละเอียด ในทำนองเดียวกันหน้า Codexสำหรับการadd_rewrite_rules()อ้างอิงadd_rewrite_tags()แต่มันก็เบาบางมากในข้อมูล จะใช้ชุดค่าผสมดังกล่าวเมื่อใดและอย่างไร ตัวอย่างเดียวที่ฉันพบคือคำตอบโดย Rob Vermeerซึ่งฉันไม่เข้าใจ


5
วิธีจัดเรียงฟิลด์ใหม่ใน comment_form ()
ฉันใช้ตัวกรองที่กำหนดเองเพื่อเปลี่ยนฟิลด์ แต่ไม่สามารถหาวิธีเปลี่ยนลำดับของฟิลด์ในฟอร์มความคิดเห็นได้ คำสั่งที่ต้องการ: ช่องแสดงความคิดเห็น (แรก / บนสุด) ชื่อ อีเมล เว็บไซต์ นี่คือรหัสที่ฉันใช้ในปัจจุบัน: function alter_comment_form_fields($fields){ $fields['comments'] = 'Test'; $fields['author'] = '<p class="comment-form-author">' . '<label for="author">' . __( 'Your name, please' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) . '<input id="author" name="author" type="text" placeholder="John Smith" value="' . …


3
จะทราบได้อย่างไรว่าฉันอยู่ในหน้าแรกของการแบ่งหน้า?
ฉันจะทราบได้อย่างไรว่าฉันอยู่ในหน้าแรกของการแบ่งหน้า? ฉันใช้ WP_Pagenavi ฉันต้องการเรียกใช้ฟังก์ชั่นเฉพาะในหน้าแรกของเลขหน้า ฉันตรวจสอบ query_var 'paged' แล้วมันถูกตั้งค่าเป็น 0 ในหน้านี้และจากนั้น 2, 3 และอื่น ๆ ในหน้าถัดไป (หายไป 1 รายการ!) ... ใครรู้วิธีแก้ปัญหาที่สะอาดหรือไม่ ขอบคุณ

3
วิธีการ: ตรวจสอบตัวแปรทั่วโลกใน WordPress
ผู้คนมักสับสนเกี่ยวกับวิธีการรับข้อมูลจากวัตถุ / ตัวแปรระดับโลก คำถาม:คุณสามารถตรวจสอบตัวแปรทั่วโลกในรูปแบบใด คำถามนี้เขียนขึ้นเพราะต้องการความสวยบ่อยๆที่ WA ฉันแค่อยากให้มันเป็นลิงก์ที่น่าสนใจที่นี่ (คนมักจะไม่ดูที่ลิงค์ gist github) อย่าลังเลที่จะแก้ไขตัวอย่างถ้ามีอะไรผิดปกติหรือคุณคิดว่าคำอธิบายนั้นหายไป หากคุณต้องการเพิ่มสิ่งที่มีประโยชน์อื่น ๆ โปรดเพิ่มคำตอบแต่ละข้อเป็นคำตอบเดียว ขอขอบคุณ.
22 globals 

8
รับ ID หมวดหมู่ภายในเทมเพลตหมวดหมู่
ฉันจะรับ cat ID ภายในเทมเพลตได้อย่างไร สำคัญมาก: ฉันไม่สามารถทำได้ด้วยชื่อเพราะเรามีแมวหลายตัวที่มีชื่อเหมือนกัน กระสุนเท่านั้นจะแตกต่างกัน ถ้าฉันรับกระสุนมันก็โอเคเช่นกัน แต่อย่างที่ฉันพูด: ฉันไม่สามารถใช้ชื่อแมว .....
22 categories 

13
แนวทางปฏิบัติด้านความปลอดภัยที่ดีที่สุดสำหรับปลั๊กอิน WordPress และธีมคืออะไร? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ตามที่แนะนำในคำถามนี้ฉันกำลังเพิ่มหัวข้อนี้เป็นคำถามใหม่สำหรับการอภิปรายชุมชน / การลงคะแนนเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดสำหรับความปลอดภัยของปลั๊กอิน / ธีม นี่คือรายการตรวจสอบเริ่มต้นตามรายการตรวจสอบความปลอดภัยของข้อมูล (รายการที่กำลังตรวจสอบความปลอดภัย) ที่ใช้สำหรับตรวจสอบธีม (หลักการไม่ควรต่างไปจากปลั๊กอินมากกว่าชุดรูปแบบ) หากคุณต้องการตรวจสอบชุดรูปแบบที่มีหน้าการตั้งค่าชุดรูปแบบที่ปลอดภัยและเข้ารหัสอย่างแน่นหนาให้ตรวจสอบชุดรูปแบบนี้: http://wordpress.org/extend/themes/coraline

6
ฉันจะแยก taxonomy ที่กำหนดเองออกจากลูปการโพสต์ได้อย่างไร
มีวิธีที่ง่ายหรือไม่ในการแยกโพสต์ทั้งหมดออกจาก taxonomy ที่กำหนดเองในลูปหรือไม่? ฉันดูสูงและต่ำและดูเหมือนว่า SE, SO หรือ Google จะไม่มีคำตอบที่ตรง ฉันรู้ว่ามันสามารถทำได้ผ่านแบบสอบถาม WPDB แต่ดูเหมือนว่าเชือกขนาดใหญ่ที่จะข้ามไปสำหรับสิ่งที่ควรจะค่อนข้างง่าย

3
วิธีปฏิบัติที่ดีที่สุดสำหรับเว็บไซต์ WordPress ทดสอบการถดถอย?
สวัสดีทุกคน, ฉันต้องการฟังสิ่งที่คนอื่น ๆ ที่นำเสนอโซลูชันที่ไม่ใช่บล็อกที่ซับซ้อนให้กับลูกค้าด้วย WordPress ซึ่งเป็นแพลตฟอร์มที่พวกเขาใช้สำหรับการทดสอบการถดถอยอัตโนมัติ? สำหรับผู้ที่ไม่คุ้นเคยกับคำว่า"การทดสอบการถดถอย" Wikipedia ให้นิยามเป็น: การทดสอบการถดถอยเป็นการทดสอบซอฟต์แวร์ประเภทใดก็ตามที่พยายามเปิดเผยข้อผิดพลาดของซอฟต์แวร์หลังจากมีการเปลี่ยนแปลงโปรแกรม (เช่นการแก้ไขข้อบกพร่องหรือฟังก์ชั่นใหม่) ที่ทำขึ้นโดยทดสอบโปรแกรมซ้ำ จุดประสงค์ของการทดสอบการถดถอยคือเพื่อให้มั่นใจว่าการเปลี่ยนแปลงเช่นข้อผิดพลาดไม่ได้แนะนำข้อบกพร่องใหม่ บอกวิกิพีเดียเพิ่มเติมว่าสิ่งต่อไปนี้เป็นสิ่งที่ฉันกำลังประสบในโครงการในขณะนี้: ประสบการณ์ได้แสดงให้เห็นว่าเมื่อซอฟต์แวร์ได้รับการแก้ไขการเกิดขึ้นของใหม่และ / หรือการกลับมาอีกครั้งของความผิดพลาดเก่านั้นเป็นเรื่องปกติ บางครั้งการเกิดขึ้นอีกครั้งเกิดขึ้นเนื่องจากการแก้ไขหายไปจากแนวทางปฏิบัติในการควบคุมการแก้ไขที่ไม่ดี (หรือข้อผิดพลาดของมนุษย์อย่างง่ายในการควบคุมการแก้ไข) บ่อยครั้งการแก้ไขปัญหาจะ "เปราะบาง" ในการที่จะแก้ไขปัญหาในกรณีที่แคบซึ่งเป็นครั้งแรกที่สังเกต แต่ไม่ในกรณีทั่วไปมากขึ้นซึ่งอาจเกิดขึ้นตลอดชีวิตของซอฟต์แวร์ บ่อยครั้งการแก้ไขปัญหาในพื้นที่หนึ่งโดยไม่ได้ตั้งใจทำให้เกิดปัญหาซอฟต์แวร์ในพื้นที่อื่น ในที่สุดก็มักจะเป็นกรณีที่เมื่อคุณสมบัติบางอย่างได้รับการออกแบบใหม่บางส่วนของข้อผิดพลาดเดียวกันที่เกิดขึ้นในการใช้งานเดิมของคุณสมบัติที่เกิดขึ้นในการออกแบบ ด้วยธรรมชาติของการกระทำและตัวกรองทั่วโลกฉันพบว่าความซับซ้อนเริ่มกระโชกแรงเมื่อฉันเพิ่มฟังก์ชั่นที่ลูกค้าร้องขอมากขึ้นและกลายเป็นเรื่องยากที่จะได้รับปลั๊กอินที่ซับซ้อนมั่นคงโดยเฉพาะอย่างยิ่งถ้าใช้การโทรจำนวนมากWP_Queryและอัพเดทฐานข้อมูลจำนวนมาก . ทางออกในใจของฉันคือการตั้งค่าการทดสอบการถดถอยด้วยชุดของ"กรณีทดสอบ"เพื่อประกอบด้วย"ชุดทดสอบ" โดยหลักการแล้วมันไม่ได้ยากเมื่อคุณกำลังทดสอบเอาต์พุต HTML ของการร้องขอ HTTP GET แต่จะมีความซับซ้อนเพิ่มขึ้นเล็กน้อยเมื่อคุณต้องทดสอบสิ่งต่าง ๆ เมื่อลงชื่อเข้าใช้ผ่านคอนโซลผู้ดูแลระบบและ / หรือเพื่อทดสอบการโต้ตอบ jQuery ฉันตั้งค่านี้เป็นวิกิชุมชนโดยหวังว่าเราจะสามารถรวบรวมแนวปฏิบัติที่ดีที่สุดได้ที่นี่ แต่ฉันรู้สึกกระตือรือร้นที่จะได้ยินกระบวนการหากผู้เชี่ยวชาญ WordPress คนอื่นกำลังใช้งานอยู่



5
แบบสอบถามเพื่อเรียงลำดับรายการตามเมตาคีย์ก่อน (ถ้ามี) และแสดงโพสต์ที่เหลือโดยไม่ต้องคีย์เมตาเรียงตามชื่อ
ฉันกำลังทำงานกับเทมเพลตหน้าคำศัพท์ taxonomy ที่กำหนดเองซึ่งเราต้องการให้รายการที่เชื่อมโยงกับคำที่เรียงตามวันที่เผยแพร่ (ฟิลด์วันที่กำหนดเอง) - และหากมีหลายรายการในวันเดียวกัน (จัดรูปแบบเช่น YYYY-MM- DD) เพื่อจัดเรียงรายการเหล่านั้นตามชื่อและในที่สุดก็เรียงลำดับตามชื่อเรื่องหากฟิลด์ที่กำหนดเองยังไม่ได้กรอก (รายการเก่า) ดังนั้นฉันจึงลองใช้วิธีที่แตกต่างกันหลายร้อยวิธีด้วย WP_query และมันส่งคืนผลลัพธ์ส่วนใหญ่ตามที่ฉันต้องการ - แต่ในกรณีนี้มันจะคืนค่ารายการที่มี meta_key ของ publication_date เท่านั้น รายการอื่น ๆ ทั้งหมดจะถูกละเว้นและไม่แสดง ฉันลองใช้ meta_query โดยใช้ความสัมพันธ์ของ "หรือ" และเปรียบเทียบสิ่งพิมพ์_dateว่าเป็น EXISTS และไม่ใช่ EXISTS แต่ได้ผลลัพธ์ 0 รายการกลับมาให้ฉัน นอกจากนี้ไซต์ยังคงทำงาน 3.5.2 และพวกเขาไม่ต้องการอัพเกรด นี่คือข้อความค้นหาล่าสุดของฉันที่ทำให้ฉันได้รับโพสต์ที่มีฟิลด์ที่กำหนดเองสิ่งพิมพ์_dateตามลำดับที่ถูกต้อง: $term = get_queried_object(); // find the term of the taxonomy page we …

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