WordPress

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


12
มีวิธีใดในการร่างการแก้ไขหน้าที่เผยแพร่หรือโพสต์ คุณใช้วิธีแก้ปัญหาอะไรบ้าง
สมมติว่าฉันได้เผยแพร่หน้าหรือโพสต์แล้ว ตอนนี้ฉันต้องการเปลี่ยนแปลง แต่ฉันต้องการเพื่อนร่วมงานเพื่อตรวจสอบพวกเขาก่อนที่พวกเขาจะมีชีวิตอยู่ มีวิธีการทำเช่นนี้หรือไม่? แก้ไข: ฉันรู้ว่านี่เป็นไปไม่ได้ในขณะนี้และเป็นวิธีแก้ปัญหาเชิงสร้างสรรค์ที่ฉันสนใจ บนไซต์ที่ฉันกำลังทำงานอยู่ฉันยังมีไซต์ 'staging' ที่ป้องกันด้วยรหัสผ่านแยกต่างหากสำหรับการร่างการเปลี่ยนแปลง / เพิ่มเติมเนื้อหาที่สำคัญและเมื่อฉันอนุมัติให้คัดลอกและวางไปยังไซต์สด ฉันสงสัยว่าถ้าใครใช้วิธีการที่คล้ายกัน แต่อาจจะ 'ผลักดัน' ไปยังเว็บไซต์สดโดยอัตโนมัติ? ฉันรู้คำถามนี้: การประสานระหว่างฐานข้อมูล dev / การแสดงละครและการผลิตแต่ที่เพิ่มเติมเกี่ยวกับ synchonization ขายส่งของฐานข้อมูลทั้งหมดมากกว่าแต่ละหน้าหรือโพสต์ ตอนนี้เสนอเงินรางวัลเพื่อลองขับแนวคิดเพิ่มเติมสำหรับการแก้ไขปัญหา
38 draft 

1
ฉันควรใช้ประเภทโพสต์ที่กำหนดเองหรือตารางฐานข้อมูลที่กำหนดเองสำหรับการพัฒนาปลั๊กอิน?
ฉันค่อนข้างใหม่ในการเขียนปลั๊กอิน wordpress แต่ฉันได้เพิ่มขึ้นในส่วนลึกแล้วและฉันต้องการให้แน่ใจว่าฉันทำ "ถูกต้อง" ในโครงการใหญ่ที่กำลังจะมาถึง ฉันกำลังจะขยายเวิร์ดเพรสเป็นเว็บแอพที่ใหญ่และต้องการให้โครงสร้างข้อมูลของฉันอยู่ในระดับที่เป็นไปได้มากที่สุดที่จะพึ่งพาเฟรมเวิร์ก WordPress แต่ฉันไม่รู้ว่าจะสร้างตารางฐานข้อมูลที่กำหนดเองได้ดีกว่าหรือไม่ หรือลองใช้ประโยชน์จากประเภทโพสต์ที่กำหนดเอง ฉันยังไม่ทราบข้อมูลทั้งหมดของฉัน แต่จะมีการเชื่อมโยงแบบสัมพันธ์กันหลายตาราง (หรือ cpts) ฉันได้รับ "vibe" จากการวิจัยของฉันที่ฉันควรหลีกเลี่ยงตารางฐานข้อมูลที่กำหนดเอง แต่ฉันไม่แน่ใจว่าจะหาทางออกที่ดีที่สุดได้อย่างไร โดยเฉพาะฉันกังวลเกี่ยวกับสามด้าน: จำนวนโพสต์ metafields ที่ฉันต้องการสำหรับฟิลด์พิเศษของฉันต่อ cpt ถ้าฉันไปเส้นทางนั้นและหากนั่นจะทำให้สิ่งต่าง ๆ "ยุ่งยาก" ฉันจะรับการสืบค้นกลับได้ดีเพียงใดโดยใช้ตัวกรองเชิงสัมพันธ์แบบกึ่งซับซ้อนสำหรับรายงาน ทำอย่างไรจึงจะจัดการความสัมพันธ์ได้ดีที่สุดโดยเฉพาะถ้าฉันมีความสัมพันธ์หลายอย่าง มีวิธี "ถูกต้อง" หรือไม่? ขอบคุณสำหรับข้อมูลของคุณ

7
add_action อ้างอิงคลาส
เป็นไปได้ที่จะอ้างอิงคลาสแทนฟังก์ชั่นใน 'add_action' หรือไม่? ดูเหมือนจะไม่สามารถคิดออก นี่เป็นเพียงตัวอย่างพื้นฐานของฟังก์ชันที่เป็นปัญหา add_action( 'admin_init', 'MyClass' ); class MyClass { function __construct() { .. This is where stuff gets done .. } } ใช่นั่นมันใช้งานไม่ได้ ฉันยังลอง: $var = new MyClass(); add_action( 'admin_init', array( &$var ) ); และ: $var = new MyClass(); add_action( 'admin_init', array( &$var, '__construct' ) ); และนอกจากนี้ยังมี: …
38 actions 

5
วิธีรับโพสต์ทั้งหมดด้วยสถานะโพสต์ใด ๆ
ฉันกำลังสร้างแดชบอร์ดส่วนหน้าที่ฉันต้องการแสดงโพสต์ทั้งหมดโดยผู้ใช้ปัจจุบัน ดังนั้นฉันจึงต้องแสดงโพสต์ในทุกรัฐส่วนใหญ่published, และtrashed pendingตอนนี้ฉันใช้ข้อความค้นหาง่าย ๆ แต่กลับมาเฉพาะบทความที่เผยแพร่ $query = array( 'post_type' => 'my-post-type', 'post_author' => $current_user->ID ); query_posts($query); ใครช่วยได้บ้าง ฉันต้องทำอะไรอีก

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

5
ฉันจะปิดใช้งานอิมเมจที่ตอบสนองได้ใน WP 4.4 ได้อย่างไร
ฉันแปลงการติดตั้ง 4.3.1 เป็น https ทั้งหมดอย่างสมบูรณ์ หลังจากอัปเดตเป็น 4.4 ฉันมีปัญหากับsrcsetคุณสมบัติใหม่ ในขณะที่srcตั้งค่าแอตทริบิวต์สำหรับรูปภาพโดยใช้ https srcsetแอตทริบิวต์นั้นคือ http ทำให้เบราว์เซอร์ไม่แสดงรูปภาพใด ๆ เลย ในขณะที่รอการแก้ไขที่ดีกว่าฉันต้องการปิดการใช้งานการตั้งค่าsrcsetคุณลักษณะทั้งหมดเพื่อให้ทุกภาพมีเพียงsrcคุณลักษณะ ฉันจะทำอย่างไร

2
วิธีรับรหัสโพสต์ของหน้าคงที่
ฉันกำลังพยายามใช้หน้าแรกเป็นค่าเริ่มต้นสำหรับรูปภาพเด่น (หากไม่มีการตั้งค่ารูปภาพเด่นฉันต้องการใช้หน้าแรกเป็นตัวอย่าง) แต่ฉันมีปัญหาในการค้นหาวิธีรับรหัสโพสต์ของหน้าแรกอย่างปลอดภัย (เพื่อให้รหัสของฉันยังคงทำงานเมื่อมีคนเปลี่ยนหน้าอย่างหลีกเลี่ยงไม่ได้) ฉันรู้ว่าฉันสามารถรหัสยากในรหัสของฉัน แต่มันจะพังเมื่อมีคนตัดสินใจที่จะใช้รายการเนื้อหาใหม่เป็นหน้าแรก ฉันจะต้องใช้ wp-query เพื่อให้บรรลุนี้หรือไม่ และถ้าเป็นเช่นนั้นวิธีที่ปลอดภัยในการบรรลุเป้าหมายด้วย wp-query คืออะไร

1
วิธีการกรองรายชื่อโพสต์ (ในรายการ WP แดชบอร์ดโพสต์) โดยใช้ฟิลด์ที่กำหนดเอง (ฟังก์ชั่นการค้นหา)?
แม้ว่าที่จริงแล้วฉัน googled มากฉันไม่พบคำตอบสำหรับคำถามง่าย ๆ : ฉันมีบางโพสต์ที่มีฟิลด์ที่กำหนดเอง (เช่น supplier_name) ฉันต้องการค้นหาและกรองโพสต์ของฉันตามฟิลด์ที่กำหนดเองนี้ กล่าวอีกนัยหนึ่งในรายการโพสต์ของผู้ดูแลระบบฉันต้องการช่องค้นหา (ชื่อ "ผู้จัดหาชื่อ") ซึ่งฉันสามารถพิมพ์ค่า (เช่น "IBM") จากนั้นคลิกที่ปุ่มค้นหาที่จะให้ ฉันกลับโพสต์ทั้งหมดที่มีฟิลด์ที่กำหนดเองชื่อ "supplier_name" และถ้าเป็นเช่นนั้นค่าของฟิลด์ที่กำหนดเองจะเป็น "IBM" ฉันจะทำสิ่งนี้ได้อย่างไร

7
การส่งอีเมลหลายข้อความ (ข้อความ / html) ผ่าน wp_mail () อาจทำให้โดเมนของคุณถูกแบน
สรุป เนื่องจากมีปัญหาใน WP หลักส่งmultipartอีเมล (HTML / ข้อความ) กับwp_mail () (เพื่อลดโอกาสของอีเมลสิ้นสุดในโฟลเดอร์สแปม) จะกระแนะกระแหนส่งผลกับโดเมนของคุณถูกบล็อกโดย Hotmail (และอีเมลอื่น ๆ ของ Microsoft) นี่เป็นปัญหาที่ซับซ้อนซึ่งฉันจะตั้งเป้าหมายให้ละเอียดโดยละเอียดในความพยายามช่วยคนหาวิธีแก้ปัญหาที่ใช้การได้ซึ่งอาจนำไปใช้ในแกนกลางในที่สุด มันจะเป็นการอ่านที่คุ้มค่า เอาล่ะ... ข้อผิดพลาด คำแนะนำที่พบบ่อยที่สุดในการหลีกเลี่ยงอีเมลจดหมายข่าวของคุณที่อยู่ในโฟลเดอร์สแปมคือการส่งข้อความหลายส่วน หลายส่วน (mime) หมายถึงการส่งทั้งส่วน HTML และ TEXT ของข้อความอีเมลในอีเมลเดียว เมื่อไคลเอนต์ได้รับข้อความหลายส่วนก็ยอมรับเวอร์ชัน HTML หากมันสามารถแสดงผล HTML มิฉะนั้นจะแสดงรุ่นข้อความธรรมดา นี่พิสูจน์แล้วว่าใช้ได้จริง เมื่อส่งไปที่ gmail อีเมลทั้งหมดของเราจะถูกส่งไปยังโฟลเดอร์สแปมจนกว่าเราจะเปลี่ยนข้อความเป็นหลายส่วนเมื่ออีเมลเหล่านั้นเข้าสู่กล่องจดหมายหลัก สิ่งที่ยอดเยี่ยม ทีนี้เมื่อส่งข้อความแบบหลายส่วนผ่าน wp_mail () มันจะส่งออกประเภทเนื้อหา (หลายส่วน / *) สองครั้งโดยมีขอบเขต (ถ้าตั้งค่าแบบกำหนดเอง) และอีกครั้งโดยไม่มี ลักษณะการทำงานนี้ส่งผลให้อีเมลที่ถูกแสดงเป็นข้อความ raw …
37 email  wp-mail  bug 

10
WAMP vs XAMPP ข้อดี / ข้อเสีย - สำหรับการใช้เซิร์ฟเวอร์ทดสอบในท้องถิ่น [ปิด]
อะไรคือข้อดี / ข้อเสียที่สำคัญที่สามารถช่วยในการตัดสินใจเลือกสองแบบ: WAMP vs XAMPP สำหรับเรียกใช้เซิร์ฟเวอร์ทดสอบในเครื่องสำหรับ WordPress? PS: ตอนนี้ฉันเห็นStack Overflow มีการสนทนาเกี่ยวกับเรื่องนี้

8
การโหลด JavaScript / CSS แบบมีเงื่อนไขสำหรับรหัสย่อ
ฉันปล่อยปลั๊กอินที่สร้างรหัสย่อและต้องใช้ไฟล์ JavaScript และไฟล์ CSS เพื่อโหลดในหน้าใด ๆ ที่มีรหัสย่อนั้น ฉันทำได้เพียงโหลดสคริปต์ / สไตล์ในทุกหน้า แต่นั่นไม่ใช่วิธีปฏิบัติที่ดีที่สุด ฉันต้องการโหลดไฟล์บนหน้าเว็บที่เรียกรหัสย่อเท่านั้น ฉันพบสองวิธีในการทำเช่นนี้ แต่ทั้งคู่มีปัญหา วิธีที่ 1ตั้งค่าสถานะเป็นจริงภายในฟังก์ชันตัวจัดการรหัสย่อและจากนั้นตรวจสอบค่าภายในการwp_footerเรียกกลับ หากเป็นจริงจะใช้wp_print_scripts()เพื่อโหลด JavaScript ปัญหานี้ก็คือว่ามันทำงานเฉพาะสำหรับ JavaScript และ CSS ไม่ได้เพราะ CSS ควรจะประกาศภายใน<head>ซึ่งคุณสามารถทำในช่วงต้นเบ็ดเหมือนหรือinitwp_head วิธีที่ 2เริ่มทำงานตั้งแต่เช้าและ "ดูล่วงหน้า" เพื่อดูว่ามีรหัสย่อในเนื้อหาของหน้าปัจจุบันหรือไม่ ผมชอบวิธีการนี้ดีกว่าครั้งแรก do_shortcode()แต่ปัญหาที่เกิดขึ้นกับมันมันจะไม่ตรวจสอบว่าสายแม่แบบ ดังนั้นฉันโน้มตัวไปใช้วิธีที่สองแล้วลองตรวจสอบว่ามีการกำหนดแม่แบบไว้หรือไม่และหากเป็นเช่นนั้นให้แยกวิเคราะห์สำหรับรหัสย่อ แม้ว่าก่อนหน้านั้นฉันต้องการตรวจสอบว่ามีใครรู้วิธีการที่ดีกว่านี้หรือไม่ อัปเดต:ฉันได้รวมโซลูชันไว้ในปลั๊กอินแล้ว ถ้าใครอยากรู้อยากเห็นที่จะเห็นมันโป่งพองออกมาในสภาพแวดล้อมที่อยู่คุณสามารถดาวน์โหลดได้หรือเรียกดูมัน อัปเดต 2:ในฐานะของ WordPress 3.3 ตอนนี้คุณสามารถโทรwp_enqueue_script()ภายในการโทรกลับด้วยรหัสย่อได้โดยตรงและไฟล์ JavaScript จะถูกเรียกภายในส่วนท้ายของเอกสาร ในทางเทคนิคนั้นเป็นไปได้สำหรับไฟล์ CSS เช่นกัน แต่ควรได้รับการพิจารณาว่าเป็นวิธีปฏิบัติที่ไม่ดีเนื่องจากการส่งออก CSS นอก<head>แท็กนั้นเป็นการละเมิดข้อกำหนดของ W3C สามารถเป็นกรณี …

12
meta_query ที่มีค่าเมตาเป็นอาร์เรย์ลำดับ
ฉันกำลังทำงานในโครงการที่ฉันสร้างประเภทโพสต์ที่กำหนดเองและข้อมูลที่กำหนดเองที่ป้อนผ่านกล่องเมตาที่เชื่อมโยงกับประเภทโพสต์ที่กำหนดเองของฉัน ไม่ว่าด้วยเหตุผลใดฉันจึงตัดสินใจเขียนโค้ดเมตาบ็อกในลักษณะที่อินพุตในแต่ละเมท็อกซ์เป็นส่วนหนึ่งของอาเรย์ ตัวอย่างเช่นฉันกำลังเก็บลองจิจูดและละติจูด: <p> <label for="latitude">Latitude:</label><br /> <input type="text" id="latitude" name="coordinates[latitude]" class="full-width" value="" /> </p> <p> <label for="longitude">Longitude:</label><br /> <input type="text" id="longitude" name="coordinates[longitude]" class="full-width" value="" /> </p> ไม่ว่าจะด้วยเหตุผลใดฉันชอบความคิดที่ว่ามีการเข้า postmeta เอกพจน์สำหรับแต่ละ metabox ที่save_postตะขอฉันบันทึกข้อมูลดังนี้: update_post_meta($post_id, '_coordinates', $_POST['coordinates']); ฉันทำสิ่งนี้เพราะฉันมีสาม metaboxes และฉันชอบเพียงแค่มี 3 postmeta ค่าสำหรับแต่ละโพสต์; อย่างไรก็ตามฉันได้ตระหนักถึงปัญหาที่อาจเกิดขึ้นกับสิ่งนี้แล้ว ฉันอาจต้องการใช้ WP_Query เพื่อดึงโพสต์บางอย่างตามค่าเมตาเหล่านี้ ตัวอย่างเช่นฉันอาจต้องการรับโพสต์ทั้งหมดที่มีค่าละติจูดสูงกว่า 50 หากฉันมีข้อมูลนี้ในฐานข้อมูลทีละรายการบางทีอาจใช้คีย์latitudeฉันจะทำสิ่งต่อไปนี้: $args = …

2
Meta_query เปรียบเทียบคำอธิบายของโอเปอเรเตอร์
ฉันสังเกตเห็นว่ามีกลุ่มตัวดำเนินการที่สามารถใช้สำหรับการเปรียบเทียบใน meta_query อย่างไรก็ตามฉันไม่แน่ใจว่าโอเปอเรเตอร์ที่ฉันควรใช้คืออะไรมันสับสน=และLIKEโอเปอเรเตอร์ ฉันต้องการทราบว่าผู้ให้บริการแต่ละรายมีความหมายอย่างไรและฉันควรใช้พวกเขาอย่างไร = != > >= < <= LIKE NOT LIKE IN NOT IN BETWEEN NOT BETWEEN NOT EXISTS ขอบคุณ

12
เรียงตามค่าเมตา แต่รวมถึงโพสต์ที่ไม่มี
ฉันแก้ไขการค้นหา WP ในตัวโดยใช้pre_get_postsตัวกรองทำให้ผู้ใช้สามารถเรียงลำดับโพสต์ (รวมถึงโพสต์ที่กำหนดเองจำนวนมาก) ตามเขตข้อมูลที่แตกต่างกัน ปัญหาที่ฉันมีอยู่ก็คือเมื่อฉันบอกให้ WP เรียงลำดับตามค่าเมตามันจะยกเว้นการโพสต์ทั้งหมดที่ไม่ได้ตั้งค่าเมตานั้น สิ่งนี้ทำให้จำนวนผลลัพธ์เปลี่ยนไปถ้าคุณเปลี่ยนการเรียงลำดับจากพูดว่า "ราคา" เป็น "วันที่" เนื่องจาก "โพสต์" ไม่มีการตั้งค่า "ราคา" แต่ทำ "รายการ" นี่ไม่ใช่สิ่งที่ฉันต้องการดังนั้นฉันจึงอยากทราบว่ามีวิธีการรวมโพสต์ทั้งหมดหรือไม่แม้ว่าจะมีเมตาดาต้าที่ฉันเรียงลำดับอยู่หรือไม่ก็ตาม ฉันรู้วิธีเรียงลำดับมากกว่าหนึ่งฟิลด์ แต่นั่นไม่ได้ช่วย ขอบคุณ ดูเหมือนว่าฉันไม่ใช่คนเดียวที่มีคำถามนี้: วิธีรวมโพสต์ทั้งที่มี & ไม่มี meta_key บางรายการใน args สำหรับ wp_query หรือไม่ แต่ก็ไม่มีทางออก ปรับปรุง ฉันลองคำตอบแล้ว แต่ไม่แน่ใจว่าฉันเข้าใจถูกต้องหรือไม่นี่คือสิ่งที่ฉันมีตอนนี้: <?php function my_stuff ($qry) { $qry->set('meta_query', array(array( 'key' => 'item_price', 'value' => '', 'compare' …

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