คำถามติดแท็ก custom-field

เขตข้อมูลที่กำหนดเองเป็นเขตข้อมูลที่สามารถเก็บข้อมูลพิเศษโดยพลการที่เรียกว่าเมตาดาต้า

1
วิธีเปิดใช้งานฟิลด์ที่กำหนดเองสำหรับหน้า (หากไม่ใช่วิธีปฏิบัติที่ไม่ดี)?
หน้าหลักของฉันมีภาพอินโทรอยู่ข้างเนื้อหาหลัก ฉันต้องการเพิ่มภาพนั้นโดยใช้ฟิลด์ที่กำหนดเอง ฉันสังเกตเห็นว่าหน้าเว็บไม่มี ฉันต้องการเปิดใช้งานพวกเขา มันเป็นการปฏิบัติที่ไม่ดีหรือไม่?

2
วิธีแสดงฟิลด์ที่กำหนดเองในคำสั่งซื้อของ woocommerce ในแผงการดูแลระบบ
ขณะนี้ฉันเพิ่มฟิลด์การเรียกเก็บเงินที่กำหนดเองใน woocommerce โดย function custom_override_checkout_fields( $fields ) { $fields['billing']['billing_phone_new'] = array( 'label' => __('Phone 2', 'woocommerce'), 'placeholder' => _x('Phone 2', 'placeholder', 'woocommerce'), 'required' => false, 'class' => array('form-row-wide'), 'clear' => true ); return $fields; } add_filter('woocommerce_checkout_fields','custom_override_checkout_fields'); ฉันต้องการแก้ไขค่าฟิลด์นี้ในด้านผู้ดูแลระบบ ขณะนี้ฉันสามารถแก้ไขค่าอื่น ๆ ทั้งหมดในที่อยู่สำหรับการเรียกเก็บเงินได้ แต่ค่านี้ไม่ปรากฏในส่วนผู้ดูแลระบบ ฉันใช้รหัสต่อไปนี้เพื่อดูค่าในส่วนผู้ดูแลระบบเท่านั้น function order_phone_backend($order){ echo "<p><strong>Billing phone 2:</strong> " . …

1
ACF เป็นกับดักน้ำผึ้งหรือไม่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันเป็นผู้พัฒนาสแต็คเต็มองค์กรและเริ่มใช้ ACF ตอนแรกฉันคิดว่า ACF เป็นโซลูชั่นแบบครบวงจรสำหรับเว็บไซต์ แต่หลังจากค้นคว้าเพิ่มเติมเกี่ยวกับอนุกรมวิธานฉันกลัวว่าการใช้มันจะส่งผลให้ db ที่ไม่มีประสิทธิภาพมาก ตัวอย่างเช่น: หากฉันมีประเภทโพสต์ที่กำหนดเองของพนักงานและหน่วยงานนี้มีเพศตามการวิจัยของฉัน taxonomy พร้อมกล่องเมตาสำหรับการเลือกหนึ่งค่าเป็นตัวเลือกที่ดีกว่า สิ่งคือ ACF นำคุณไปสู่การปรับใช้ฟิลด์ที่กำหนดเองเท่านั้น ฉันควรใช้โปรแกรมเสริมอื่น ๆ ที่รองรับ taxonomy หรือไม่? ฉันควรใช้ปลั๊กอินเสริมสำหรับอนุกรมวิธานหรือไม่ ฉันควรกังวลเกี่ยวกับเรื่องนี้หรือไม่

4
อย่าเผยแพร่โพสต์ประเภทโพสต์ที่กำหนดเองถ้าเขตข้อมูลเมตาไม่ถูกต้อง
ฉันมีประเภทโพสต์ที่กำหนดเอง (CPT) eventที่เรียกว่า ฉันมีเมตาบ็อกสำหรับประเภทที่มีหลายฟิลด์ ฉันต้องการตรวจสอบความถูกต้องของฟิลด์ก่อนที่จะเผยแพร่กิจกรรม ตัวอย่างเช่นหากไม่ระบุวันที่ของเหตุการณ์ฉันต้องการแสดงข้อความแสดงข้อผิดพลาดให้บันทึกเหตุการณ์สำหรับการแก้ไขในอนาคต แต่ป้องกันเหตุการณ์นั้นไม่ให้เผยแพร่ สถานะ 'รอดำเนินการ' สำหรับการโพสต์ CPT โดยไม่มีข้อมูลที่จำเป็นทั้งหมดเป็นวิธีที่เหมาะสมในการจัดการหรือไม่ มีวิธีปฏิบัติที่ดีที่สุดในการตรวจสอบความถูกต้องของฟิลด์ CPT และป้องกันไม่ให้โพสต์เผยแพร่ แต่บันทึกไว้เพื่อการแก้ไขในอนาคต ขอบคุณมาก Dasha

2
ฉันจะปรับปรุงตัวอย่างข้อความค้นหาของผู้ดูแลระบบนี้เพื่อหลีกเลี่ยงการสร้างผลลัพธ์ซ้ำซ้อนในการค้นหาที่ไม่ใช่เมตาได้อย่างไร
ฉันเล่นกับโค้ดขนาดเล็กซึ่งเพิ่มข้อมูล meta ไปยังการค้นหาของผู้ดูแลระบบ ตัวอย่างที่ดีที่สุดที่ฉันพบถูกเขียนโดยStefano ในคำถามนี้ อย่างไรก็ตามดูเหมือนว่าจะมีข้อผิดพลาดที่น่ารำคาญ 1 ข้อเมื่อค้นหาคำที่ไม่ใช่เมตา นี่คือบางส่วนจากการติดตั้ง dev ท้องถิ่นของฉัน ฉันพิมพ์แบบสอบถาม MySQL 2 รายการลงบนหน้าจอ มุมมองของโพสต์ CPT เดียวที่ฉันใช้ทดสอบ นี่คือรหัสที่ทำงานตามที่คาดไว้และอนุญาตให้ฉันค้นหาข้อมูลเมตาจากผู้ดูแลระบบ น่าเสียดายที่รหัสสร้างรายการซ้ำในการจับคู่ที่ไม่ใช่เมตาในกรณีนี้กับชื่อโพสต์ การคว้าแสดงสถานะการโพสต์ประเภทโพสต์และโพสต์บรรพบุรุษของการหลอก ! การคว้าแสดงสถานะการโพสต์ประเภทโพสต์และโพสต์บรรพบุรุษของคู่ นี่คือรหัสที่ฉันใช้อยู่โดยพื้นฐานแล้วมันก็เหมือนกับของ Stefano แต่ด้วยความพยายามอย่างหยาบของฉันในการทำให้คิวรีทำงาน /* * Search custom fields from admin keyword searches */ function rel_search_join( $join ) { global $pagenow, $wpdb; if ( is_admin() && $pagenow == …

2
ฟิลด์ที่กำหนดเอง / เมตาบรรจุด้วยการเลื่อนลงของโพสต์ที่มีอยู่?
(คำถาม WP แรกของฉันเคยถาม! ฉันกำลังสร้างเว็บไซต์ที่ส่วนใหญ่เป็นหน้าเว็บ (เช่นคงที่) โดยใช้ WP เป็น CMS ที่ด้านล่างของหลาย ๆ หน้าจะมี 1, 2, หรือ 3 "กล่องส่งเสริมการขาย" - โดยทั่วไปภาพปุ่มที่เชื่อมโยงไปยังส่วนอื่น ๆ ของเว็บไซต์ แม้ว่าจะมีเพียงกล่องโฆษณาถึง 3 กล่องเท่านั้นที่จะปรากฏในหน้าใดก็ตาม แต่จะมี ~ 30 กล่องให้เลือก เมื่อลูกค้าของฉันสร้างหน้าใหม่ฉันต้องการให้เขาสามารถเลือกกล่องส่งเสริมการขายจากสิ่งที่ชอบรายการแบบหล่นลงของกล่องส่งเสริมการขายที่เป็นไปได้ทั้งหมด ดูเหมือนว่าฉันนี้ควรทำงานเช่นนี้: สร้างประเภทโพสต์ที่กำหนดเองที่เรียกว่า "กล่องส่งเสริมการขาย" (แม้ว่ามันจะเป็นเพียงแท็กสำหรับโพสต์ทั่วไปได้) ใช้เครื่องมือเช่นCustom Field Templateเพื่อสร้างดรอปดาวน์ในตัวแก้ไขหน้าซึ่งค่าของตัวเลือกดรอปดาวน์จะถูกสร้างขึ้นแบบไดนามิกจากรายการโพสต์กล่องโปรโมชั่นที่มีอยู่ทั้งหมด ( นี่คือส่วนที่ฉันไม่รู้ว่าต้องทำอย่างไร ) เข้าถึงข้อมูลเมตาที่เกิดขึ้น (หมายเลขโพสต์เป็นสิ่งที่ฉันต้องการจริงๆแล้วฉันจะได้ทุกอย่างอื่น) บนเทมเพลตหน้า จากคำตอบของคำถามอื่น ๆ ที่นี่ฉันได้เริ่มต้นดูที่ WPAlchemy MetaBox, Posts-2-Posts, และ SLT …

4
มีตัวกรอง / ฮุกสำหรับการตรวจสอบความถูกต้องของฟิลด์ที่กำหนดเองก่อนเผยแพร่โพสต์หรือไม่?
xxxx_urlฉันได้เองยื่นเรียกว่า xxxx_urlควรจะไม่ซ้ำกัน ดังนั้นก่อนที่จะโพสต์โพสต์ฉันต้องการตรวจสอบให้แน่ใจว่าxxxx_urlมันไม่ซ้ำกันหรือไม่? หากไม่ซ้ำกันการโพสต์ควรถูกปฏิเสธ ฉันพยายามpublish_postแล้ว แต่นั่นไม่ใช่สิ่งที่ถูกต้องเนื่องจากมันจะทริกเกอร์เมื่อเราเผยแพร่โพสต์ ฉันต้องการเรียกใช้รหัสของฉันก่อนการเผยแพร่

5
มีวิธีตั้งค่าฟิลด์กำหนดเองเริ่มต้นเมื่อสร้างโพสต์หรือไม่
เมื่อฉันสร้างโพสต์ใหม่หลังจากคลิก "เพิ่มใหม่"เมื่อตัวแก้ไขโพสต์แสดงแทนที่จะต้องใช้เมนูดร็อปดาวน์และเลือกฟิลด์ที่กำหนดเองเพื่อใช้ฉันต้องการมีอินพุตฟิลด์ที่กำหนดเองเริ่มต้นอยู่แล้ว ปลายเปิด. มองเห็นได้แทนที่จะเป็น: ฉันต้องการที่จะมีสิ่งที่ชอบ: ฉันรู้ว่ามีปลั๊กอินสำหรับ (CPT, ฟิลด์เพิ่มเติม, ฯลฯ ) แต่ฉันต้องการวิธีง่ายๆในการใช้ฟังก์ชันพื้นฐาน ฉันลองทำสิ่งนี้ (ฉันใช้ประเภทผลิตภัณฑ์โพสต์ที่กำหนดเอง): function register_custom_fields( $post_ID ) { global $wpdb; if( !wp_is_post_revision( $post_ID ) ) { add_post_meta( $post_ID, 'reference', '', true); add_post_meta( $post_ID, 'price', '', true); } } add_action('edit_product', 'register_custom_fields'); แต่ดูเหมือนจะไม่ทำงาน ฉันคิดว่า hook อาจผิด (เพราะedit_postมาหลังจากอัปเดต) แต่ฉันไม่เห็น hook สำหรับ "new post" …

2
พารามิเตอร์“ meta_input” ใน wp_insert_post () ใช้ทำอะไร
ฉันกำลังแทรกโพสต์ลงใน WordPress ใช้ฟังก์ชันwp_insert_post () ฉันต้องการแทรกบางฟิลด์ที่กำหนดเองในแต่ละโพสต์และอ่านเอกสารฉันแม้ว่าพารามิเตอร์ meta_info ถูกใช้สำหรับสิ่งนั้นฉันลองดังนี้: $data = array( 'post_author' => 1, 'post_status' => 'publish', 'post_title' => $post->getTitle(), 'post_content' => $post->getContent(), 'post_category' => $post->getCategory(), 'tags_input' => $post->getTags(), 'meta_input' => array( "_test" => "testx1" ) ); $postID = wp_insert_post( $data ); โพสต์ได้รับการแทรกอย่างถูกต้องและแท็กด้วย แต่ไม่มีการเพิ่มฟิลด์ที่กำหนดเอง ฉันรู้ว่าฉันสามารถใช้add_post_meta ()เพื่อเพิ่มได้ แต่ฉันยังต้องการทราบว่าใช้พารามิเตอร์meta_inputเพราะฉันค้นหาในฐานข้อมูลสำหรับ "testx1" หลังจากแทรกโพสต์และไม่พบผลลัพธ์ใด ๆ

3
ลบ Dimension ออกจาก wp_get_attachment_image
ฉันประสบปัญหาในการลบความกว้างและความสูงออกจากรูปภาพที่แนบมาเมื่อใช้ wp_get_attachment_image นี่คือสิ่งที่ฉันใช้ในการแสดงภาพ <?php echo $image = wp_get_attachment_image( $entry['slide_image_id'], true, 'full'); ?> มันดูที่ซอร์สโค้ดอย่างไร <img width="150" height="108" src="http://website:8888/wp-content/uploads/2015/12/cupcakes-and-cosmetics-logo.png" class="attachment-1 size-1" alt="cupcakes-and-cosmetics-logo" /> ฉันต้องการให้มันแสดงเช่นนี้ <img src="http://website:8888/wp-content/uploads/2015/12/cupcakes-and-cosmetics-logo.png" class="attachment-1 size-1" alt="cupcakes-and-cosmetics-logo" /> รูปภาพกำลังถูกดึงจากฟิลด์ไฟล์ที่ทำซ้ำได้ด้วยรายการที่มี id ของ slide_image_id ฉันได้รับการมองไปรอบ ๆ และมีการแจ้งให้ใช้ wp_get_attachment_image_url แต่เมื่อฉันใช้มันด้วยรหัสข้างต้นภาพจะไม่แสดง มีบางอย่างที่ฉันทำผิดหรือเปล่า? <?php echo $image = wp_get_attachment_image_url( $entry['slide_image_id'], true, 'full'); ?> หมายเหตุด้านข้าง: $ entry …

4
Orderby meta_value ส่งคืนโพสต์ที่มี meta_key อยู่แล้วเท่านั้น
ฉันมี wp_query ต่อไปนี้: $args = array( 'post_type' => 'news', 'orderby' => 'meta_key', 'order' => 'ASC', 'meta_key'=>'custom_author_name', 'post_per_page'=>-1 ); $query = new WP_Query($args); echo $query->found_posts; ผลสะท้อน = 10 เพราะมีเพียง 10 โพสต์ด้วยnews meta_key = custom_author_nameแต่มีnewsโพสต์หลายร้อยรายการที่ไม่มีแถว post_meta พร้อม meta_key เฉพาะนั้น โปรดสังเกตว่า meta_query ไม่มีส่วนเกี่ยวข้อง ไม่มีการกำหนด meta_value เนื่องจากฉันพยายามเรียงลำดับโพสต์ตาม meta_key เท่านั้นและไม่กรองตาม meta_value ไม่ควรสั่งซื้อโดยเลือกโพสต์ทั้งหมด? และเพียงแค่สั่งพวกเขา? ถ้าใช่เหตุใดจึงมีการกรองผลลัพธ์ หากไม่พบ …

3
ผลฟิลด์เมตาโพสต์ที่กำหนดเองเกี่ยวกับประสิทธิภาพของโพสต์
ฉันมีโพสต์ที่มีเขตข้อมูลเมตาที่กำหนดเองจำนวนมาก get_post_metaในโพสต์ฉันกำลังเรียกพวกเขาอยู่กับความต้องการใช้ หมายถึงเขตข้อมูลเมตา 10 ช่องที่ฉันใช้อยู่ 10 ครั้ง ฉันทำถูกไหม? หมายถึงมีปัญหาประสิทธิภาพการทำงานด้วยวิธีการดังกล่าวข้างต้นและถ้าใช่แล้ววิธีการลดจำนวนการโทร ฉันตระหนักถึงคำตอบที่มีอยู่ที่นี่: ฟิลด์ที่กำหนดเองและประสิทธิภาพซึ่งอธิบายว่าการใช้ 'แบบสอบถามเดียว' แต่มันไม่ชัดเจนและมีเสียงดังนั้นขอให้อีกครั้งถ้าใครรู้และต้องการแบ่งปันในรายละเอียด

1
ดัชนี [0] สำหรับบนเขตข้อมูลโพสต์คืออะไร
พยายามปรับปรุงความรู้ PHP ของฉันผ่านการทดสอบและลอง! ฉันสับสนใน [0] อาร์กิวเมนต์ที่ติดตามโค้ด PHP PHP global $post; $custom = get_post_custom($post->ID); $price = $custom['price'][0]; $coMake = $custom['coMake'][0]; echo $custom['price'][0]; พวกเขาสำหรับการจัดทำดัชนี / อ้างอิงอ้างอิงในหน้า? ถ้าเป็นเช่นนั้นทำไมพวกเขาเหมือนกัน! คุณช่วยบอกฉันทีว่าทำไมและเมื่อไหร่ที่จะใช้มัน?

3
เพิ่มตัวเลือกโดยทางโปรแกรมเพื่อ "เพิ่มใหม่" ฟิลด์แบบเลื่อนลง
ฉันจะเพิ่มตัวเลือกที่กำหนดไว้ล่วงหน้าลงในดร็อปดาวน์ฟิลด์ที่กำหนดเอง "เพิ่มใหม่" ได้อย่างไร นี่คือสองตัวอย่างของการเพิ่มและแสดงฟิลด์ที่กำหนดเองใหม่โดยอัตโนมัติ: WordPress: การเพิ่มฟิลด์ที่กำหนดเองเริ่มต้นในกระทู้ใหม่ สร้างฟิลด์ที่กำหนดเองอัตโนมัติ นั่นใกล้เคียงกับสิ่งที่ฉันต้องการจะทำ; เป้าหมายของฉันคือการเพิ่มตัวเลือกที่กำหนดไว้ล่วงหน้าลงในดรอปดาวน์ "เพิ่มใหม่" ที่กำหนดเอง แต่ไม่ได้แสดงเป็นฟิลด์จนกว่า Blogger จะเพิ่มพวกเขา ฉันต้องการทราบวิธีการทำเช่นนี้โดยไม่ต้องใช้ปลั๊กอิน

1
การใช้ meta_query ฉันจะกรองตามฟิลด์ที่กำหนดเองและสั่งซื้อจากฟิลด์อื่นได้อย่างไร
ด้วยรหัสต่อไปนี้ (ใน function.php) โพสต์ของฉัน (จากเหตุการณ์ CPT) ถูกจัดเรียงโดย _end_date แทน _start_date อะไรคือทางออกที่ถูกต้องสำหรับ WP 3.1.3? meta_keyแน่นอนผมต้องการที่จะหลีกเลี่ยงการใช้เลิกใช้ add_filter( 'pre_get_posts', 'my_get_posts' ); function my_get_posts( $query ) { if ( is_home() ) { $query->set( 'post_type', 'event' ); $query->set( 'meta_key', '_start_date' ); $query->set( 'orderby', 'meta_value_num' ); $query->set( 'order', 'ASC' ); $query->set( 'meta_query', array( array( 'key' => …

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