คำถามติดแท็ก theme-development

ธีมสร้างส่วนต่อประสานสาธารณะ (front-end) สำหรับไซต์ WordPress

5
โซลูชั่นสำหรับสร้างจาวาสคริปต์ / CSS แบบไดนามิก
สมมติว่าคุณต้องสร้างจาวาสคริปต์หรือโค้ด CSS ที่ขึ้นอยู่กับบริบทปัจจุบัน ตัวอย่างเช่นคุณมีแบบฟอร์มในหน้าแรกที่ส่งคำขอ ajax เมื่อส่งและแบบฟอร์มอื่นในหน้าเดียว หรือในกรณีของ CSS คุณต้องการสร้างธีมที่อนุญาตให้ผู้ใช้สร้างเลย์เอาต์ของตนเองเปลี่ยนสี ฯลฯ วิธีแก้ปัญหาฉันเห็นแล้ว: รวมรหัสในส่วนหัวของเอกสาร (หรือท้ายในกรณีของ JS) ทำคำขอพิเศษที่ผลรหัสเช่นsite.com?get_assets สิ่งนี้ช้าเพราะโหลด WP สองครั้ง เก็บไว้ในไฟล์ชั่วคราวตามระยะเวลาที่กำหนดและโหลดจากที่นั่น ไม่น่าเชื่อถือมากสำหรับธีมหรือปลั๊กอินสาธารณะ Javascript เท่านั้น - ทำให้เป็นแบบคงที่โดยใส่ลงในไฟล์ปกติที่โหลดทุกครั้ง ในกรณีนี้คุณจะต้องทำให้รหัสของคุณจัดการกับสถานการณ์ใด ๆ คุณรู้จักคนอื่นหรือไม่ คุณจะไปทางไหน

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 …

2
ไฟล์เทมเพลตขั้นต่ำสำหรับการพัฒนาธีม
WordPress มีไฟล์เทมเพลตธีมขั้นต่ำเช่น style.css index.php และไฟล์อื่น ๆ ตามที่ระบุไว้ที่นี่ที่นี่ หากผู้พัฒนาธีมต้องการสร้างธีมที่มีระฆังและเสียงนกหวีดน้อยกว่าไฟล์เทมเพลตบางไฟล์ที่ควรรวมอยู่ในขั้นต่ำคืออะไร? ไม่มีแนวทางใด ๆ ใน WordPress codex สิ่งเดียวที่คุณสามารถค้นหาได้คือไฟล์ใดและรวมไว้เมื่อใด สำหรับการใช้ประโยชน์จากฟังก์ชั่น WordPress ส่วนใหญ่โดยไม่มีข้อขัดแย้งใด ๆ ดูเหมือนจะไม่ได้มีการระบุจำนวนเฉพาะสำหรับไฟล์เทมเพลต ดังนั้นควรมีกี่ไฟล์เมื่อคุณสร้างชุดรูปแบบจากแม่แบบ HTML html ใหม่

2
ส่งผ่าน object / JSON ไปที่ wp_localize_script
ฉันมีจาวาสคริปต์ที่มีวัตถุตามตัวอักษร แต่ฉันต้อง จำกัด มันและฉันพยายามหาวิธีเขียนมันใหม่เพื่อที่ฉันจะได้รับ wp_localize_script () เพื่อรับมันและออกรูปแบบที่ถูกต้อง รุ่นที่ไม่ใช่ภาษาท้องถิ่น (ไม่ใช่ไดนามิก) มีลักษณะดังนี้: var layoyt_config = { 'header' : 1 , 'footer' : 1 , 'ls' : {'sb1':1} , 'rs' : {'sb1':1,'sb2':1} , 'align' : 'center' }; ตอนนี้เพื่อให้มีค่าเหล่านั้นที่สร้างขึ้นโดย php (ขึ้นอยู่กับบาง wp_settings) ฉันต้องการใช้ wp_localize_script ดังนั้นฉันสามารถเอามันจากที่นั่น: var layoyt_config = my_localized_data.layoyt_config; และเพื่อให้ได้ข้อมูลนั้นไปยังคุณสมบัติของวัตถุนั้นฉัน 'คิด' ฉันสามารถทำสิ่งนี้ได้ แต่ไม่ชัดเจน: $data …

5
ธีมเปิดใช้งาน Hook
ฉันต้องการเขียนฟังก์ชั่นเพื่อส่ง URL ของเว็บไซต์ให้ฉันเมื่อเปิดใช้งานธีมของฉัน เบ็ดเริ่มต้นอะไรเมื่อเปิดใช้งานธีม?

3
get_template_part กับตะขอแอ็คชั่นในธีม
ดูเหมือนว่าทั้งสองสิ่งนี้เป็นโอกาสของผู้ใช้ในการปรับเปลี่ยนธีมโดยไม่ต้องแก้ไขไฟล์ธีม (ผ่านธีมลูก) คำถามของฉันคือเป็นวิธีหนึ่งที่ต้องการมากกว่าอีกวิธีหนึ่ง เช่นใช้ชุดรูปแบบฉัน workig ในตอนนี้ ฉันพยายามที่จะตัดสินใจว่าจะไปกับส่วนแม่แบบของ hooks <?php get_template_part('before_sitecontainer' ); ?> <div id="sitecontainer" class="sitecontainer" <?php //closed in footer ?>> <?php get_template_part( 'before_topcontainer' ); ?> <div id="topcontainer "> <?php get_template_part( 'before_topedge_navigation' ); ?> <?php get_template_part( 'topedge_navigation' ); ?> <?php get_template_part( 'before_site_header' ); ?> <?php get_template_part( 'site_header' ); ?> <?php get_template_part( …

6
เส้นทางธีมในไฟล์จาวาสคริปต์
ฉันต้องรวมเส้นทางไปยังไฟล์ธีมของฉันภายในไฟล์จาวาสคริปต์ ฉันจะไปเกี่ยวกับเรื่องนี้อย่างไร ฉันได้ลองแล้ว: var templateUrl = "<?php get_stylesheet_directory_uri(); ?>"; function LightboxOptions() { this.fileLoadingImage = "'"+templateUrl+"/img/loading.gif'"; this.fileCloseImage = "'"+templateUrl+"/img/close.png'"; this.resizeDuration = 700; this.fadeDuration = 500; this.labelImage = "Image"; this.labelOf = "of"; } นี่ไม่ได้ให้เส้นทางแก่ฉัน แต่เพียงแค่แทรก<?php get_stylesheet_directory_uri(); ?>แทนที่จะเป็นเส้นทางที่แท้จริง ความคิดใด ๆ ขอบคุณล่วงหน้า!

2
ฟังก์ชั่นเดียว. php หรือแยกเป็นไฟล์ขนาดเล็กจำนวนมาก?
ฉันกำลังสร้างกรอบงานง่าย ๆ พร้อมตัวเลือกชุดรูปแบบ ฉันแบ่งส่วนของรหัสภายในfunctions.phpและวางไว้ในโครงสร้างโฟลเดอร์เฉพาะ ตอนนี้ในfunctions.phpไฟล์หลักของฉันฉันมีเพียงการrequire_onceโทรไปยังไฟล์เหล่านี้ แต่เพื่อเหตุผลของการโต้แย้ง - สมมติว่าฉันจะลงท้ายด้วย 20 ไฟล์ที่จะรวม คำถาม: สิ่งนี้มีผลต่อประสิทธิภาพ WP ในลักษณะที่มองเห็นได้หรือไม่? จะดีกว่าหรือเปล่าที่จะเก็บทุกอย่างไว้ในไฟล์ 1 ไฟล์ (functions.php) วิธีที่ดีที่สุดที่จะไปเกี่ยวกับเรื่องนี้คืออะไร? ขอบคุณ

1
ฉันสามารถสร้างวิดเจ็ต“ โพสต์ล่าสุด” ของฉันเองหรือปรับแต่งที่มีอยู่ได้หรือไม่?
ฉันต้องการเปิดใช้งานวิดเจ็ตโพสต์ล่าสุดที่มีความสามารถในการแสดงลิงก์ "ดูทั้งหมด" เมื่อมีการโพสต์มากกว่าที่ฉันได้ตั้งวิดเจ็ตให้แสดง ฉันต้องการยกเว้นหมวดหมู่หรือโพสต์บางประเภท เป็นไปได้ไหมที่จะทำผ่านทางฟังก์ชั่นของธีมของฉัน? (1) ปรับแต่งวิดเจ็ตที่มีอยู่หรือ (2) สร้างสำเนาของมันที่ฉันสามารถปรับแต่ง?

6
CSS ไม่อัปเดตในเบราว์เซอร์เมื่อฉันเปลี่ยน
ฉันกำลังทำงานกับ CSS ของเว็บไซต์ wordpress ของฉัน เมื่อฉันทำการเปลี่ยนแปลงและรีเฟรชหน้าการเปลี่ยนแปลงจะไม่ปรากฏ เมื่อฉันล้างประวัติเบราว์เซอร์และแคชการเปลี่ยนแปลงจะยังคงปรากฏ เมื่อฉันดูซอร์สโค้ดของหน้าและดูไฟล์ css มันมีเนื้อหาเก่าก่อนการเปลี่ยนแปลง ฉันจะได้รับสิ่งนี้เพื่ออัปเดตเพื่อให้ฉันสามารถพัฒนาได้อย่างไร

2
ประเภทโพสต์ที่กำหนดเอง - ฟิลด์คำสั่งซื้อ
ในประเภทโพสต์ที่กำหนดเองจะมีวิธีรวมฟิลด์ "คำสั่งซื้อ" ที่ใช้ได้กับหน้าเว็บหรือไม่ มีตรรกะในตัวที่ป้องกันค่าที่ซ้ำกันในฟิลด์ "คำสั่งซื้อ" หรือไม่? แนวคิดคือสามารถจัดเรียงประเภทโพสต์ที่กำหนดเองตามคำสั่งที่ผู้ใช้ระบุตามลำดับตัวอักษรตามฟิลด์ที่กำหนดเองตามสตริง

1
แสดงจำนวนผลลัพธ์การค้นหา
จนถึงตอนนี้ฉันใช้โค้ดด้านล่างเพื่อรับจำนวนผลลัพธ์เมื่อมีคนค้นหาและแสดงจำนวนนั้น <?php /* Search Count */ $allsearch =& new WP_Query("s=$s&showposts=-1"); $count = $allsearch->post_count; echo $count . ' '; wp_reset_query(); ?> แต่ดูเหมือนว่าจะไม่เป็นรหัสที่ถูกต้อง มันแสดงให้เห็นข้อผิดพลาดด้านล่าง: เลิกใช้แล้ว: การกำหนดค่าส่งคืนของใหม่โดยการอ้างอิงนั้นเลิกใช้แล้ว ใครช่วยกรุณาแนะนำวิธีการที่เหมาะสมที่ฉันได้รับการค้นหา โค้ดด้านบนถูกวางไว้ในส่วนหัวของไฟล์ index.php ของธีมภายในคำสั่งแบบมีเงื่อนไขเพื่อแสดงหัวเรื่องที่แตกต่างกันตามประเภทของหน้าเว็บที่ผู้ใช้เปิดอยู่

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

2
ฉันจะเพิ่มฟิลด์ URL ในหน้าต่างสิ่งที่แนบได้อย่างไร
ตัวอย่างเช่น... add_action('init', 'reg_tax'); function reg_tax() { register_taxonomy_for_object_type('category', 'attachment'); } เพิ่มฟิลด์อินพุต "หมวดหมู่" ไปยังตัวจัดการสื่อและตัวแก้ไขสิ่งที่แนบ ฉันต้องการทราบว่าเป็นไปได้หรือไม่ที่จะเปลี่ยนฟังก์ชั่นนี้เพื่อจับ URL "ลิงก์ปลายทาง" แทน URL จะถูกดำเนินการเมื่อมีการคลิกที่ภาพ ต้องทราบวิธีการรับค่าสำหรับฟิลด์ใหม่นี้ด้วย UPDATE: ขอบคุณโทมัสคำตอบด้านล่างนี่คือคำตอบสุดท้ายของฉัน ... function my_image_attachment_fields_to_edit($form_fields, $post) { $form_fields["custom1"] = array( "label" => __("Image Links To"), "input" => "text", "value" => get_post_meta($post->ID, "_custom1", true) ); return $form_fields; } function my_image_attachment_fields_to_save($post, $attachment) { …

2
ฉันจะกำหนดค่า Docker สำหรับการพัฒนาและปรับใช้ธีมที่กำหนดเองได้อย่างไร
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ ฉันเริ่มต้นกับนักเทียบท่าและฉันยังใหม่กับการพัฒนา WordPress อย่างมืออาชีพ ฉันต้องการตั้งค่าสภาพแวดล้อมการพัฒนา Docker (บน Mac ของฉัน) เพื่อให้ฉันสามารถพัฒนาธีม WordPress ที่กำหนดเองได้ สมมติว่าคุณเคยทำสิ่งนี้มาก่อนและใช้ Docker อยู่แล้วคุณตั้งค่านี้ได้อย่างไร Dockerfile และ docker-compose.yml ของคุณมีลักษณะอย่างไร ฉันแน่ใจว่าสิ่งนี้เคยทำมาก่อน ฉันจะไม่แปลกใจถ้ามีคำสั่งบรรทัดเดียวที่สามารถตั้งค่านี้ให้คุณได้ อัปเดต:ฉัน จำกัด หัวข้อนี้ให้แคบลงเป็นคำถามต่อไปนี้ ฉันจะกำหนดค่า Docker สำหรับการพัฒนาและปรับใช้ธีมที่กำหนดเองได้อย่างไร

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