WordPress

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

1
วิธีลบลิงก์“ + เพิ่มหมวดหมู่ใหม่” จาก Metabox หมวดหมู่
ข้างในเมท็อกซ์หมวดหมู่ของ Wordpress หรือกล่อง taxonomy แบบกำหนดเองสำหรับเรื่องนั้นมีลิงค์ที่มีข้อความ "+ เพิ่มหมวดหมู่ใหม่" มีวิธีที่ลิงค์นี้สามารถลบออกได้โดยไม่ต้องใช้ JS หรือ CSS เพื่อซ่อนมัน? วิธีซ่อนมันโดยใช้ฟิลเตอร์หรือเบ็ดการกระทำบางอย่างจะดีที่สุด หากไม่มีวิธีการ hook หรือตัวกรองการดำเนินการที่จะลบมันฉันจะเปิดให้โซลูชั่น JS และ CSS เป็นวิธีสุดท้าย เหตุผลที่ฉันทำเช่นนี้ก็เพราะฉันมีการติดตั้ง Wordpress ที่รวมเข้ากับ Magento และฉันกำลังสร้างและจัดทำ taxonomy แบบกำหนดเองที่เรียกว่า "brands" พร้อมรายชื่อแบรนด์จากฐานข้อมูล Magento เพื่อให้สามารถโพสต์แบรนด์ได้ เห็นได้ชัดว่านี่หมายความว่าฉันไม่ต้องการให้ผู้ใช้สามารถเพิ่มในแง่ของตัวเองและสามารถเลือกแบรนด์ที่เพิ่มเข้ามาในแบบไดนามิกเพื่อให้สอดคล้องกับ Magento ขอบคุณ.

4
จะแปลปลั๊กอินหลังจากการอัพเดทได้อย่างไร?
http://wordpress.org/extend/plugins/bbpress/ โฟลเดอร์ภาษาของ bbpress (wp-content / plugins / bbpress / bbp-languages) มีคำเตือนดังกล่าว: /** * Do not put custom translations here. They will be deleted on bbPress updates. * * Keep custom bbPress translations in /wp-content/languages/ */ ที่จริงนี่ไม่ใช่ปัญหาใหม่และใช่พวกเขาถูกต้อง นี่เป็นปัญหาใหญ่หากคุณใช้เวิร์ดเพรสปลั๊กอินที่ไม่ใช่ภาษาอังกฤษ โดยทั่วไปฉันแปล bbpress และสร้างไฟล์. po และ. mo ไฟล์ทำงานหากฉันวางไว้ในโฟลเดอร์ wp-content / plugins / bbpress / …

1
การเพิ่มหมวดหมู่ / แท็ก / Taxonomy รองรับรูปภาพ / สื่อ
ฉันพยายามเพิ่มหมวดหมู่แท็กหรือการสนับสนุนอนุกรมวิธานที่กำหนดเองให้กับรูปภาพ (หรือสื่อทั้งหมดแม้ว่าฉันจะเกี่ยวข้องกับรูปภาพเท่านั้น) ฉันได้มันมาคิดทาง: add_action('init', 'create_image_taxonomies'); function create_image_taxonomies() { $labels = array( 'name' => 'Media Category' ); $args = array( 'labels' => $labels, 'public' => true ); register_taxonomy('imagetype', 'attachment', $args); } สิ่งนี้จะเพิ่มฟิลด์ Media Category ลงในหน้าจอสื่ออย่างถูกต้อง get_the_terms($my_attachment_id, 'imagetype')ฉันยังได้รับการยืนยันนี้สามารถเข้าถึงได้ด้วย สิ่งที่ฉันกำลังประสบปัญหาคือการได้รับข้อมูลนี้เพื่อแสดงที่ใดก็ได้ใน admin / แดชบอร์ดยกเว้นเมื่อดูสื่อโดยตรง - ฉันต้องการมันในเมนูย่อยหรือเป็นคอลัมน์ที่กำหนดเองหรือทั้งสองอย่างที่สามารถทำได้สำหรับ โพสต์และหน้า ฉันได้ลองใช้manage_posts_custom_columnไปด้วยmanage_edit-attachment_columnsแต่ไม่มีอะไรปรากฏขึ้น ฉันพยายามใช้add_media_pageเพื่อแสดงบางอย่างเช่นหน้าที่สร้างขึ้นโดยอัตโนมัติสำหรับหมวดหมู่ของหน้าและโพสต์ แต่ที่นี่ฉันมีปัญหาในการดึงภาพที่ฉันได้รับหมวดหมู่ คุณสามารถเห็นความพยายามทั้งสองได้ที่นี่: http://pastebin.com/S8KYTKRM ขอบคุณล่วงหน้าสำหรับความช่วยเหลือใด ๆ …

3
วิธีการตั้งค่าภาษาส่วนหลังต่อผู้ใช้?
ฉันต้องการใช้อินเทอร์เฟซภาษาอังกฤษสำหรับส่วนหลัง แต่ฉันต้องการตั้งค่าเป็นภาษาท้องถิ่นสำหรับการแก้ไข ฉันรู้ว่า WPML มีคุณสมบัตินี้ แต่ฉันไม่ต้องการติดตั้ง WPML ที่ไม่รองรับด้วยเหตุผลนี้ สิ่งที่ฉันกำลังมองหาคือปลั๊กอินเล็ก ๆ ที่ให้สวิตช์สำหรับหน้าโปรไฟล์ผู้ใช้สำหรับการตั้งค่าภาษาส่วนหลัง มีปลั๊กอินเช่นนี้หรือไม่?

2
วิธีการผนวกเข้ากับ the_content โดยใช้ add_filter พร้อมประเภทโพสต์ที่กำหนดเองได้อย่างไร
ฉันมีประเภทโพสต์ที่กำหนดเองทำงานได้ดี แต่ข้อความบางส่วนในหน้านั้นเหมือนกันสำหรับทุกโพสต์ดังนั้นฉันต้องการเพิ่มในการใช้ฟังก์ชั่น ฉันได้ตั้งค่านี้: function new_default_content($content) { global $post; if ($post->post_type == 'custom-post-type') { $content = 'Test text here'; } return $content; } add_filter('the_content', 'new_default_content'); อย่างไรก็ตามเมื่อฉันรีเฟรชหน้าฉันเห็นเฉพาะ "การทดสอบข้อความที่นี่" และไม่ใช่เนื้อหาของโพสต์ (จาก the_content) ถ้าฉันใส่ความคิดเห็นฟังก์ชั่นนี้เนื้อหาโพสต์จะปรากฏขึ้นอีกครั้ง ผมทำอะไรผิดหรือเปล่า?

1
ใช้โฟลเดอร์อัพโหลดที่แยกต่างหากสำหรับการอัปโหลดไฟล์แนบที่โพสต์
ดังนั้นฉันกำลังพยายามหาวิธีใช้โฟลเดอร์อัพโหลดที่แยกกันสองโฟลเดอร์เป็นโฟลเดอร์เริ่มต้นwp-content/uploadsสำหรับการอัปโหลดสื่อทั่วไปและอีกโฟลเดอร์หนึ่งพูดwp-content/customถึงสิ่งที่แนบมาประเภทหนึ่ง (ไฟล์ PDF ที่แนบมากับ post_type เฉพาะ) สิ่งสำคัญคือคุณต้องแยกทั้งความปลอดภัยขององค์กรและข้อมูลไว้เนื่องจากไฟล์ PDF จะเก็บข้อมูลที่มีความอ่อนไหวซึ่งควรจะมีบทบาทผู้ใช้กำหนดเองสองบทบาทเท่านั้นในขณะที่สื่อทั่วไปนั้นดี ฉันอายเล็กน้อยที่จะแสดงรหัสที่ฉันใช้งานได้เพราะมันมีหมัด แต่นี่มันไป: function custom_post_type_metabox_save_function($post_id) { global $post; // Verify auto-save, nonces, permissions and so on then: update_post_meta($post_id, "meta_key1", $_POST["value1"]); update_post_meta($post_id, "meta_key2", $_POST["value2"]); // this is where it gets uply. I change the 'upload_path' to my desired one for this post type …

4
การใช้ API ภายนอกใน WordPress หรือไม่
ฉันมีลูกค้าที่มีเว็บไซต์ WordPress และเขาต้องการขยายเพื่อเพิ่มฟังก์ชันการทำงานใหม่ ฟังก์ชันเหล่านี้รวมอยู่ในเว็บไซต์ที่ฉันได้ทำไปแล้ว (เป็นเครื่องมือค้นหาผ่านฐานข้อมูลพร้อมตัวกรองบางตัว) และอยู่ภายใต้การปรับปรุงใหม่ สิ่งที่ฉันวางแผนจะทำคือการสร้าง json api ของเว็บไซต์ของฉัน (พร้อมฟังก์ชั่นการค้นหาทั้งหมดในฐานข้อมูลของฉัน) และทำให้เว็บไซต์ wordpress ใช้ api นี้แล้วฉันจะต้องสร้างมุมมองเพื่อแสดงผลการค้นหาเท่านั้น ปัญหาคือฉันไม่รู้ WordPress เลย (สำหรับฉันมันเป็นสิ่งที่คุณสามารถเพิ่มบทความผ่านทาง admin panel ... ) และฉันไม่รู้ว่าเราจะเขียนโค้ดฝั่งเซิร์ฟเวอร์ของเราเองได้อย่างไร ฉันค้นหาใน Google และพบสิ่งที่เรียกว่า "ปลั๊กอิน" แต่ฉันสงสัยว่ามันเป็นไปได้หรือไม่และเป็นวิธีที่ง่ายที่สุดในการทำเพราะฉันไม่จำเป็นต้องมีรหัสที่ใช้โดยบุคคลที่สามอื่น ๆ พรรค ถ้าเป็นไปได้ที่จะแฮ็ค WordPress ติดตั้งเพื่อเพิ่มไฟล์ PHP ของฉัน, รหัสสิ่งที่ฉันต้องการ (มุมมองของฉันด้วย WordPress css เดียวกัน) มันจะง่ายกว่านี้ แต่ฉันไม่รู้ว่าเป็นไปได้หรือไม่

2
ใช้ตัวกรอง [ฝัง] ในไฟล์เทมเพลต
WordPress ฝังวิดีโอ youtube โดยอัตโนมัติหากฉันใช้: [embed] http://www.youtube.com/watch?v=Xog1T5dUxcw [/embed ] นี่ยอดเยี่ยม แต่มันใช้งานไม่ได้ถ้าฉันใช้มันในไฟล์เทมเพลต ฉันมีฟิลด์ที่กำหนดเองซึ่งผู้ดูแลระบบสามารถใส่ URL ไปยังวิดีโอ YouTube ได้ ฉันต้องการรับวิดีโอในโพสต์เดียวโดยใช้รหัสต่อไปนี้: <?php $custom = get_post_custom($post->ID); $url = $custom['_videoLink'][0]; ?> <div class="video"> [embed]<?php $url; ?>[/embed] </div> ฉันจะแปลง Youtube URL เป็น URL แบบฝังโดยใช้ฟังก์ชัน WordPress [embed] มาตรฐานได้อย่างไร

2
ไม่ได้โหลดปลั๊กอินในโฟลเดอร์ mu-plugins
ฉันกำลังพยายามโหลดปลั๊กอินโดยอัตโนมัติโดยวางปลั๊กอินลงในmu-pluginsโฟลเดอร์ แต่ถ้าวางปลั๊กอินไว้ในโฟลเดอร์มันจะไม่โหลด ฉันลองปลั๊กอินที่เป็นที่นิยมเช่น W3 Total Cache, WordPress SEO โดย Yoast แต่ทั้งหมดไม่ได้โหลด WordPress โหลดปลั๊กอินที่เป็นไฟล์เดียวmu-pluginsหรือไม่?

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

1
การดำเนินการเป็นกลุ่มได้รับการจัดการในคลาสตารางรายการแบบกำหนดเองได้อย่างไร
ฉันกำลังทำงานบนตารางข้อมูลที่กำหนดเองเพื่อแสดงในแผงควบคุม WordPress ตารางเติมข้อมูลจากตารางฐานข้อมูลที่ฉันสร้างขึ้นในปลั๊กอิน ฉันใช้ตัวอย่างตาราง WordPress Custom List ที่ให้ไว้สำหรับคำถามการเข้ารหัสของฉันส่วนใหญ่ในพื้นที่นี้ แต่ตัวอย่างไม่มีอะไรสำหรับการจัดการการกระทำเป็นกลุ่ม นี่คือลิงค์สำหรับตัวอย่างเอกสาร: http://wordpress.org/extend/plugins/custom-list-table-example/ สำหรับการประมวลผลการดำเนินการเป็นกลุ่มตัวอย่างให้สิ่งนี้เท่านั้น: function process_bulk_action() { //Detect when a bulk action is being triggered... if( 'delete'===$this->current_action() ) { wp_die('Items deleted!'); } } ฉันต้องการทราบวิธีดึงรายการที่เลือกไว้สำหรับการดำเนินการเพื่อให้ฉันสามารถลบหรือแก้ไขรายการฐานข้อมูลได้

1
มีไซต์หลายรายการติดอยู่ที่ 1MB สำหรับขนาดไฟล์สูงสุด
ฉันมี Wordpress Multisite ติดตั้งบนเซิร์ฟเวอร์การพัฒนา FreeBSD ของเรา ดูเหมือนว่าจะติดที่ 1MB ฉันมีการตั้งค่าต่อไปนี้ใน php.ini upload_max_filesize = 100M post_max_size = 100M max_execution_time = 300 การติดตั้ง WordPress ปกติทั้งหมดบนไซต์นั้นมีขนาดการอัปโหลดสูงสุด 100MB ตามที่คาดไว้ โดยไม่คำนึงถึงค่าที่ฉันวางติดตั้งหลายไซต์ติดที่ 1MB การตั้งค่า: FreeBSD 8.1 PHP 5.3.3 Wordpress Multisite 3.2.1 หลังจากย้ายไซต์ไปยังเซิร์ฟเวอร์อื่นบน Rackspace จะมีปัญหาเดียวกัน ความช่วยเหลือในการเพิ่มขีด จำกัด นี้จะได้รับการชื่นชม ถ้าฉันปล่อยให้ข้อมูลที่เกี่ยวข้องใด ๆ แจ้งให้ฉันทราบและฉันจะให้สิ่งที่ฉันสามารถทำได้

3
ทำให้ AJAX ของฉันขับเคลื่อนการรวบรวมข้อมูล WordPress
ฉันอ่านข้อความต่อไปนี้และลองใช้รูปแบบนี้กับเว็บไซต์ที่ใช้ WordPress: http://code.google.com/intl/fr-CA/web/ajaxcrawling/index.html หากคุณเยี่ยมชมเว็บไซต์ของฉันที่http://www.visualise.ca/คุณจะเห็นว่ามันโหลดโพสต์ในหน้าแรกและ URL จะกลายเป็นhttp://visualise.ca/#!/anne-au-cherryเมื่อสิ่งนี้ โหลดโพสต์แล้ว เวอร์ชันเดียวกันของเนื้อหาเดียวกันพร้อมใช้งานสำหรับโปรแกรมรวบรวมข้อมูลที่http://visualise.ca/anne-au-cherryแต่หากผู้เข้าชมที่ใช้เบราว์เซอร์เข้าชมเขาจะถูกเปลี่ยนเส้นทางไปยังhttp://visualise.ca/#! / anne-au-cherry (ทำได้ด้วย javascript) เพื่อให้โปรแกรมรวบรวมข้อมูลมีความจำเป็น?_escaped_fragment_=ฉันใช้แฮ็ค WordPress ที่ฉันพบในเน็ต: http://www.wordpress-fr.net/support/sujet-54810-add-action-parse-requestและตอนนี้ GoogleBot สามารถดูเนื้อหาของหน้าที่ขับเคลื่อน AJAX ของฉัน ฉันคิดว่ามันทำทั้งหมดแล้ว แต่เมื่อฉันวางลิงค์โพสต์ไปที่ Facebook (เช่น) มันไม่สามารถอ่านเนื้อหาของหน้าดังนั้นฉันเดาว่าเว็บไซต์ของฉันไม่เคารพรูปแบบที่อธิบายไว้ในเอกสารของ Google เพราะ Facebook สนับสนุน (ถ้าคุณวางhttp : //twitter.com/#! / gablabelleมันจะทำงานได้) ดังนั้นเนื่องจากฉันใช้ปลั๊กอิน jQuery.address เพื่อรับ hashbang ของฉัน (#!) ฉันไปที่เว็บไซต์ของพวกเขาและดาวน์โหลดไฟล์ตัวอย่างเพื่อดูความแตกต่างระหว่างไฟล์และของฉันและรู้ว่าพวกเขาอาจใช้ฟังก์ชัน php เพื่อสร้างสแนปชอต HTML ที่จำเป็น: https://github.com/bartaz/jquery-address/blob/master/samples/crawling/index.phpเพราะนี่คือเหตุผลที่ฉันเดาว่า Facebook ไม่สามารถอ่านของฉันได้ <?php error_reporting(E_ALL …
9 ajax 

2
CSS ไม่ดึงสำหรับไดอะล็อก jQuery UI
ฉันต้องการเพิ่ม modal dialog jQuery ในหน้าแบบฟอร์ม เมื่อมีการเปิดกล่องโต้ตอบฉันจะเห็นเนื้อหาข้อความ แต่ไม่มี CSS ฉันดึง jquery ใน functions.php สำหรับหน้า: wp_enqueue_script('jquery-ui-dialog'); jquery css (jquery-ui-dialog.css) อยู่ภายใต้ไดเรกทอรี wp-include / css ของฉัน ฉันพยายามเพิ่ม wp_enqueue_style('jquery-ui-dialog'); แต่มันไม่ทำงาน ไม่มีใครรู้วิธีที่เหมาะสมในการเปิดใช้งาน jQuery Dialog
9 jquery 

2
ข้อความที่อัปเดตการตั้งค่า API จะไม่แสดงหากหน้าผู้ดูแลระบบที่กำหนดเองไม่ได้เชื่อมต่อกับ add_options_page ()
รับการเล่นด้วยการตั้งค่า API และพบว่าข้อความ (สำหรับความสำเร็จหรือข้อผิดพลาด) จะปรากฏเฉพาะเมื่อหน้าการตั้งค่าถูกเชื่อมต่อกับเมนู WordPress ผ่านทาง add_options_page () สิ่งอื่นใดจะไม่ทำงานเช่น add_dashboard_page () ต้องการทราบว่านี่เป็นเรื่องจริงหรือไม่? รหัสตัวอย่างที่ฉันลองใช้คือคำตอบที่มีคลาส "RegisteredSettingsTest" ที่ตำแหน่งขอ hook register_settings สำหรับ Settings API เมื่อต้องการอัปเดตตัวเลือกนอก API การตั้งค่า

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