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

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

1
get_template_directory () กับ bloginfo ('template_directory') vs TEMPLATEPATH
ฉันอ่านบทความนี้: ข้อผิดพลาดในการพัฒนา WordPress ทั่วไปและวิธีแก้ไขพวกเขาและในนั้นผู้เขียนกล่าวว่า: การรับตำแหน่งของธีม: หากคุณใช้ TEMPLATEPATH หรือ bloginfo ('template_directory') หยุด! คุณควรใช้ get_template_directory () ที่มีประโยชน์มากอย่างที่เห็นในตัวอย่างด้านบน แต่เขาไม่ได้ทำอย่างละเอียด เกี่ยวกับbloginfo()อะไร

2
ใหม่ WP_Customize API - มันทำงานอย่างไรภายใต้ประทุน?
ฉันสังเกตเห็นว่าหากคุณทำการเปลี่ยนแปลงคุณสมบัติ "กำหนดเอง" ใหม่เมื่อคุณไปยังหน้าอื่นในเอกสารแสดงตัวอย่าง iframe การเปลี่ยนแปลงของคุณจะยังคงมีผลอยู่แม้ว่าจะยังไม่ได้บันทึกก็ตาม ดูเหมือนว่า WP จะเก็บการเปลี่ยนแปลงชั่วคราวไว้ที่ใดที่หนึ่งและนำไปใช้กับไซต์หากไซต์นั้นถูกดูในโหมด "ปรับแต่ง" แต่ไซต์จะรู้ได้อย่างไรว่าอยู่ในโหมดกำหนดเอง เพราะฉันไม่เห็นข้อโต้แย้งแบบสอบถามใด ๆ ต่อท้ายลิงค์หรืออะไรทำนองนั้น

1
การส่งแบบฟอร์มปลั๊กอินวิธีปฏิบัติที่ดีที่สุด
ฉันทำการค้นคว้าจำนวนมากและไม่พบสิ่งที่ฉันกำลังมองหาดังนั้นฉันหวังว่าฉันจะชี้ไปในทิศทางที่ถูกต้อง ฉันกำลังพัฒนาปลั๊กอินกิจกรรมที่จะจองตั๋วจากส่วนหน้า สิ่งนี้ไม่แตกต่างจากการส่งแบบฟอร์มอื่น ๆ แต่สิ่งที่ฉันสับสนกับวิธีการจัดการจากปลั๊กอินที่เขียนผ่าน OOP กับคลาส บทความส่วนใหญ่ที่ฉันพบว่าบอกให้วางการจัดการ $ _POST ไว้ในหน้าเทมเพลต เป็นการดีที่ฉันต้องการให้สิ่งนี้จัดการโดยฟังก์ชันภายในปลั๊กอิน สิ่งอื่น ๆ ที่ฉันไม่แน่ใจคือเมื่อคุณส่งแบบฟอร์มในส่วนหน้าวิธีการที่ได้รับจริงผ่านไปยังฟังก์ชั่นในส่วนหลัง ฉันหวังว่าจะสรุปการประมวลผลแบบฟอร์มได้อย่างสมบูรณ์จากรายละเอียดแม่แบบใด ๆ // events.php if ( ! class_exists( 'Events' ) ) { Class Events { function __construct() { add_action( 'plugins_loaded', array( &$this, 'includes' ), 1 ); } function includes() { require_once( EVENTS_INCLUDES . 'functions.php' ); …

5
การตรวจสอบค่า Meta Box แบบกำหนดเอง & ฟิลด์ที่จำเป็น
สิ่งที่ฉันไม่เคยเห็นครอบคลุมเป็นวิธีที่ดีที่สุดในการตรวจสอบว่าเขตข้อมูลแบบฟอร์มเฉพาะกรอกอย่างถูกต้องสำหรับกล่องเมตาประเภทโพสต์ที่กำหนดเอง ฉันกำลังมองหาความคิดเห็นของผู้เชี่ยวชาญเกี่ยวกับวิธีตรวจสอบฟิลด์ที่กำหนดเองที่ดีที่สุดสำหรับ metaboxes ใด ๆ ที่อาจสร้างขึ้น ความสนใจของฉันคือ: ตรวจสอบให้แน่ใจว่ามีการตรวจสอบฟิลด์เกิดขึ้นก่อนที่จะเผยแพร่ / อัปเดตโพสต์ ใช้คลาส / รหัสที่ไม่ขัดแย้งกับจาวาสคริปต์ WordPress อื่น ๆ ช่วยให้คุณกำหนดเขตข้อมูลเฉพาะตามที่จำเป็นในขณะที่คนอื่นอาจเป็นตัวเลือก ตรวจสอบฟิลด์ตามกฎที่ปรับแต่งได้รวมถึง regex สำหรับสิ่งต่าง ๆ เช่นรูปแบบอีเมล ควบคุมการแสดงภาพข้อผิดพลาด / ประกาศใด ๆ ขอบคุณล่วงหน้า!

1
ประเภทโพสต์ที่กำหนดเองสามารถมีหน้าหลักได้หรือไม่?
ฉันเคยเห็นโพสต์มากมายใน Webiverse เกี่ยวกับการกำหนดเพจเป็นพาเรนต์ของประเภทโพสต์ที่กำหนดเอง หลังจากสี่ชั่วโมงฉันไม่สามารถหาทางออกและต้องการความช่วยเหลือ ฉันสร้างหน้า "เกี่ยวกับ" ที่เป็นหน้าหลักของหน้า "คนของเรา" ฉันยังสร้างประเภทโพสต์ที่กำหนดเองที่เรียกว่า "คน" และฉันได้สร้างเทมเพลตหน้าแบบกำหนดเองสำหรับหน้า "คนของเรา" โครงสร้าง Permalink ดูดีจนกระทั่งคุณไปที่หน้า "คน" เดียว ตัวอย่างเช่น: หน้าของ John Smith, ลิงก์ถาวรไม่ถูกต้อง ประเภทโพสต์ที่กำหนดเอง: โครงสร้าง Permalink ที่ต้องการ: / about-us / our-people / john-smith โครงสร้าง Permalink จริง: / คนของเรา / john-smith หน้าคนของเราโครงสร้าง: / เกี่ยวกับเรา / คนของเรา "about-us" เป็นหน้าหนึ่ง "our-people" เป็นหน้าและการเขียนกระสุนสำหรับประเภทโพสต์ที่กำหนดเอง "people" ฉันพยายามเปลี่ยนการตั้งค่าแบบลำดับชั้นและฉันได้ลองเพิ่ม …

1
การฝัง SOAP Client ลงในปลั๊กอิน WordPress?
เป็นวิธีที่ดีที่สุดในการฝัง SOAP ไคลเอนต์ลงในปลั๊กอิน WordPressที่จะกระจายผ่านทางที่เก็บปลั๊กอินของ WordPress คืออะไร มันจะดีที่สุดที่จะใช้? PHP 5.x สบู่ไคลเอนต์ , Zend สบู่ไคลเอนต์ , NuSOAP Toolkit สำหรับ PHP , PEAR SOAP ไคลเอ็นต์ / เซิร์ฟเวอร์สำหรับ PHPหรือ บาง ลูกค้า SOAP อื่น ๆ สำหรับ PHP ? มีอะไรเพิ่มเติมทำไมแนะนำสิ่งที่คุณทำ และอะไรคือข้อดีข้อเสียของแต่ละคน "โบนัส (กรรม) คะแนน"ถ้าคุณมีประสบการณ์จริงกับการใช้ไคลเอนต์ SOAP ในการกระจายปลั๊กอินอย่างกว้างขวาง และมีความแตกต่างระหว่างการโทรเซิร์ฟเวอร์. NET SOAP, เซิร์ฟเวอร์ Java SOAP หรือเซิร์ฟเวอร์ SOAP อื่น ๆ …

2
Data sanitization: แนวทางปฏิบัติที่ดีที่สุดพร้อมตัวอย่างโค้ด
ฉันกำลังพยายามทำความเข้าใจกับการล้างข้อมูล (ไม่ใช่การตรวจสอบข้อมูล) เพื่อช่วยฉันในการเขียนธีมที่ปลอดภัยสำหรับ WordPress ฉันค้นหาทางอินเทอร์เน็ตเพื่อค้นหาคำแนะนำที่เข้าใจง่ายสำหรับนักพัฒนาชุดรูปแบบที่มีรายละเอียดวิธีปฏิบัติที่ดีที่สุด มีทรัพยากรอยู่สองสามอย่างที่ฉันเจอรวมถึงเพจ codex ที่ชื่อว่า Data Validation แม้ว่าจะไม่มีประโยชน์อะไรสำหรับฉัน หน้า codex แสดงรายการฟังก์ชั่นการฆ่าเชื้อที่มีอยู่การใช้งานและสิ่งที่พวกเขาทำ แต่ล้มเหลวในการอธิบายว่าทำไมคุณจึงใช้ฟังก์ชันหนึ่งเหนือสิ่งอื่นหรือในสถานการณ์ที่คุณจะใช้ฟังก์ชั่นการฆ่าเชื้อ จุดประสงค์ของโพสต์นี้คือเพื่อขอให้ทุกคนมีส่วนร่วมในตัวอย่างของรหัสที่ไม่ดี / ไม่ถูกแก้ไขและวิธีการเขียนใหม่เพื่อการสุขาภิบาลที่ถูกต้อง นี่อาจเป็นรหัสทั่วไปในการทำให้สะอาดชื่อโพสต์หรือโพสต์ thumnails src หรือรหัสที่ซับซ้อนมากขึ้นที่จัดการการฆ่าเชื้อของ$_POST ข้อมูลสำหรับคำขอ Ajax นอกจากนี้ฉันต้องการทราบว่าฟังก์ชั่น WordPress สำหรับการเพิ่ม / อัปเดตฐานข้อมูล (เช่นที่กล่าวถึงในบล็อกรหัสด้านล่าง) จะดูแลการฆ่าเชื้อให้คุณโดยอัตโนมัติหรือไม่? ถ้าใช่มีข้อยกเว้นใด ๆ เมื่อคุณจะใช้มาตรการเพิ่มเติมเพื่อฆ่าเชื้อข้อมูลที่ส่งไปยังฟังก์ชัน WordPress เหล่านี้หรือไม่ add_user_meta update_user_meta add_post_meta update_post_meta //just to name a few นอกจากนี้การฆ่าเชื้อจะต้องทำแตกต่างกันเมื่อสะท้อน HTML ใน PHP เมื่อเทียบกับ …

5
มีสิ่งใดที่ Joomla หรือ Drupal สามารถทำได้ที่ไม่สามารถทำได้ใน WordPress? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันมีลูกค้าที่ต้องการใช้ Joomla เพราะพวกเขาบอกว่ามันดี ฉันพยายามโน้มน้าวพวกเขาว่า WordPress เป็นตัวเลือกที่ใช้งานง่ายกว่ามาก ฉันเคยเล่นกับ Joomla (และ Drupal) มาก่อนและฉันพบว่าช่วงการเรียนรู้สูงชันอย่างไม่น่าเชื่อ (อาจเป็นเพราะคำศัพท์ที่คลุมเครือ) ฉันพิจารณาตัวเองค่อนข้างเข้าใจในด้านเทคนิคและถ้าฉันพบว่ามันยากฉันแน่ใจว่าลูกค้าที่มีความสามารถด้านเทคนิคของฉันจะพบว่ามันไม่ชัดเจนและยากที่จะเรียนรู้ จนถึงตอนนี้ฉันยังไม่เจอสิ่งที่ลูกค้าต้องการซึ่งไม่สามารถทำได้ใน WordPress แต่ก่อนที่ฉันจะบอกพวกเขาว่าฉันต้องการตรวจสอบว่านี่เป็นกรณีจริง ๆ มีอะไรที่ Joomla หรือ Drupal สามารถทำเช่นนั้น WordPress ไม่ได้ (โดยเฉพาะตอนนี้กับโพสต์แบบกำหนดเองใน WP 3+)?

3
วิธีเชื่อมโยงไฟล์ jQuery / Javascript ภายนอกกับ WordPress
ดังนั้นฉันจึงใช้ Starkers ในการสร้างธีม WP ต่อไปของฉันและฉันพบปัญหาเล็ก ๆ ฉันรวม jQuery เวอร์ชันของตัวเองในheader.phpไฟล์ แต่เมื่อตรวจสอบเว็บไซต์ของฉันโดยใช้ Firebug ฉันสังเกตว่า jquery กำลังดาวน์โหลดสองครั้งฉัน ทำการขุดเล็กน้อยและสังเกตว่าไม่เพียง แต่ฉันรวมถึงไฟล์เท่านั้น แต่ยังมีwp_head()ฟังก์ชั่น ในการพยายามแก้ไขปัญหาฉันสังเกตเห็นความคิดเห็นในไฟล์ส่วนหัวซึ่งมีต้นกำเนิดมาจากชุดรูปแบบยี่สิบยี่สิบ: /* Always have wp_head() just before the closing </head> * tag of your theme, or you will break many plugins, which * generally use this hook to add elements to <head>, such …

4
วิธีที่ดีที่สุดในการยกเลิกปลั๊กอินในกรณีที่มีเวอร์ชัน PHP ไม่เพียงพอ
คุณเขียนปลั๊กอินที่ต้องการ PHP 5.1 มีคนพยายามติดตั้งบนเซิร์ฟเวอร์ที่มี PHP 4 คุณจัดการกับมันอย่างไรในลักษณะที่ปลอดภัยและใช้งานง่าย

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

4
อัปเดตฟอร์มวิดเจ็ตหลังการลากและวาง (ข้อผิดพลาดการบันทึก WP)
ฉันโพสต์รายงานข้อผิดพลาดเกี่ยวกับเรื่องนี้เมื่อไม่กี่เดือนที่ผ่านมา ( บน WordPress trac (ข้อผิดพลาดการอัปเดตอินสแตนซ์ของ Widget อินสแตนซ์) ) และฉันคิดว่าฉันจะลองเขียนมันที่นี่ด้วย อาจมีบางคนมีทางออกที่ดีกว่าในเรื่องนี้มากกว่าฉัน โดยทั่วไปปัญหาคือถ้าคุณวางวิดเจ็ตในแถบด้านข้างแบบฟอร์มวิดเจ็ตจะไม่ได้รับการอัปเดตจนกว่าคุณจะกดบันทึกด้วยตนเอง (หรือโหลดหน้าซ้ำ) สิ่งนี้ทำให้ไม่สามารถใช้รหัสทั้งหมดจากform()ฟังก์ชันที่ใช้ ID อินสแตนซ์ของวิดเจ็ตเพื่อทำอะไรบางอย่าง (จนกว่าคุณจะกดปุ่มบันทึก) สิ่งใด ๆ เช่นคำขอ ajax สิ่ง jQuery เช่น colorpickers และอื่น ๆ จะไม่ทำงานทันทีเนื่องจากจากฟังก์ชันนั้นจะปรากฏว่าอินสแตนซ์วิดเจ็ตยังไม่ได้รับการเริ่มต้น การแก้ไขที่สกปรกจะเป็นการเรียกใช้ปุ่มบันทึกโดยอัตโนมัติโดยใช้สิ่งที่ต้องการเช่นlivequery : $("#widgets-right .needfix").livequery(function(){ var widget = $(this).closest('div.widget'); wpWidgets.save(widget, 0, 1, 0); return false; }); และเพิ่ม.needfixคลาสform()หากอินสแตนซ์วิดเจ็ตไม่ได้ดูการเริ่มต้น: <div <?php if(!is_numeric($this->number)): ?>class="needfix"<?php endif; ?> …

3
วิธีสร้างข้อความด้วยไฮเปอร์ลิงก์ที่สามารถแปลได้ใน WordPress?
ฉันเห็นวิธีต่าง ๆ ในการทำข้อความด้วยการเชื่อมโยงหลายมิติที่แปลได้ อย่างไรก็ตามฉันไม่สามารถหาแนวปฏิบัติที่ดีที่สุดเพียงข้อเดียวได้ ดังนั้นนี่คือคำตอบบางส่วนที่ฉันพบ: // METHOD 1 sprintf( __( 'Please read %1$sthis%2$s.', 'tacoverdo-example-domain' ), '<a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">', '</a>' ); // METHOD 2 echo '<a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">'; _e( 'Please read this.', 'tacoverdo-example-domain' ); echo '</a>'; // METHOD 3 …

4
Custom Walker: วิธีรับ ID ในฟังก์ชั่น start_lvl
ฉันกำลังทำวอล์คเกอร์ที่กำหนดเองเป็นครั้งแรกเพื่อสร้างเมนูหีบเพลง ในการเริ่มต้นด้วยฉันใช้ตัวอย่างนี้: http://bitacre.com/2025/custom-nav-menu-walker-for-wordpress-themes มีสองฟังก์ชั่น ก่อน start_lvl แล้ว start_el ใน start_el ID จะถูกใช้โดย $ item-> ID ไม่มีใครรู้ว่าฉันสามารถทำได้ใน start_lvl เช่นกัน? ฉันต้องให้ ID (โดยรอบการนำทางระดับล่าง) เพื่อให้ฉันสามารถทริกเกอร์ให้ยุบในเมนูหีบเพลง สิ่งที่ฉันพยายามสร้างคืออะไรแบบนี้: <a href="#collapse2">Titel 2</a> <ul id="collapse2">Lower Level Menu 2</ul> <a href="#collapse3">Titel 3</a> <ul id="collapse3">Lower Level Menu 3</ul> รหัสของฉันสำหรับฟังก์ชั่น start_lvl: // add id's and classes to ul sub-menus function …

2
โฟลเดอร์อัพโหลดเฉพาะสำหรับ PDF ในประเภท Post แบบกำหนดเองใน WP multisite
ฉันต้องกรองการอัปโหลดไปยังโฟลเดอร์เฉพาะสำหรับประเภทโพสต์ที่กำหนดเองที่เรียกว่า "เอกสาร" เฉพาะสำหรับ PDF จนถึงตอนนี้ฉันมี: function custom_upload_directory( $args ) { $base_directory = '/home/xxx/my_uploadfolder'; $base_url = 'http://xxxx/wp-content/uploads/my_uploadfolder'; $id = $_REQUEST['post_id']; $parent = get_post( $id )->post_parent; // Check the post-type of the current post if( "document" == get_post_type( $id ) || "document" == get_post_type( $parent ) ) { $args['path'] = $base_directory; $args['url'] …

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