WordPress

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

2
Wordpress Git Workflow ช่วยเหลือ
ฉันกำลังมองหาแนวคิดเวิร์กโฟลว์ที่มีความคล่องตัวสำหรับการทำงานกับ Wordpress ต้องการมีสภาพแวดล้อมคอมไพล์ของฉันบนเซิร์ฟเวอร์ของตัวเองภายในไม่ใช้ Github เพื่อจัดการ repos การสร้างโดเมนย่อยโดยอัตโนมัติตามการสร้างสาขา git (development.domain.com, ryan.development.domain.com) - อาจมีเชลล์สคริปต์ hook บางตัวที่เหมาะสำหรับสิ่งนี้ Phing สคริปต์ PHP / Shell การจัดการการย้ายฐานข้อมูล (บางอย่างเช่นนี้http://interconnectit.com/products/search-and-replace-for-wordpress-databases/ ) เพื่อจัดการการเปลี่ยนฐานข้อมูลแบบอนุกรมเมื่อมีการกด การดำเนินการอาจจะเป็นอย่างนี้: รับรุ่น wordpress ล่าสุดในปัจจุบันและสาขาออกชื่อของสาขาได้รับรายการย่อย (branchdevelopment.domain.com) ส่งธีมที่คุณต้องการถ้ามี (ฉันต้องการทำ repo git ของตัวเองสำหรับเรื่องนี้เนื่องจากฉันใช้วิทยานิพนธ์ฉันต้องการให้มีการตั้งค่า git repo วิทยานิพนธ์เปล่าเพื่อคว้าจากภายในเซิร์ฟเวอร์ที่สร้างขึ้นแล้ว) ชำระเงินและทำการเปลี่ยนแปลงความคิดเห็นของลูกค้าเมื่อมีการผลักดันให้มีชีวิตสคริปต์ฐานข้อมูลจะเริ่มเปลี่ยนค่า URL ที่ต่อเนื่องกันโดยอัตโนมัติจาก localhost (หรือโดเมนย่อย) เป็น URL สด เป็นไปได้ไหม ฉันได้ยินมาว่า Capistrano ก็ใช้งานได้ดีเช่นกัน แต่ไม่แน่ใจว่า Capistrano …
17 git  workflow 

1
ทำไมคุณต้องมีจำนวนเต็มในการคำนวณเลข?
การpaginate_linksอ้างอิงฟังก์ชัน Codexมีรหัสตัวอย่างบางส่วนที่ถูกโพสต์ใหม่ทั่วเน็ต มันมีส่วนที่ใช้ตัวแปรที่เรียกว่า$big = 999999999; // need an unlikely integer: echo paginate_links( array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'format' => '?paged=%#%', 'current' => max( 1, get_query_var('paged') ), 'total' => $wp_query->max_num_pages ) ); และใช้ในการstr_replaceในecho paginate_linksฟังก์ชั่น นี่เป็นรูปแบบของการห่อหุ้มหรือไม่?
17 pagination 

2
รับโพสต์จากไซต์ใน Multisite หรือไม่
ฉันพยายามดึงโพสต์เว็บไซต์หลายแห่ง ตัวอย่างเช่นฉันสามารถดึงโพสต์ไซต์เดียวตามหมวดหมู่และโพสต์ทั้งหมด 10 แต่ฉันพยายามดึงทั้งสองโพสต์จากสองบล็อก Multisite 1 และ 2 แต่บล็อก 1 ใช้ได้เท่านั้น นอกจากนี้ฉันต้องการดึงหมวดหมู่อื่นจากบล็อก 1 และบล็อก 2 ตามหมวดหมู่อื่น ฉันจะบรรลุสิ่งนี้ได้อย่างไร นี่คือสิ่งที่ฉันพยายามทำ: <?php global $switched; switch_to_blog(1,2); //switched to 1 & 2 but only 1 working // Get latest Post $latest_posts = get_posts('&cat=64&showposts=10'); $cnt =0;?> <ul> <?php foreach($latest_posts as $post) : setup_postdata($post);?> <li> <a href="<?php …

3
ฉันจะเพิ่มแท็บ“ แทรกจาก URL” ลงในเครื่องมืออัปโหลดสื่อ 3.5 แบบกำหนดเองได้อย่างไร
ฉันได้แทรกตัวอัปโหลดสื่อ WP 3.5 ลงในวิดเจ็ตโดยเรียกใช้ JavaScript นี้เมื่อคลิกปุ่ม: var frame = wp.media( { title : 'Widget Uploader', multiple : false, library : { type : 'image' }, button : { text : 'Select Image' } } ); frame.on( 'close', function() { var attachments = frame.state().get( 'selection' ).toJSON(); imageWidget.render( widget_id, widget_id_string, attachments[0] ); …
17 widgets  uploads  media 

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

3
รับลูกของหมวดหมู่ผู้ปกครอง
ฉันพยายามทำให้เด็กทุกประเภทแสดงในลูปนี้ แต่ฉันกำลังดิ้นรนกับรหัส นี่คือสิ่งที่ฉันมี <?php $args=array('orderby' => 'name', 'order' => 'ASC'); $categories=get_categories($args); foreach ($categories as $cat) { ?> <dt><a href="#" class="customer-acquisitiontop" id="<?php echo $cat->slug; ?>" data-filter=".<?php echo $cat->slug; ?>"><h2><?= $cat->cat_name; ?></h2></a></dt> <dd><div class="services"> <?= $categories=get_categories('parent'); ?> /*This should be the children of the parent category */ </div> </dd> <?php } ?> …

3
การเพิ่ม admin-ajax.php ไปยังส่วนหน้า ความคิดที่ดีหรือไม่ดี?
ฉันรัก admin-ajax.php แต่ฉันเกลียดที่จะแปลเป็นภาษาท้องถิ่นเพื่อชี้สคริปต์ส่วนหน้าให้กับมันและฉันหวังว่าจะมีไฟล์ที่เทียบเท่าและหาได้ง่ายสำหรับธีม (มันก็แค่ทำให้ฉันรำคาญที่จะเห็นคำขอส่วนหน้าผ่าน "/ wp-admin /" ไม่มีเหตุผลจริงเพียงดู IMO น่าเกลียด) ดังนั้นฉันเพียงแค่คัดลอก admin-ajax.php ไปยัง root dir ที่ "/ajax.php" ปรับเส้นทางการรวมและลบ WP_ADMIN คำจำกัดความคงที่ ดูเหมือนว่าจะทำงานเหมือนกับพวกแก๊งค์บัส (ตอนนี้ฉันสามารถส่งคำขอ AJAX ส่วนหน้าทั้งหมดของฉันไปที่ /ajax.php! แต่จะปลอดภัยหรือไม่ มีอะไรผิดปกติ? เนื่องจากสิ่งนี้ไม่ได้อยู่ในแกนฉันคิดว่ามีเหตุผลที่ดีว่าทำไมไม่ แต่เมื่อมองดูจากรหัสฉันไม่สามารถเห็นปัญหาได้ทันที คุณฉลาด - บอกฉันว่าวิธีนี้บ้า หรือถ้ามีวิธีที่ง่ายกว่าที่ฉันมองเห็น
17 themes  ajax 

1
ค้นหาจำนวนหน้าทั้งหมดในข้อความค้นหาทั่วโลกในหน้าเก็บถาวรหรือไม่
ฉันพยายามค้นหาว่ามีบทความมากกว่าหนึ่งหน้าหรือไม่ (ฉันได้ตั้งค่าบทความของฉันต่อหน้าบล็อกเป็น 5 ในการตั้งค่าการอ่าน) ในเทมเพลตหมวดหมู่ที่กำหนดเอง ฉันคิดว่าข้อความค้นหาทั่วโลกจะมีจำนวนหน้าเป็นคุณสมบัติ แต่ฉันไม่พบการโทร

3
วิธีที่มีประสิทธิภาพมากที่สุดในการเพิ่มไฟล์จาวาสคริปต์ในโพสต์และ / หรือหน้าเฉพาะ
ฉันสงสัยว่าวิธีที่มีประสิทธิภาพที่สุดคือการเพิ่มไฟล์จาวาสคริปต์เฉพาะสำหรับโพสต์และ / หรือหน้า ต่อไปนี้เป็นคำตอบบางส่วนที่ฉันได้รับ: เปลี่ยนเป็นมุมมองการแก้ไข HTML และโพสต์ JavaScript ของคุณในนั้น (โซลูชันที่ไม่ดีพอ) ฟิลด์ที่กำหนดเองพร้อม JavaScript เฉพาะสำหรับโพสต์ / เพจนั้นในคู่ของคีย์ & ค่า ใน footer.php โหลดไฟล์ JavaScript ขึ้นอยู่กับว่าคุณอยู่ในหน้าไหน (สิ่งนี้นำไปสู่เงื่อนไขมากมาย) ในบันทึกด้านข้างไม่มีไฟล์ JavaScript ใดที่จะถูกแชร์ระหว่างหน้า - มันจะเจาะจงเฉพาะกับสิ่งที่คุณกำลังดูอยู่ ความคิดใด ๆ

2
ในบริบทใดที่ปลั๊กอินรับผิดชอบการตรวจสอบข้อมูล / การฆ่าเชื้อ?
ฉันต้องการตรวจสอบให้แน่ใจว่าข้อมูลทั้งหมดในปลั๊กอิน / ชุดรูปแบบของฉันได้รับการจัดการอย่างปลอดภัยก่อนที่จะเข้าสู่ฐานข้อมูลและก่อนที่จะส่งออกไปยังเบราว์เซอร์ ปัญหาของฉันคือมีสถานการณ์ที่ API จัดการการฆ่าเชื้อสำหรับคุณ - เช่นเมื่อบันทึกเขตข้อมูลการโพสต์ - และอื่น ๆ ที่ผู้เขียนปลั๊กอิน / ชุดรูปแบบมีความรับผิดชอบทั้งหมดในการทำเช่น - เมื่อบันทึกการตั้งค่าที่กำหนดเอง สำหรับขอบเขตของคำถามนี้ฉันไม่กังวลเกี่ยวกับการตรวจสอบข้อมูลในระดับโดเมน - เช่นการตรวจสอบว่าฟิลด์ Age บนฟอร์มอยู่ระหว่าง 0 ถึง 120 หรือที่อยู่อีเมลนั้นถูกต้อง ฉันกังวลเกี่ยวกับความปลอดภัยเท่านั้น - เช่นการหลีกเลี่ยงการสืบค้น SQL เพื่อหลีกเลี่ยงการฉีด SQL เมื่อบันทึกลงในฐานข้อมูลหรือฆ่าข้อมูลที่ส่งออกไปยังเทมเพลต HTML เพื่อหลีกเลี่ยง XSS สำหรับการฆ่าเชื้อด้วยเอาท์พุตฉันรู้ว่าคุณจำเป็นต้องใช้ฟังก์ชั่นเช่นesc_html()และesc_attr()เมื่อสะท้อนตัวแปรในเทมเพลต HTML แต่แล้วเมื่อใช้แท็กเทมเพลตล่ะ พวกเขาทั้งหมดสะอาดผลลัพธ์แล้วหรือไม่ ถ้าเป็นเช่นนั้นสำหรับบริบทใด (HTML ทั่วไปแอตทริบิวต์ของแท็ก ฯลฯ ) บางฟังก์ชั่นมีตัวแปรสำหรับบริบทที่แตกต่างกัน (เช่นthe_title_attribute()แต่ส่วนใหญ่ไม่มี สำหรับการฆ่าเชื้ออินพุตฉันรู้ว่าฉันต้องใช้$wpdb->prepare()เมื่อสร้างเคียวรีแบบแมนนวล แต่ถ้าใช้ API การตั้งค่าเพื่อสร้างหน้าการตั้งค่าปลั๊กอินหรือบันทึกเขตข้อมูลเมตาโพสต์สำหรับประเภทโพสต์ที่กำหนดเอง …

3
เพิ่มพารามิเตอร์พิเศษหลังจากลิงก์มาหรือไม่
ฉันจะเพิ่มพารามิเตอร์เพิ่มเติมหลังจากลิงก์ได้อย่างไรโดยเฉพาะหากฉันใช้ประเภทโพสต์ที่กำหนดเอง ตัวอย่างเช่นสมมติว่าhttp://mysite/album/record-nameเป็นลิงก์ถาวร ฉันจะทำให้http://mysite/album/record-name/relatedไม่เปิดใช้งาน 404 หรือเปลี่ยนเส้นทางได้อย่างไร WordPress ดูเหมือนจะไม่เรียกแม่แบบโพสต์หากโพสต์ไม่มีอยู่ ... ดังนั้นฉันจะเสียวิธีการทำเช่นนี้

3
จะเพิ่ม Custom Blog Options ในแบบฟอร์มการตั้งค่าบล็อกใหม่ได้อย่างไร
ดูเหมือนจะเป็นข้อกำหนดที่เรียบง่าย แต่ฉันกำลังดิ้นรน: ฉันต้องการเพิ่มฟิลด์ตัวเลือกที่จะ "เพิ่มเว็บไซต์ใหม่" ตัวเลือกข้อความแบบธรรมดานั้นใช้ได้ ฉันจะทำสิ่งนี้ได้อย่างไร ฉันต้องบันทึกตัวเลือกบล็อกที่กำหนดเองนี้เมื่อสร้างเว็บไซต์ ฉันรู้ว่าฉันสามารถใช้ตะขอ 'wpmu_new_blog' ซึ่งส่งผ่าน$metaตัวแปรพร้อมตัวเลือกที่ให้มา แต่ฉันสงสัยว่ามีวิธีที่จะทำสิ่งนี้ทั้งหมดในขั้นตอนเดียวดังนั้นฉันไม่ต้องทำการค้นหา DB อีกครั้งหรือแย่กว่านั้น แทนที่ / แทนที่กระบวนการสร้างไซต์ทั้งหมดหรือไม่ หมายเหตุ: ฉันใช้ WP 3.3.1 พร้อมการตั้งค่า MultiSite ฉันกำลังเขียนปลั๊กอินที่แสดงไซต์ทั้งหมดที่ตรงกับค่าฟิลด์ที่กำหนดเองที่ระบุ (ลองเรียกมันว่า "type") นอกจากนี้ฉันเป็นนักพัฒนา PHP ที่มีประสบการณ์ แต่ฉันก็ยังค่อนข้างใหม่กับการแฮ็ค WordPress ดังนั้นโปรดคิดว่าฉันยังไม่คุ้นเคยกับฟังก์ชั่น WP และตะขอทั้งหมด

3
ชื่อเมนูที่แสดงโดยใช้ wp_nav_menu
ฉันมีเมนูที่กำหนดเองที่ฉันสามารถโทรได้โดยใช้ wp_nav_menu มีวิธีที่จะแสดงชื่อเมนูในแท็ก h3 หน้าเมนูหรือไม่? อดีต <h3>My Menu Name</h3> <nav> <ul> <li>Menu Item 1</li> <li>Menu Item 2</li> </ul> </nav>

5
ฉันจะหลีกเลี่ยง ']' ด้วยรหัสย่อได้อย่างไร
ฉันจะหลบหนีวงเล็บขวาในรหัสสั้น ๆ ได้อย่างไร ฉันกำลังทำงานกับปลั๊กอิน Google แผนที่ที่มีการเข้ารหัสจุด บางครั้งรูปหลายเหลี่ยมมี] อยู่ในนั้นซึ่งทำให้ WP คิดว่ามันเป็นจุดสิ้นสุดของรหัสย่อ ตัวอย่างเช่น: [my_shortcode latitude='36.93' longitude='-72.98' encoded_points='ortlF~g]tM?cZEH`z]}|@DQfi]' ] ฉันลองแล้ว]ซึ่งไม่ได้ทำให้เกิดปัญหาสำหรับ WP แต่มันทำให้เกิดปัญหากับรหัสแผนที่ Google ของฉัน ฉันสามารถใช้ Regex เพื่อแทนที่] แต่อาจมีวิธีที่ง่ายกว่า รหัสย่อมีอักขระเลี่ยงหรือไม่
17 shortcode 

3
ฉันจะใช้ค่าเซสชันที่กำหนดเองของฉันใน Wordpress ได้อย่างไร?
ฉันจะใช้ค่าเซสชันของตัวเอง (กำหนดเอง) ใน Wordpress ได้อย่างไร ตัวอย่างเช่น:$_SESSION['myname']="4lvin" ฉันได้แทรกsession_start()ทุกหน้าแล้วฉันต้องการดังต่อไปนี้ <?php session_start(); $_SESSION['myname'] = "4lvin"; ?> แต่ไม่สามารถใช้งานได้ทั่วโลก เพียงแค่ทำงานกับหน้าตัวเอง มันไม่สามารถโทรได้ทั่วโลกจากหน้าอื่น (ใช้ตรรกะเดียวกัน)
17 session 

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