WordPress

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

2
ไฟล์ functions.php เคยถูกเรียกระหว่างการโทร AJAX หรือไม่? แก้ไขข้อผิดพลาด AJAX
พยายามคิดให้ออกว่าโปรแกรมเมอร์คนอื่นกำลังทำอะไรอยู่ ฉันสงสัยว่าfunctions.phpไฟล์จะถูกเรียกใช้เมื่อคุณจัดการด้าน AJAX หรือไม่? ฉันรู้ว่าเมื่อคุณทำการโทร AJAX ส่วนหนึ่งของ WP จะถูกโหลดขึ้นเพื่อประมวลผลการโทรและส่งการตอบกลับ มีfunctions.phpไฟล์อยู่ในนั้นหรือไม่? เหตุผลที่ฉันถามคือเพราะเขาใช้คลาสจากปลั๊กอิน Meta-Box และโหลดเป็นส่วนหนึ่งของธีมแทน มี AJAX บางตัวในคลาสนั้นที่ส่งคืนการตอบกลับที่ว่างเปล่าเท่านั้นและฉันคิดว่าเป็นเพราะโค้ดที่จัดการการตอบกลับไม่ได้รับการโหลด มีเอกสารอะไรที่จะโหลดเมื่อ WP จัดการ AJAX หรือไม่

1
วิธีจัดการความสัมพันธ์ของไฟล์แนบสำหรับโพสต์ที่เฉพาะเจาะจงใน WP 3.5+
ใน WordPress 3.5 การจัดการสื่อมีการเปลี่ยนแปลงอย่างสิ้นเชิง นอกจากนี้สิ่งที่แนบที่เกี่ยวข้องกับการโพสต์ที่เฉพาะเจาะจงคือ (ฉันเชื่อว่า) โดยทั่วไปแล้วจะทำเพื่อความเข้ากันได้ย้อนหลังเท่านั้น ดังนั้นหลังจากอัปโหลดสิ่งที่แนบมาจากภายในโมดอลสื่อไปยังโพสต์ประเภทโพสต์ใด ๆ มันจะสร้างความสัมพันธ์โดยที่ ID โพสต์เป็นแม่ของรหัสสิ่งที่แนบมาเหมือนเป็นเวลานาน อย่างไรก็ตามเมื่ออัปโหลดไฟล์แนบไปยังโพสต์แล้วจะไม่มีสถานที่จัดการไฟล์แนบที่มีความสัมพันธ์กับโพสต์จากภายในสื่อ modal ในโพสต์ หลังจากอัปโหลดภาพฉันสามารถเลือกและแทรกภาพได้ทันที แต่เนื่องจากสื่อได้รับการเทลงในส่วนสื่อทั้งไซต์ฉันจึงไม่สามารถจัดการสิ่งที่แนบมากับโพสต์เฉพาะเช่นใน <3.5 ตามที่เห็นที่นี่: สิ่งนี้สร้างปัญหาต่อไปนี้: การจัดการความสัมพันธ์ของสิ่งที่แนบมากับโพสต์ที่เฉพาะเจาะจงเป็นไปไม่ได้โดยไม่ต้องลบสื่อทั้งหมดและอัปโหลดอีกครั้ง ที่อยู่คนเดียวไม่แตกต่างจากเมื่อก่อน อย่างไรก็ตามตอนนี้สื่อถูกทิ้งลงในแท็บเดียวกันกับสื่ออื่น ๆ ทั้งหมดและไม่มีแท็บสำหรับจัดการสื่อที่มีความสัมพันธ์กับโพสต์ที่เฉพาะเจาะจงมันกลายเป็นเรื่องยากที่จะหาสื่อที่แนบมากับโพสต์ที่เฉพาะเจาะจงลงไป . เนื่องจากคุณสามารถแนบสื่อไปยังโพสต์แล้วลงที่ถนนหลังจากอัปโหลดสิ่งที่แนบจำนวนมากไปยังโพสต์อื่นคุณต้องการกลับไปที่โพสต์เก่า (คิดว่าเป็นแถบเลื่อนหรือผลิตภัณฑ์) และเปลี่ยนสื่อที่แนบมา ขอให้โชคดีในการค้นหาสื่อของคุณเนื่องจากแท็บสื่อในตัวแก้ไขใหม่ไม่ได้สั่งสื่อทั้งหมดก่อนโดยสิ่งที่แนบเหล่านั้นที่มีความสัมพันธ์กับโพสต์ปัจจุบัน นี่คือตัวอย่างรูป: ไม่ได้แย่ขนาดนี้เพราะมีเพียงหนึ่งหรือสองโพสต์ที่แยกจากกัน แต่ลองจินตนาการดูว่าจะย้อนกลับไปหลายเดือนในภายหลัง ไม่สามารถค้นหาสิ่งที่แนบที่เกี่ยวข้องสำหรับโพสต์นั้น มีปลั๊กอินจำนวนมากและเทมเพลตหน้ากำหนดเองที่ใช้ความสัมพันธ์ระหว่างการโพสต์กับสิ่งที่แนบที่เกี่ยวข้อง ดังนั้นการลบความสัมพันธ์เหล่านี้จะเป็นไปได้ยากมากในอนาคต ฉันคิดว่าคำตอบคือการสร้างแท็บอื่นทางด้านซ้ายสำหรับสื่อที่แนบมากับโพสต์เฉพาะ หรือเพื่อให้ orderby สำหรับแท็บสื่อเริ่มต้นด้วยสิ่งที่แนบที่เกี่ยวข้องกับการโพสต์ปัจจุบัน นั่นเป็นการแก้ไขระยะสั้น ระยะยาววิธีอื่นในการเชื่อมโยงสื่อกับโพสต์จะต้องสร้างโดยผู้พัฒนาปลั๊กอินและธีมเหล่านี้ ฉันคิดว่ามี hooks ที่พร้อมใช้งานในการสร้างแท็บใหม่และเพิ่ม meta data ในสิ่งที่แนบมาและโพสต์เพื่อสร้างความสัมพันธ์ ฉันถูกต้องในความกังวลของฉัน? ความคิดที่จะแก้ไข?


4
ทริกเกอร์รีเฟรชสำหรับเครื่องมือจัดการสื่อใหม่ใน 3.5
ฉันกำลังพยายามหาวิธีที่จะ 'รีเฟรช' ไลบรารีสื่อในกล่องโต้ตอบสื่อใหม่ใน 3.5 ฉันกำลังเพิ่มรูปภาพจากไลบรารีรูปภาพภายนอกไปยังไลบรารี WordPress (ผ่านคำสั่งผสมแท็บ / iFrame ในกล่องโต้ตอบสื่อ) ซึ่งใช้งานได้ แต่ฉันต้องปิดและเปิดกล่องโต้ตอบใหม่เพื่อแสดงรูปภาพที่เพิ่งเพิ่มใหม่ (ซึ่งมีเรียบร้อยแล้วได้รับการ aded ไปยังห้องสมุด) ฉันรู้ว่ามีwp.media.editor.open()และwp.media.editor.close()วิธีการต่าง ๆ แต่ฉันก็ไม่สามารถที่จะหาsort()หรือrefresh()(หรืออะไรก็ตาม) ในแหล่งที่มา ความจริงจะบอกรหัสแหล่งที่มาคือการอ่านที่รุนแรงมากและconsole.logดูเหมือนจะไม่ได้ช่วย backbone.js มากนัก ความคิดใด ๆ

2
รูปภาพตัวอย่างของ WordPress Theme
ฉันกำลังพัฒนาธีม WordPress ที่กำหนดเอง เมื่อฉันไปเลือกชุดรูปแบบในเมนูลักษณะชุดรูปแบบของฉันไม่มีภาพตัวอย่าง มีสิ่งที่ฉันต้องทำเพื่อให้ภาพตัวอย่างปรากฏขึ้นหรือไม่? ฉันไม่พบแหล่งข้อมูลบนเว็บที่พูดถึงเรื่องนี้ บางทีฉันแค่กำลังค้นหาสิ่งผิดปกติทว่า ... ?

6
WordPress และ Git เวิร์กโฟลว์
ฉันรู้ว่าคำถามนี้ถูกถามมานับพันครั้ง แต่ฉันพยายามหาวิธีที่ดีที่สุดของ Git เมื่อทำงานกับ WordPress ฉัน scoured เว็บและอ่านบทความหลายสิบทั้งหมดที่ดูเหมือนจะครอบคลุมหัวข้อสั้น ๆ นี่คือตัวอย่างที่น่าอ่านที่สุดที่ฉันได้อ่านเมื่อไม่นานมานี้ - เวอร์ชั่นการควบคุม WordPress - จัดการการปรับใช้ชุดรูปแบบ WordPress ด้วย Git - จัดการธีม WordPress ของคุณเองโดยใช้คอมไพล์แทน FTP ปัจจุบันเวิร์กโฟลว์ของฉันมีลักษณะเช่นนี้ ติดตั้ง WordPress ในเครื่อง พัฒนาชุดรูปแบบ ส่งออกฐานข้อมูล WordPress จากเซิร์ฟเวอร์ท้องถิ่น นำเข้าฐานข้อมูล WordPress ไปยังเซิร์ฟเวอร์ระยะไกล อัปโหลดไฟล์ WordPress และชุดรูปแบบผ่าน FTP ลูกค้าทำการเปลี่ยนแปลง ดาวน์โหลดไฟล์ WordPress และธีมผ่าน FTP และส่งออกฐานข้อมูล WordPress จากเซิร์ฟเวอร์ระยะไกล แทนที่ไฟล์ในเครื่อง ทำการเปลี่ยนแปลงการพัฒนา อัปโหลดใหม่ผ่าน FTP …
23 deployment  git 

4
วิธีการสร้างโพรไฟล์ผู้ใช้ส่วนหน้าด้วยลิงก์ถาวรที่เป็นมิตร
ฉันต้องการสร้างหน้าโปรไฟล์สาธารณะส่วนหน้าด้วย URL ที่เป็นมิตรเช่นรูปแบบนี้ mysite.com/user/someusername ความคิดเกี่ยวกับฉันจะบรรลุสิ่งนี้ได้อย่างไร ฉันรู้ว่ามันมีบางอย่างเกี่ยวกับกฎการเขียนใหม่ แต่ฉันไม่รู้ว่าจะทำอย่างไร หากคุณมีลิงค์หรือการสอนสำหรับฉันมันจะดี ขอบคุณ!

5
สคริปต์เริ่มต้นสำหรับแง่มุม“ มาตรฐาน” ของเว็บไซต์ WordPress?
ฉันจะต้องมีการเขียนสคริปต์เพื่อใช้ติดตั้งใหม่ของ WordPress 3.0.1 และเพิ่มในทุกคุณสมบัติเบื้องต้นสำหรับเว็บไซต์ นี่คือ บริษัท ที่ติดตั้งเว็บไซต์ที่คล้ายกันจำนวนมากและพวกเขาต้องการจุดเริ่มต้นมาตรฐานในการกำหนดค่าและข้อมูล ฉันสงสัยว่ามีคนอื่นทำเช่นนี้หรือไม่และถ้าเป็นเช่นนั้นพวกเขาสามารถแบ่งปันรหัสได้หรือไม่ ฉันจินตนาการว่าเราจะปรับแต่งสคริปต์นี้ทุกครั้งที่สร้างไซต์ใหม่ดังนั้นการเข้ารหัสอย่างหนักก็ใช้ได้แม้ในที่สุด (หลังจากมีประสบการณ์มากพอ) ฉันต้องการแปลงเป็นปลั๊กอิน นี่คือรายการขั้นพื้นฐานของงานที่ฉันคิดว่าเราต้องการ(สิ่งเหล่านี้ถือว่าฉันเริ่มต้นด้วย WordPress 3.0.1 ติดตั้งแล้วและปลั๊กอินที่กำหนดเองของฉันและธีมที่กำหนดเองคัดลอกไปยังไดเรกทอรีที่เหมาะสม) : // Create users for the current site // Delete Hello Dolly Plugin // Download, Install and Activate repository plugins // Activate Custom Plugins (assume the plugins are already there) // Activate Custom Theme // …

7
เทมเพลตที่กำหนดเองไม่แสดงในดร็อปดาวน์เทมเพลต
ฉันมีปัญหากับเทมเพลตใน Wordpress (หลายไซต์) ฉันสร้างไฟล์ในรูทของโฟลเดอร์ชุดลูกของฉัน (template-test.php) <?php /** * Template Name: Test template * */ ?> <?php get_header(); ?> <?php get_footer(); ?> เทมเพลตนี้ไม่ปรากฏในรายการแบบเลื่อนลงของเทมเพลตเมื่อสร้างหน้าใหม่หรือแก้ไขหน้าเว็บที่มีอยู่ สิ่งเดียวในรายการดรอปดาวน์คือ 'เทมเพลตเริ่มต้น' สิ่งที่ฉันลองมาแล้ว: - ปิดการใช้งานและเปิดใช้งานชุดรูปแบบของฉัน - ล้างลิงก์ถาวร - ตรวจสอบสิทธิ์ของไฟล์ของฉัน - ตรวจสอบว่า style.css อยู่ในรูทของโฟลเดอร์แม่แบบหรือไม่ ฉันได้ลองใช้ไฟล์เดียวกันในการติดตั้ง Wordpress อื่นและทำงานได้ดี

2
ไฟล์บำรุงรักษายังใช้ได้สำหรับการวาง WP ในโหมดบำรุงรักษาหรือไม่?
ฉันเห็นว่าเมื่ออัปเกรดไฟล์. บำรุงรักษาจะถูกลบหากมี มันยังคงเป็นวิธีที่ทำงานได้ / ถูกต้องในการทำให้ WP อยู่ในโหมดการบำรุงรักษาหรือไม่?

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

3
ฉันสามารถบังคับให้ WP_Query ส่งคืนผลลัพธ์ไม่ได้หรือไม่
ฉันกำลังทำงานกับเว็บไซต์ที่มีคุณสมบัติการค้นหาที่ช่วยให้ผู้ใช้สามารถค้นหาเมตาโพสต์ได้มากมาย มีรูปแบบการค้นหาเฉพาะที่ฉันต้องการบังคับให้ส่งคืนผลลัพธ์ไม่ได้ WP_Query ในทางเทคนิคจะค้นหาผลลัพธ์ในฐานข้อมูล แต่ฉันต้องการแทนที่อย่างใดเพื่อบังคับให้ส่งคืนผลลัพธ์ที่ไม่ก่อให้เกิดการif( $example->have_posts() )ล้มเหลว มีพารามิเตอร์บางประเภทที่ฉันสามารถส่งไปยัง WP_Query เช่น'force_no_results' => trueนั้นจะบังคับให้ส่งคืนผลลัพธ์หรือไม่?
23 wp-query  loop  search 

3
restore_current_blog () vs switch_to_blog ()
หลังจากทุกอินสแตนซ์ของswitch_to_blog()คุณควรโทรrestore_current_blog()เพื่อคืนค่าบล็อกปัจจุบัน (จริง ๆ ก่อนหน้านี้) แต่ถ้าคุณวนลูปผ่านบล็อกสองบล็อกขึ้นไปและโทรหาswitch_to_blog()แต่ละบล็อกมีเหตุผลที่จะไม่ใช้switch_to_blog()ส่วนท้ายของลูปเพื่อสลับไปยังบล็อกดั้งเดิมแทนที่จะไปrestore_current_blog()ที่แต่ละพาส เช่น ทำไมไม่: $original_blog_id = get_current_blog_id(); foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //Do stuff } switch_to_blog( $original_blog_id ); แทน: foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //Do stuff restore_current_blog_id(); }
23 multisite 

7
เพิ่มฐานหมวดหมู่ไปยัง url ในประเภทโพสต์ / taxonomy ที่กำหนดเอง
ฉันกำลังสร้างระบบ LMS ประเภทใน WordPress, Custom Post typesการควบคุมโดย โพสต์ประเภทที่เรียกว่าLessons(กับกระสุนของcourses) และก็มีหนึ่งcustom taxonomy(หมวดหมู่) coursesที่เรียกว่า โครงสร้าง URL โดเมนแสดงในขณะนี้เป็น: domain.com/courses/lesson-name. ฉันอยากให้มันกลายเป็น: domain.com/courses/[course-name{category}]/lesson-name หรือเป็นหลัก: /[cpt]/%category%/%postname%/ นี่คือปลั๊กอินที่ฉันเขียนที่ควบคุมCPTsตอนนี้ function rflms_post_type() { $labels = array( 'name' => _x( 'Lessons', 'Post Type General Name', 'text_domain' ), 'singular_name' => _x( 'Lesson', 'Post Type Singular Name', 'text_domain' ), 'menu_name' => __( 'Lessons', …

3
วิธีจัดคิวสคริปต์ในหน้าเพิ่ม / แก้ไขหน้าโพสต์ที่กำหนดเองได้อย่างไร
ฉันพยายามจัดคิวสคริปต์ JS เฉพาะเมื่อมีคนเพิ่มหรือแก้ไขประเภทโพสต์ที่ฉันกำหนดเองซึ่งเรียกว่า "สูตรอาหาร" ขณะนี้สคริปต์ใช้งานได้เมื่อฉันทำสิ่งนี้: if (is_admin()){ wp_enqueue_script( 'my-script' ); } แต่สิ่งนี้จะโหลดในหน้าผู้ดูแลระบบทุกครั้งฉันคิดว่าฉันต้องขอฟังก์ชั่น แต่ฉันไม่รู้ว่ามันควรจะเป็นอะไร ขอบคุณล่วงหน้า!

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