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

การดัดแปลงไฟล์ธีมและปลั๊กอินเพื่อสร้างฟังก์ชั่นใหม่

7
จะลบหน้าเมนูผู้ดูแลระบบที่แทรกโดยปลั๊กอินได้อย่างไร
ฉันได้รับรหัสต่อไปนี้ซึ่งล้างข้อมูลจำนวนมากที่ไม่ได้ใช้ในพื้นที่การดูแล: add_action( 'admin_menu', 'my_remove_menu_pages' ); function my_remove_menu_pages() { remove_menu_page( 'edit.php' ); //Posts remove_menu_page( 'upload.php' ); //Media remove_menu_page( 'edit-comments.php' ); //Comments remove_menu_page( 'themes.php' ); //Appearance remove_menu_page( 'users.php' ); //Users remove_menu_page( 'tools.php' ); //Tools remove_menu_page( 'options-general.php' ); //Settings }; อย่างไรก็ตามมีสองรายการเมนูที่ถูกแทรกจากปลั๊กอิน เมื่อฉันวางเมาส์เหนือรายการเมนูแต่ละรายการมันบอกว่าลิงค์คือ: /wp-admin/edit.php?post_type=acf /wp-admin/admin.php?page=wpcf7 มีวิธีซ่อนหน้าเมนูเหล่านี้ด้วยหรือไม่

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

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 สามารถเป็นกรณี …

4
การประสานฐานข้อมูลระหว่าง dev / การ staging และการผลิต
ฉันมีปัญหากับการซิงโครไนซ์ฐานข้อมูล WordPress ระหว่างการพัฒนาและการผลิตและฉันสงสัยว่าคนอื่นแก้ปัญหาได้อย่างไร ฉันรู้เกี่ยวกับคำถามนี้แต่มันก็ไม่ครอบคลุมถึงกรณีการใช้งานที่น่ารังเกียจและเป็นจริงมากกว่านี้ บอกว่าฉันมีเว็บไซต์ WordPress อยู่ ฉันเอาทุกอย่างไปทำซ้ำมันในสภาพแวดล้อมการพัฒนาของเรา ฉันเริ่มทำการเปลี่ยนแปลง 1 สัปดาห์ต่อมาฉันพร้อมที่จะปรับใช้การอัปเดตของฉัน ในระหว่างนี้ฐานข้อมูลในไซต์การผลิตมีการเปลี่ยนแปลง (โพสต์ใหม่ความคิดเห็นใหม่ ฯลฯ ) ฉันจะซิงโครไนซ์การเปลี่ยนแปลงระหว่างการผลิตและการพัฒนาในช่วงการเปิดตัวและเป็นไปได้ที่จะทำให้กระบวนการนี้เป็นอัตโนมัติ (อย่างน้อยค่อนข้าง) หรือไม่

4
เป็นวิธีที่ถูกต้องในการเปรียบเทียบวันที่ใน WP query_posts meta_query
ฉันมีการสืบค้น query_posts ในเทมเพลต WP ด้วยการใช้ปลั๊กอิน More Fields ฉันสามารถให้ความสามารถแก่ผู้ดูแลไซต์ในการสร้างกิจกรรม (ประเภทโพสต์ที่กำหนดเอง) จากนั้นป้อนวันที่ซึ่งจัดรูปแบบแล้ว: YYYY / mm / dd คำถามหลักคือ; ฉันควรส่งผ่านค่าใดไปยังตัวเลือกค่าในอาร์เรย์ meta_query ขณะนี้ฉันกำลังพยายามผ่าน "วันที่ (" Y / m / dh: ฉัน A ")" (ลบเครื่องหมายคำพูด) เนื่องจากฉันเข้าใจแล้วว่าจะพิมพ์วันที่ปัจจุบันวันนี้ ฉันไม่สนใจเกี่ยวกับช่วงเวลาที่จะไม่เกี่ยวข้อง Ulitimatly ฉันพยายามใช้ตัวเลือกการเปรียบเทียบเพื่อแสดงเหตุการณ์ที่กำลังจะเกิดขึ้นเหตุการณ์ที่ผ่านมาในสถานที่ต่าง ๆ ในเว็บไซต์นี้ ในอีกจุดหนึ่งที่จริงฉันต้องผ่านตัวเลือกค่าอาร์เรย์ที่พิมพ์ว่าวันแรกและวันสุดท้ายของเดือนปัจจุบัน จำกัด การส่งออกไปยังเหตุการณ์ที่เกิดขึ้นในเดือนนี้ <?php query_posts( array( 'post_type' => 'event', // only query events 'meta_key' …

11
วิธีที่ดีที่สุดในการเรียกใช้งานสคริปต์ครั้งเดียวของคุณคืออะไร?
ปัญหา เราทุกคนตกอยู่ในสถานการณ์เช่นนี้และคำถามมากมายในเว็บไซต์นี้ต้องการทางออกเช่นนี้ คุณต้องอัปเดตฐานข้อมูลแทรกข้อมูลจำนวนมากโดยอัตโนมัติแปลงmeta_keysหรือสิ่งที่คล้ายกัน แน่นอนในระบบที่ใช้งานตามแนวปฏิบัติที่ดีที่สุดสิ่งนี้ไม่ควรเกิดขึ้น แต่ถ้าเป็นเช่นนั้นฉันชอบที่จะได้ยินคำตอบส่วนตัวของคุณเกี่ยวกับปัญหานี้และทำไมคุณเลือกคุณ คำถาม คุณใช้สคริปต์แบบครั้งเดียวในการติดตั้ง WordPress ของคุณได้อย่างไร ปัญหาที่นี่ส่วนใหญ่เป็นเพราะเหตุผลดังต่อไปนี้: สคริปต์ที่แทรกข้อมูลไม่ควรรันมากกว่าหนึ่งครั้ง สคริปต์ที่ต้องใช้ทรัพยากรจำนวนมากไม่ควรเรียกใช้ในเวลาที่ไม่สามารถตรวจสอบได้ ไม่ควรดำเนินการโดยไม่ตั้งใจ เหตุผลที่ฉันถาม ฉันได้รับการฝึกฝนของตัวเองฉันจะโพสต์ในคำตอบ อย่างที่ฉันไม่รู้ว่ามันเป็นทางออกที่ดีที่สุดหรือไม่ฉันต้องการทราบเกี่ยวกับคุณ นอกจากนี้คำถามนี้ถูกถามบ่อยครั้งในบริบทของคำถามอื่น ๆ และจะเป็นการดีหากมีแหล่งข้อมูลที่รวบรวมความคิด รอคอยที่จะเรียนรู้จากคุณ :)

4
วิธีการใช้การรับรองความถูกต้อง OpenID ฟรีที่ปรับแต่งได้
OpenID เป็นมาตรฐานที่ใช้กันทั่วไปในปัจจุบัน ฉันกำลังพยายามใช้งาน OpenID บนบล็อกของฉัน แต่ฉันมีปัญหามากมาย ฉันลองใช้ปลั๊กอิน OpenIDแต่ดูเหมือนว่าจะไม่เข้ากับ Wordpress 3.0 ฉันลองปลั๊กอินของ Janrain ด้วยแต่เวอร์ชั่นฟรีนั้น จำกัด เกินไป ฉันต้องการที่จะรวมหน้าจอเข้าสู่ระบบในรูปแบบบล็อกของฉัน คุณมีข้อเสนอแนะวิธีดำเนินการต่อหรือไม่? ปลั๊กอินอื่น ๆ ? หรือไลบรารี PHP ใด ๆ ที่สามารถปรับให้เข้ากับการรวมกับ Wordpress ได้ง่าย?

2
วิธีการเพิ่มฟิลด์แบบฟอร์มที่กำหนดเองไปยังหน้าโปรไฟล์ผู้ใช้
หน้าโปรไฟล์ผู้ใช้มีฟิลด์ต่อไปนี้: ชื่อผู้ใช้ ชื่อ นามสกุล ชื่อเล่นชื่อที่ติดต่อข้อมูลอีเมลเว็บไซต์ AIM Yahoo IM Jabber / Google Talk สามารถเพิ่มฟิลด์เพิ่มเติมลงในส่วนนี้ได้อย่างไร ฟิลด์เช่นหมายเลขโทรศัพท์ที่อยู่หรือสิ่งอื่นใด

5
ปลั๊กอินทั้งหมดควรถูกห่อหุ้มในคลาสหรือไม่?
เมื่อมีการพัฒนาปลั๊กอินควรมีการจัดกลุ่มฟังก์ชั่นเข้าด้วยกันเป็น Class เพื่อหลีกเลี่ยงความขัดแย้งของ namespace หรือไม่? การใช้คลาสสร้างค่าใช้จ่ายด้านประสิทธิภาพสำหรับ PHP หรือไม่ หากมีการเข้าชมประสิทธิภาพชื่อฟังก์ชันควรได้รับการแก้ไขล่วงหน้าแทนหรือไม่

7
เพิ่มการตรวจสอบและการจัดการข้อผิดพลาดเมื่อบันทึกฟิลด์ที่กำหนดเองหรือไม่
ฉันมีฟังก์ชั่นที่กำหนดฟิลด์ที่กำหนดเองในประเภทโพสต์ สมมติว่าฟิลด์นั้นเป็น "subhead" เมื่อบันทึกโพสต์แล้วฉันต้องการตรวจสอบความถูกต้องของอินพุตและแสดงข้อความแสดงข้อผิดพลาดบนหน้าจอแก้ไขโพสต์หากจำเป็น สิ่งที่ต้องการ: // Handle post updating function wpse_update_post_custom_values($post_id, $post) { // Do some checking... if($_POST['subhead'] != 'value i expect') { // Add an error here $errors->add('oops', 'There was an error.'); } return $errors; } add_action('save_post','wpse_update_post_custom_values',1,2); ฉันพยายามเชื่อมโยงสิ่งนี้กับการกระทำ save_post แต่ฉันไม่สามารถหาวิธีจัดการข้อผิดพลาดได้ ดูเหมือนจะไม่มีวัตถุข้อผิดพลาดที่ส่งผ่านไปยังฟังก์ชั่นและถ้าฉันสร้าง WP_Error obj ของฉันเองและส่งคืนมันก็ไม่ได้รับความเคารพจากกลไกใด ๆ ที่แยกแยะข้อผิดพลาดในหน้าแก้ไขการโพสต์ ขณะนี้ฉันมีข้อความแสดงข้อผิดพลาดบนหน้าภายในกล่องเมตาที่กำหนดเองของฉัน แต่นี่น้อยกว่าอุดมคติ - …


5
ทำไมถึงมี <? php และ?> ทุกบรรทัด
ฉันเคยเห็นอนุสัญญานี้เกือบทุกที่และบางครั้งมันก็ใกล้เคียงกับการขับรถฉัน: &lt;?php //The loop ?&gt; &lt;?php while ( have_posts() ) : the_post(); ?&gt; &lt;?php the_content(); ?&gt; &lt;?php endwhile; // end of the loop. ?&gt; ตำแหน่งที่&lt;?phpและปิด?&gt;อยู่ในทุกบรรทัดแม้ว่าจะไม่มีโค้ด HTML แทรกแซงก็ตาม คำถามของฉันคือ: ทำไม เหตุใดจึงต้องรวมแท็กพิเศษทั้งหมดเหล่านี้ด้วย สำหรับฉันดูเหมือนว่าอนุสัญญานี้จะเพิ่มความยุ่งเหยิงในรหัสจำนวนมากเป็นเรื่องที่น่ารำคาญที่จะตามมาในตอนแรกและเพิ่มสถานที่อีกหลายแห่งที่ไม่ตั้งใจที่จะเปิดแท็กเปิดหรือปิดโดยไม่ตั้งใจ บันทึก นี่คือรหัสที่ดึงมาจากชุดรูปแบบ Twenty-Twelve ตัวอย่างที่ได้รับจาก WordPress

3
วิธีรับการตั้งค่ารูปแบบวันที่และรูปแบบเวลาสำหรับใช้ในแม่แบบของฉัน
นี่เป็นคำถามที่แปลก แต่ฉันต้องการทราบว่าฉันสามารถเข้าถึงการตั้งค่าวันที่และเวลาได้อย่างไร Admin &gt; Settings &gt; General &gt; Date Format Admin &gt; Settings &gt; General &gt; Time Format ฉันใช้ปลั๊กอิน Any + Time jQueryเป็นตัวเลือกวันที่ / เวลาสำหรับมุมมองบรรณาธิการสำหรับประเภทโพสต์ที่กำหนดเอง จะช่วยให้คุณสามารถระบุวันที่และเวลารูปแบบที่ใช้การตั้งค่าเดียวกัน WordPress ไม่ แก้ไข: ปรากฎว่ามันไม่ได้ใช้โทเค็นส่วนวันเดียวกับที่ WordPress ใช้ กะพร่องกะแพร่ง. http://www.ama3.com/anytime/#AnyTime.Converter.format เป็นการดีที่ฉันต้องการทำบางสิ่งเช่นนี้ ... &lt;?php $wpDateFormat = get_admin_settings('DateFormat'); // $wpDateFormat now holds something like "F j, Y" ?&gt; …

2
คำอธิบายของ update_post_ (meta / term) _cache
ฉันได้อ่านแนวทางปฏิบัติที่ดีที่สุดตั้งแต่ 10up ขึ้นไปและพวกเขากล่าวถึงการตั้งค่าสถานะทั้งสองนี้เป็นเท็จใน WP_Query (ขึ้นอยู่กับสิ่งที่คุณกำลังสอบถาม): 'update_post_meta_cache' =&gt; false: มีประโยชน์เมื่อโพสต์เมตาจะไม่ถูกใช้ 'update_post_term_cache' =&gt; false: มีประโยชน์เมื่อไม่มีการใช้ข้อกำหนดเรื่องอนุกรมวิธาน ฉันสมมติว่ามันใช้ประโยชน์บางอย่างupdate_post_caches()แต่ฉันไม่แน่ใจ 100% ว่ามันหมายความว่าอย่างไร ใครช่วยอธิบายความหมายของธงทั้งสองนี้ในWP_Queryและมีประโยชน์อย่างไร ข้อมูลที่มากขึ้นดีกว่าเพราะฉันไม่รู้มากเกี่ยวกับว่า WordPress เก็บสิ่งต่าง ๆ อย่างไร

2
เพิ่มฟิลด์ที่กำหนดเองหลายรายการในหน้าการตั้งค่าทั่วไป
สิ่งที่ฉันต้องการจะทำคือการเพิ่มฟิลด์ที่กำหนดเองสองสามอย่างให้กับการตั้งค่าทั่วไป นี่คือรหัสที่ฉันใช้ มันใช้งานได้ดี แต่ฉันไม่สามารถคิดได้ว่าจะเพิ่มฟิลด์เพิ่มเติมได้อย่างไร ฉันต้องการสร้างสองฟิลด์สำหรับตอนนี้หนึ่งฟิลด์สำหรับหมายเลขโทรศัพท์และอีกฟิลด์หนึ่งสำหรับที่อยู่: function register_fields() { register_setting('general', 'my_first_field', 'esc_attr'); add_settings_field('my_first_field', '&lt;label for="my_first_field"&gt;'.__('My Field' , 'my_first_field' ).'&lt;/label&gt;' , 'print_custom_field', 'general'); } function print_custom_field() { $value = get_option( 'my_first_field', '' ); echo '&lt;input type="text" id="my_first_field" name="my_first_field" value="' . $value . '" /&gt;'; } add_filter('admin_init', 'register_fields'); วิธีเดียวที่ฉันจัดการเพื่อให้มันทำงานได้กับหลาย ๆ ฟิลด์คือการทำซ้ำทุกอย่าง ดังนั้นมันจะเป็นดังนี้: function …

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