ตัวอย่าง WordPress 10 สำหรับการปรับแต่งธีม
เมื่อคุณใช้งาน WordPress มันง่ายมากที่จะเปลี่ยนรูปลักษณ์ของเว็บไซต์ของคุณด้วยธีม WordPress Themes มีมากมายให้เลือกทั้งแบบฟรีและแบบพรีเมี่ยม เลือกชุดรูปแบบติดตั้งและคุณจะได้รับรูปลักษณ์ใหม่อย่างสมบูรณ์สำหรับเว็บไซต์ของคุณภายในไม่กี่นาที.
แต่นอกเหนือจากการมอบรูปลักษณ์และความรู้สึกแล้วธีม WordPress สามารถขยายออกไปได้หลายทางเช่นกัน คุณสามารถสร้างฟังก์ชันการทำงานใหม่ด้วยปลั๊กอิน แต่ในโพสต์นี้เรากำลังดู ฟังก์ชั่น WordPress ที่มีประโยชน์สำหรับธีมของคุณ. คุณเพียงแค่ใส่ฟังก์ชั่นเหล่านี้ในไฟล์ functions.php ของธีมของคุณเพื่อให้เอฟเฟกต์เกิดขึ้น.
การอ่านที่แนะนำ: วิธีการจัดการและใช้ตัวอย่างโค้ดใน WordPress
1. เปลี่ยนความยาวของข้อความที่ตัดตอนมา
สิ่งที่สกัดมา เป็นบทความสั้น ๆ ที่คุณสามารถเห็นได้ WordPress ในกรณีนี้ตั้งข้อความที่ตัดตอนมาให้เป็น 55 คำโดยค่าเริ่มต้น แต่ WordPress ช่วยให้เราสามารถกำหนดความยาวเริ่มต้นผ่าน excerpt_length
ตัวกรองดังต่อไปนี้.
ฟังก์ชัน my_excerpt_length ($ length) return 30; add_filter ('excerpt_length', 'my_excerpt_length', 999);
ค่าส่งคืนหมายถึงผลรวมของคำที่จะแสดงเป็นข้อความที่ตัดตอนมา ในตัวอย่างด้านบนเราแสดงคำที่โพสต์ในข้อความที่ตัดตอนมา 30 คำ.
2. ลดการแก้ไขโพสต์
WordPress เปิดโอกาสให้นักเขียนและนักเขียนบล็อกมองย้อนกลับไปดูงานก่อนหน้านี้ อย่างไรก็ตามเมื่อการปรับปรุงมีจำนวนเพิ่มขึ้นอาจมีผลต่อประสิทธิภาพของเว็บไซต์เนื่องจากการแก้ไขที่บันทึกใหม่แต่ละครั้งจะเพิ่มแถวใหม่ให้กับฐานข้อมูล ปัญหานี้จะเลวร้ายลงเมื่อเวลาผ่านไป.
เพื่อแก้ไขปัญหานี้คุณสามารถกำหนดจำนวนการแก้ไขที่คุณต้องการบันทึกในฐานข้อมูล หากต้องการทำสิ่งนี้ให้เปิดของคุณ WP-config.php และเพิ่มตัวอย่างนี้ด้านล่าง เปลี่ยนหมายเลขเพื่อ จำกัด จำนวนการแก้ไขที่คุณต้องการบันทึก.
define ('WP_POST_REVISIONS', 5);
หากคุณต้องการปิดใช้งานการแก้ไข WordPress ให้สลับค่าเป็น FALSE
อย่างนี้:
define ('WP_POST_REVISIONS', false);
3. ตั้งค่ารูปภาพเด่นโดยอัตโนมัติในโพสต์
เป็นเรื่องธรรมดาที่จะแสดงภาพเด่นที่แสดงหรืออธิบายโพสต์ WordPress ต้องการให้เราตั้งค่าภาพเด่นนี้ ด้วยมือ. เพื่อให้กระบวนการมีประสิทธิภาพมากขึ้นเราสามารถกำหนดภาพเด่น อัตโนมัติ โดยสร้างภาพแรกในโพสต์ภาพเด่น ใช้ข้อมูลโค้ดต่อไปนี้.
ฟังก์ชัน autoset_featured () global $ post; $ now_has_thumb = has_post_thumbnail ($ post-> ID); if (! $ only_has_thumb) $ Attach_image = get_children ("post_parent = $ post-> ID & post_type = ไฟล์แนบ & post_mime_type = ภาพ & numberposts = 1"); if ($ attach_image) foreach ($ attach_image เป็น $ Attach_id => $ Attach) set_post_thumbnail ($ post-> ID, $ Attach_id) add_action ('the_post', 'autoset_featured'); add_action ('save_post', 'autoset_featured'); add_action ('draft_to_publish', 'autoset_featured'); add_action ('new_to_publish', 'autoset_featured'); add_action ('pending_to_publish', 'autoset_featured'); add_action ('future_to_publish', 'autoset_featured');
4. บังคับความยาวความคิดเห็นขั้นต่ำ
ไม่ใช่แฟนของความคิดเห็น 1-2 คำที่ชอบ “Nice Post!”, “ทำได้ดีมาก!”? แม้ว่าความคิดเห็นอาจไม่ใช่สแปมความคิดเห็นเหล่านี้เป็นประเภทของความคิดเห็นที่โดยทั่วไปแล้วจะไม่สนับสนุนการสนทนาเพิ่มเติม หากคุณต้องการให้ผู้แสดงความคิดเห็นพูดคุยคุณสามารถกำหนดความยาวขั้นต่ำของคำที่ต้องการก่อนที่ผู้อ่านจะสามารถโพสต์ความคิดเห็น.
ด้านล่างนี้เป็นตัวอย่างข้อมูลเพื่อกำหนดจำนวนอักขระหรือคำต่ำสุดสำหรับความคิดเห็น ใส่ไว้ใน functions.php.
ฟังก์ชั่น minimal_comment_length ($ commentdata) $ minimalCommentLength = 20; if (strlen (ตัด ($ commentdata ['comment_content']))
$ minimalCommentLength
value คือจำนวนอักขระขั้นต่ำที่ต้องการทำการเปลี่ยนแปลงค่านี้เพื่อปรับแต่ง.5. ปิดใช้งานลิงก์จากความคิดเห็นของผู้ใช้
ลิงค์ที่รวมอยู่ในแบบฟอร์มความคิดเห็นจะกลายเป็นลิงค์แบบคลิกได้ทันทีเมื่อมีการโพสต์และอนุมัติ สิ่งนี้สามารถใช้ประโยชน์จากผู้ส่งอีเมลขยะกระตุ้นให้พวกเขาท่วมส่วนความคิดเห็นของคุณด้วยลิงก์ไปยังหน้า "สแปม".
ในการแก้ปัญหานี้คุณสามารถเพิ่มตัวกรองนี้เพื่อปิดการใช้งานความสามารถในการคลิกของลิงก์และเก็บไว้เป็นข้อความธรรมดา.
remove_filter ('comment_text', 'make_clickable', 9);6. ลบคลาสและ ID จากเมนูที่กำหนดเอง
หากคุณดูเมนูกำหนดเองใน WordPress คุณจะพบคลาสและรหัสในทุกรายการเมนู ใช้ตัวอย่างด้านล่างเพื่อลบชั้นเรียนที่คุณไม่ต้องการและเพื่อให้ชั้นเรียนที่คุณต้องการ.
ฟังก์ชั่น my_css_attributes_filter ($ var) return is_array ($ var)? array_intersect ($ var, อาร์เรย์ ('รายการเมนูปัจจุบัน')): "; add_filter ('nav_menu_css_class', 'my_css_attributes_filter', 100, 1); add_filter ('nav_menu_item_id' add_filter ('page_css_class', 'my_css_attributes_filter', 100, 1);ในรหัสข้างต้นเราจะรักษา
ปัจจุบันรายการเมนู
ชั้น.7. ยกเว้นหน้าเว็บจากการค้นหา
การค้นหาใน WordPress จะดึงผลลัพธ์จากทั้งหน้าและโพสต์บางครั้งมีความเกี่ยวข้องกับข้อความค้นหาของคุณไม่มากนัก เพื่อป้องกันสิ่งนี้คุณสามารถกรองผลการค้นหาเพื่อแสดงเฉพาะที่พบในโพสต์ เพิ่มตัวอย่างนี้ไปที่ function.php เพื่อทำสิ่งนี้.
ฟังก์ชัน SearchFilter ($ query) ถ้า ($ query-> is_search) $ query-> set ('post_type', 'post'); ส่งคืนการสืบค้น $; add_filter ('pre_get_posts', 'SearchFilter');8. แทนที่ข้อความ Howdy
เบื่อกับข้อความ 'Howdy' หรือไม่ ถ้าคุณต้องการที่จะเปลี่ยนเป็นคำทักทายพิเศษในเว็บไซต์ของคุณเพียงแค่เพิ่มสิ่งนี้ลงใน function.php และผลจะเกิดขึ้นทันที.
ฟังก์ชั่น change_howdy ($ ที่แปลแล้ว, $ text, $ domain) ถ้า (false! == strpos ($ ที่แปลแล้ว, 'Howdy')) return str_replace ('Howdy', 'Hello', $ ที่แปลแล้ว); ผลตอบแทน $ แปล; add_filter ('gettext', 'change_howdy', 10, 3);9. เพิ่มการลบเมนูเพิ่มเติมสำหรับบทบาทเฉพาะ
คุณสามารถซ่อนเมนูที่อยู่ในแผงควบคุมสำหรับผู้ที่ไม่ใช่ผู้ดูแลระบบด้วยข้อมูลโค้ดนี้.
ฟังก์ชั่น remove_admin_menus () ถ้า (is_user_logged_in () &&! current_user_can ('ผู้ดูแลระบบ')) remove_menu_page ('index.php'); // Dashboard remove_menu_page ('edit.php'); // กระทู้ Remove_menu_page ('upload.php'); // สื่อ remove_menu_page ('edit.php? post_type = หน้า'); // หน้า remove_menu_page ('edit-comments.php'); // ความคิดเห็น remove_menu_page ('themes.php'); // รูปลักษณ์ remove_menu_page ('plugins.php'); // Plugins remove_menu_page ('users.php'); // ผู้ใช้ remove_menu_page ('tools.php'); // เครื่องมือ remove_menu_page ('options-general.php'); // การตั้งค่า add_action ('admin_init', 'remove_admin_menus');โปรดทราบว่านี่เป็นเพียงการลบเมนูออกจากหน้าจอ แต่ไม่ได้กรองสิทธิ์ของผู้ใช้ในการเข้าถึงเมนูเหล่านี้ ไม่ได้ป้องกันผู้ใช้จากการเข้าถึงเมนูเหล่านั้นโดยตรงผ่านแถบที่อยู่ของเบราว์เซอร์ อย่าลืมเพิ่มลงในของคุณ functions.php.
10. ลบลิงก์ของแถบผู้ดูแลระบบสำหรับผู้ที่ไม่ใช่ผู้ดูแลระบบ
ใน WordPress Dashboard นอกเหนือจากเมนูหลักที่แถบด้านข้างคุณจะพบลิงค์เมนูสองสามลิงค์ที่ด้านบน คุณสามารถ จำกัด การเข้าถึงลิงก์ของแถบผู้ดูแลระบบนี้จากบทบาทหรือผู้ใช้ที่เฉพาะเจาะจง ตัวอย่างด้านล่างนี้จะลบเมนูในแถบผู้ดูแลระบบสำหรับผู้ใช้ที่ไม่ได้เป็นผู้ดูแลระบบ - ปรับตาม.
ฟังก์ชั่น remove_admin_bar_links () global $ wp_admin_bar; if (! current_user_can ('administrator')) $ wp_admin_bar-> remove_menu ('wp-logo'); // ลบโลโก้ WordPress $ wp_admin_bar-> remove_menu ('เกี่ยวกับ'); // ลบลิงก์เกี่ยวกับ WordPress $ wp_admin_bar-> remove_menu ('wporg'); // ลบลิงก์ WordPress.org $ wp_admin_bar-> remove_menu ('เอกสาร'); // ลบลิงก์เอกสาร WordPress $ wp_admin_bar-> remove_menu ('support-forum'); // ลบลิงค์ฟอรัมสนับสนุน $ wp_admin_bar-> remove_menu ('feedback'); // ลบลิงค์ความคิดเห็น $ wp_admin_bar-> remove_menu ('ชื่อไซต์'); // ลบลิงค์ชื่อเว็บไซต์ $ wp_admin_bar-> remove_menu ('ดูเว็บไซต์'); // ลบลิงค์เว็บไซต์เยี่ยมชม $ wp_admin_bar-> remove_menu ('อัพเดต'); // ลบลิงค์อัพเดต $ wp_admin_bar-> remove_menu ('ความคิดเห็น'); // ลบลิงค์ความคิดเห็น $ wp_admin_bar-> remove_menu ('เนื้อหาใหม่'); // ลบลิงค์เนื้อหาใหม่ $ wp_admin_bar-> remove_menu ('บัญชีของฉัน'); // ลบแท็บรายละเอียดผู้ใช้ add_action ('wp_before_admin_bar_render', 'remove_admin_bar_links');