WordPress

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

1
การบันทึก data-URI ไปยังไลบรารีสื่อ
ฉันมีปลั๊กอิน TinyMCEที่สร้างภาพ PNG โดยใช้HTMLCanvasElement.toDataURL()( MDN ) ขณะนี้ฉันเพิ่งแสดงไว้ที่แบ็กเอนด์โดยใส่ data-URI ลงในแท็กรูปภาพ แต่ฉันต้องการเพิ่มสิ่งเหล่านี้ใน WordPress Media Library อะไรคือวิธีที่ดีที่สุด (เช่นเข้ากันได้กับมาตรฐานวีไอพี) ของการอัปโหลดภาพที่ต่อเนื่องกันเป็น base64-encoded data-URI นี่คือฟังก์ชั่นอัพโหลดของฉัน: <?php /** * AJAX callback that inserts chart as attachment into the WP database */ public static function insert_axis_attachment() { // Get config $axis_config = json_decode( $_POST['axisConfig'] ); if ( ! …

2
การเพิ่มเมตาแท็กโดยไม่มีปลั๊กอิน
เป็นไปได้หรือไม่ที่จะเพิ่มชื่อเมตาคำอธิบายเมตาคำสำคัญเมตาในทุก ๆ หน้าโดยไม่ต้องติดตั้งปลั๊กอิน ลูกค้าของฉันไม่ต้องการติดตั้งปลั๊กอิน ฉันอยากรู้เกี่ยวกับกรณีนี้สิ่งที่ฉันรู้คือผู้ดูแลระบบควรติดตั้งปลั๊กอิน seo ในเวิร์ดเพรสของพวกเขาเพื่อให้มีการแทรกเมตา
9 post-meta  seo 

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

1
การแทรกคำลงในอนุกรมวิธานที่กำหนดเอง
ทำ taxonomy แบบกำหนดเองนี้ที่จะควบคุมเลย์เอาต์ในโพสต์เดียวโดยทั่วไปฉันต้องการเพิ่มสองตัวเลือกคือเลย์เอาต์ 1 และเลย์เอาต์ 2 // Register Custom Taxonomy function custom_taxonomy() { $labels = array( 'name' => _x( 'Layout', 'Taxonomy General Name', 'text_domain' ), 'singular_name' => _x( 'Layout', 'Taxonomy Singular Name', 'text_domain' ), 'menu_name' => __( 'Taxonomy', 'text_domain' ), 'all_items' => __( 'All Items', 'text_domain' ), 'parent_item' => __( …

3
วิธีเพิ่มภาพลงใน taxonomies?
ถาม:เป็นไปได้ไหมที่จะเพิ่มภาพลงใน taxonomies ทั้งหมดของฉัน (ค่าเริ่มต้นและแบบกำหนดเอง)? หมายเหตุ:ฉันไม่ต้องการใช้ปลั๊กอินใด ๆ (ไม่ใช่โซลูชันที่ฉันโปรดปรานสำหรับการออกแบบที่เกี่ยวข้อง) การใช้งาน:ฉันต้องการสร้างพอร์ตโฟลิโอประเภทโพสต์ที่กำหนดเองได้จริงพร้อมกับ taxonomies ที่กำหนดเอง ตัวอย่างเช่นอนุกรมวิธานที่กำหนดเอง - ลูกค้าดังนั้นหากหลายโครงการจากลูกค้า / ลูกค้าเดียวกันจะได้รับการพิจารณาและในเวลาเดียวกันฉันสามารถใช้อนุกรมวิธานเป็นตู้โชว์ของลูกค้าของฉัน การใช้งานที่คล้ายกันจะไปกับ taxonomies ของฉันเกือบจะ (ไม่ว่าจะมีการจัดเก็บภาษีอนุกรมวิธานที่มีภาพและคำอธิบายใน) คำแนะนำการปฏิบัติที่ดีที่นี่? ขอบคุณล่วงหน้า Clarification:ฉันต้องการเพิ่มภาพไปยังเงื่อนไขของ taxonomies ที่กำหนดเองของฉัน ตัวอย่างประเภทโพสต์ที่กำหนดเอง 'ผลงาน' ที่มี taxonomy แบบกำหนดเอง 'ลูกค้า' ซึ่งคำว่า 'ลูกค้า' แต่ละคำ (ให้บอกว่า Adidas) จะมีโลโก้ติดอยู่

2
วิธีการทำให้สถานะเปิด / ปิดและซ่อน / แสดง metaboxes บันทึกไว้ในแต่ละโพสต์?
ปัญหาที่แท้จริงของฉันค่อนข้างซับซ้อนดังนั้นฉันจะลองที่นี่เพื่อทำให้เป็นนามธรรมและทำให้มันง่าย ฉันกำลังทำงานกับแอพที่กำหนดเองโดยใช้ WordPress ฉันลงทะเบียนประเภทโพสต์ที่กำหนดเองมาเรียกมันว่า "คน" ที่ฉันเก็บข้อมูลเกี่ยวกับ ... คน CPT รองรับเฉพาะชื่อเรื่องการโพสต์และฟิลด์เริ่มต้นของเนื้อหาโพสต์ แต่มีเมท็อกซ์เพื่อเก็บข้อมูลบุคคล (คิดว่าแอพของฉันเป็นสมุดที่อยู่) ดังนั้นมี metabox ในการจัดเก็บข้อมูลส่วนบุคคลหนึ่งในการจัดเก็บข้อมูลเครือข่ายสังคมอีกเพื่อจัดเก็บข้อมูลที่เกี่ยวข้องกับการทำงานคือถ้าคนนั้นคือฉันลูกค้าลูกค้าซัพพลายเออร์ถ้าเรามีเครดิตหรือเดบิต ... ฉันทำให้มันง่ายขึ้นที่นี่ แต่มีจำนวนของ metaboxes ที่สอดคล้องกันสมมุติว่า 12 ปัญหาของฉันคือบางคนที่ฉันต้องการจัดเก็บข้อมูลเป็นเพียงการติดต่อแบบสุ่มและฉันต้องการเก็บเฉพาะข้อมูลส่วนบุคคลอื่น ๆ เป็นเพื่อนและฉันต้องการเก็บข้อมูลส่วนบุคคลและข้อมูลเครือข่ายสังคมอื่น ๆ คือลูกค้าหรือซัพพลายเออร์และฉัน ต้องการเก็บข้อมูลที่เกี่ยวข้องกับงาน หากเมื่อแก้ไขโพสต์ฉันซ่อน (ผ่านเมนูตัวเลือกหน้าจอ ) หรือปิดเมท็อกซ์ที่ฉันไม่ต้องการเมื่อฉันเปิดโพสต์อื่นที่ฉันต้องการพวกเขาฉันต้องแสดงหรือเปิดอีกครั้ง นั่นเพราะ metaboxes ตำแหน่ง / / สถานะการสั่งซื้อจะถูกบันทึกไว้บนพื้นฐานต่อผู้ใช้เป็นข้อมูลเมตาของผู้ใช้ หากคุณนึกภาพในบางโพสต์ฉันต้องการเมท็อก 2 ตัวในบาง 10 และใน 5 คุณเข้าใจว่ามันน่ารำคาญเพราะการแสดงทั้งหมด / เปิดทำให้หน้าจอแก้ไขสามารถเข้าถึงได้ต่ำ (แถบเลื่อนดูเหมือนไม่มีที่สิ้นสุด) และบางครั้งข้อมูลที่ฉันมองหาคือ ในตอนท้ายของหน้าหลังจากกลุ่มของ metaboxes …
9 metabox 

3
ความแตกต่างระหว่างฟังก์ชั่น the_permalink () และ get_permalink ()
ใน WordPress ฉันใช้ทั้งสองthe_permalink()และget_permalink()ฟังก์ชั่น แต่ฉันไม่สามารถรับความแตกต่างในการส่งออกของทั้งสองฟังก์ชั่น ความแตกต่างระหว่างฟังก์ชั่นทั้งสองคืออะไร?

1
เป็นไปได้หรือไม่ที่จะขยายวิธีการกำหนด JS เอง
ฉันสงสัยว่าถ้ามันเป็นไปได้ที่จะขยายวิธีการของการที่ไม่ระบุชื่อวัตถุที่อยู่ในapi wp-admin/js/customize-control.jsฉันต้องการเขียนทับหนึ่งในวิธีการเหล่านี้ด้วยตรรกะที่กำหนดเองของฉัน แต่ฉันสงสัยว่ามันเป็นไปไม่ได้เนื่องจากมันถูกห่อหุ้มด้วยการแสดงออกของฟังก์ชั่นที่เรียกใช้ทันที: /* globals _wpCustomizeHeader, _wpMediaViewsL10n */ (function( exports, $ ){ // code })( wp, jQuery ); window.wp.customizeเท่าที่ผมสามารถมองเห็นฉันไม่สามารถที่จะขยายต้นแบบจากวัตถุหน้าต่างเพราะมันดำเนินการไม่ระบุชื่อและไม่สามารถใช้ได้จาก ความคิดใด ๆ ถ้าสิ่งนั้นเป็นไปได้? แม้จะมีการพูดถึงการเอาชนะสิ่งนี้ในเอกสาร. toggle () วิธีการ / คำอธิบาย: https://github.com/WordPress/WordPress/blob/master/wp-admin/js/customize-controls.js#L110แต่ฉัน ไม่แน่ใจว่าพวกเขาหมายถึงเพียงแค่การฟอร์กไฟล์ JS ทั้งหมดทำการถอนคิวรุ่น WP และจัดคิวของคุณเองหรือถ้าพวกมันมีความหมายหรืออะไรที่แตกต่างออกไป โปรดทราบว่าดูเหมือนว่าควรจะเป็นไปได้ด้วยwp.customize.{method}.extend({ foo: // replace method foo here })แต่จะใช้กับคลาส / วัตถุฐานสาธารณะเท่านั้นไม่ใช่ในwp-admin/js/customize-control.js

4
เพิ่ม Javascript ลงในเมนู WordPress
มีวิธีในการวางจาวาสคริปต์ในส่วน URL ของรายการเมนู WordPress หรือไม่? ฉันมีฟังก์ชั่นการแชทสดบนเว็บไซต์ของฉันและฉันควรจะวางโค้ดนี้ลงบนเว็บไซต์เพื่อสร้างลิงค์เพื่อเปิดการแชทสด (ตามที่แนะนำไว้ที่นี่) <!-- BEGIN OLARK CHAT LINK --> <a href="javascript:void(0);" onclick="olark('api.box.expand')"> Click here to chat! </a> <!-- END OLARK CHAT LINK --> ลูกค้าต้องการลิงค์ในแถบนำทางยูทิลิตี้ซึ่งสร้างขึ้นโดยใช้เมนู WordPress ในแดชบอร์ดของ WordPress แต่เมื่อฉันคัดลอกและวางjavascript:void(0);" onclick="olark('api.box.expand')ลงในช่อง URL ในแดชบอร์ด WordPress มันเพิ่งหายไปและลิงค์ยังคงไม่ทำงาน บางสิ่งที่ฉันอ่านบอกว่าบางทีฉันสามารถวางคลาสที่กำหนดเองบนลิงก์ที่เป็นปัญหาแล้วเขียนฟังก์ชัน Javascript ที่จะเริ่มทำงานเมื่อมีการคลิกลิงก์ที่มีคลาสนั้น ฉันพยายามอย่างนั้นและฉันก็ทำมันไม่ได้ ฉันไม่รู้จัก Javascript มากนักดังนั้นจึงเป็นไปได้ว่าฉันเขียนผิดทั้งหมด ไม่มีใครรู้วิธีการทำเช่นนี้? ฉันต้องการที่จะทำโดยไม่ต้องใช้ปลั๊กอิน

3
วิธีจัดการกับการเรนเดอร์ SVG ใน wordpress?
ด้วยความก้าวหน้าของอินเทอร์เน็ตเบราว์เซอร์ฉันพบว่าตัวเองสบายใจมากขึ้นเมื่อใช้ SVGS ในการเข้ารหัสเว็บไซต์ ... โดยเฉพาะอย่างยิ่งสำหรับไอคอนและกราฟิกง่าย ๆ ที่สามารถเปลี่ยนได้ทันทีโดย pngs ดูเหมือนว่า WordPress เกือบรองรับ SVGS ฉันพูดเกือบเพราะ: ไม่ใช่ค่าเริ่มต้นประเภทไฟล์ที่อนุญาตใน wordpress ดังนั้นคุณต้องเพิ่มมันก่อนที่จะอัพโหลด SVG คุณไม่เห็นภาพขนาดย่อของ SVG ในแกลเลอรี่สื่อ (ดูภาพด้านล่าง) บางครั้งเมื่อคุณเพิ่มลงในตัวแก้ไข (ผ่านปุ่มเพิ่มสื่อ) ตัวแก้ไขไม่ทราบขนาด svg ดังนั้นแม้ว่าจะเพิ่ม svg เป็นรูปภาพ แต่ก็มีความกว้างและความสูงเป็นศูนย์ เมื่อคุณคลิกที่ "แก้ไขภาพ" จากภายในป๊อปอัปอัปโหลดสื่อคุณจะได้รับข้อความว่า "ไม่มีภาพ" ดูภาพด้านล่าง ฉันใช้ได้กับรายการที่ 1 ในรายการนี้ แต่มีใครบ้างที่คิดว่ารายการแก้ไข 2 3 และ 4 เป็นอย่างไร อัปเดตเกี่ยวกับรายการ 1: ในการอนุญาตประเภท mime ใหม่ (เช่น SVG) …
9 svg 

1
การส่งตัวแปรจาก header.php ไปยังเทมเพลตและ verca รอง
ฉันได้กำหนดตัวแปร - เรียกมันว่า$header_varซึ่งวางอยู่ในไฟล์ header.php ฉันต้องการให้ตัวแปรนี้ถูกส่งผ่านไปยังไฟล์เทมเพลตของฉัน (ในกรณีนี้คือ taxonomy.php) นอกจากนี้ฉันต้องการทำแบบเดียวกันกับที่อื่น ๆ เช่นผ่าน$template_varจาก taxonomy.php ของฉันไปยัง header.php เป็นไปได้หรือไม่ที่จะไม่ประกาศตัวแปรเมื่อโหลดส่วนหัวแล้ว ฉันลองใช้ทั่วโลก$header_varแต่ไม่มีโชค ข้อเสนอแนะใด ๆ

2
การตรวจจับข้อผิดพลาดที่สร้างโดย $ wpdb-> get_results ()
ฉันจะตรวจพบข้อผิดพลาดเมื่อใช้ $ wpdb-> get_results () ได้อย่างไร ตัวอย่างเช่น: $result = $wpdb->get_results("SELECT * FROM this is not a valid query"); รหัสก่อนหน้านี้ไม่ได้สร้างข้อยกเว้นหรือข้อผิดพลาดใด ๆ มันเพียงแค่กำหนดผลลัพธ์ $ เป็นอาร์เรย์ที่ว่างเปล่า เราจะตรวจสอบข้อผิดพลาดที่เชื่อถือได้ที่สร้างขึ้นโดย get_results () ได้อย่างไร?
9 database  wpdb  errors 

2
สร้าง WP tutorial สำหรับผู้ใช้ที่มีตัวชี้ admin โดยใช้ปุ่มถัดไปสำหรับการนำทาง
ฉันมุ่งมั่นที่จะสร้างการสอนเกี่ยวกับผู้ใช้ของฉันสำหรับพื้นที่ผู้ดูแลระบบ เพื่อให้บรรลุสิ่งนี้ฉันใช้พอยน์เตอร์ของผู้ดูแลระบบที่มีอยู่ใน WP core เป้าหมายของฉัน: ฉันเกือบจะถึงแล้ว สิ่งที่ฉันได้มา ... ลงทะเบียนสคริปต์ wp-pointer: add_action( 'admin_enqueue_scripts', 'custom_admin_pointers_header' ); function custom_admin_pointers_header() { if ( custom_admin_pointers_check() ) { add_action( 'admin_print_footer_scripts', 'custom_admin_pointers_footer' ); wp_enqueue_script( 'wp-pointer' ); wp_enqueue_style( 'wp-pointer' ); } } ฟังก์ชั่นตัวช่วยรวมถึงการตรวจสอบตามเงื่อนไขและสคริปต์ส่วนท้าย: function custom_admin_pointers_check() { $admin_pointers = custom_admin_pointers(); foreach ( $admin_pointers as $pointer => $array ) { …
9 wp-admin 

5
ไม่สามารถรับ Child Theme เพื่อโหลด style.css เวอร์ชันล่าสุด
ฉันใช้ชุดรูปแบบเด็กอย่างถูกต้อง แต่ฉันไม่สามารถรับการเปลี่ยนแปลงในชุดรูปแบบของเด็กสไตล์เพื่อให้สะท้อนในไซต์ พยายามล้างแคชเบราว์เซอร์หลายล้านครั้งและใช้งานไม่ได้! ฉันได้สร้างไฟล์เทมเพลตเด็กและไฟล์เหล่านั้นทับไฟล์หลักได้ดี ฉันได้สังเกตุใน sourse view มันใส่หมายเลขเวอร์ชั่นไว้ที่ส่วนท้ายของ style sheet เช่นนี้: - style.css? ver = 3.9.1 แม้ว่าฉันจะไม่ได้สร้างเวอร์ชั่นขึ้นมาก็ตาม! ในเว็บไซต์อื่นที่ฉันสร้างขึ้นจะไม่มีการกำหนดสไตล์ชีทดังนั้นทำไมจึงมีการใส่สไตล์โดยอัตโนมัติเมื่อฉันไม่ต้องการตั้งค่า ฉันจะบังคับให้ใช้ไฟล์ Child style.css เวอร์ชันล่าสุดและไม่ใช่เวอร์ชันได้อย่างไร นี่คือ URL เว็บไซต์ของฉัน: - http://www.peterswebservices.co.uk/

1
แสดงชื่อหมวดหมู่ปัจจุบันในหน้าหมวดหมู่
ใช้รหัสต่อไปนี้ในเทมเพลตหมวดหมู่ แต่แทนที่จะแสดงหน้าหมวดหมู่ปัจจุบันที่ฉันเปิดอยู่จะแสดงหมวดหมู่แรกของโพสต์แรก ตัวอย่างเช่นในหน้าหมวดหมู่อาหารคุณควรพูดว่า Food แต่จะพูดว่า Desserts แทนเนื่องจากหมวดหมู่แรกของโพสต์นั้นเป็นของหวาน นี่คือเว็บไซต์http://theveganproject.ca/wp/category/food/ add_action ( 'genesis_before_content', 'sk_show_category_name' ); function sk_show_category_name() { $category = get_the_category(); if (is_category()) { echo '<div id="cat-name">' . $category[0]->cat_name . '</div>'; } }

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