17 WordPress Functions.php ไฟล์ Hacks

เผยแพร่แล้ว: 2017-05-28

ในบรรดาไฟล์หลักของ WordPress มีเพียงไม่กี่ไฟล์เท่านั้นที่ใช้งานได้หลากหลายเท่ากับ functions.php หากคุณรู้วิธีโต้ตอบกับมัน ไฟล์นี้จะช่วยให้คุณเพิ่มฟังก์ชันการทำงานทุกประเภทลงในไซต์ของคุณด้วยโค้ดเพียงไม่กี่บรรทัด

ในบทความนี้ เราจะบอกคุณทุกอย่างที่คุณจำเป็นต้องรู้เกี่ยวกับไฟล์ฟังก์ชันของ WordPress และวิธีใช้งานเพื่อประโยชน์ของคุณ เราจะหารือกันว่ามันทำอะไร เหตุใดคุณจึงควรใช้ และ เมื่อใดที่ไม่ควรใช้ นอกจากนี้ เราจะแนะนำให้คุณรู้จักกับ 17 ไฟล์แฮ็กที่มีประโยชน์เพื่อขยายฟังก์ชันการทำงานของไซต์ของคุณโดยไม่ต้องติดตั้งปลั๊กอิน

ให้การแสดงนี้บนท้องถนน!

บทนำสู่ไฟล์ฟังก์ชันของ WordPress

ไฟล์ functions.php เป็นหนึ่งในไฟล์หลักของ WordPress กล่าวอีกนัยหนึ่งคือช่วยขับเคลื่อนแพลตฟอร์มทั้งหมดและอยู่เบื้องหลังคุณลักษณะมากมายในไซต์ของคุณ

ไฟล์ functions.php ของธีมลูก

คุณยังสามารถใช้ไฟล์ functions.php เป็นวิธีชั่วคราวในการปรับใช้คุณสมบัติใหม่บนเว็บไซต์ของคุณ เช่น การเพิ่มวิดเจ็ตใหม่บนแดชบอร์ดของคุณ หรือขนาดภาพที่กำหนดเองสำหรับการติดตั้งของคุณ เป็นทางเลือกที่สมบูรณ์แบบสำหรับปลั๊กอิน WordPress สำหรับคุณลักษณะที่เรียบง่ายหรือชั่วคราว

นอกจากนี้ยังควรสังเกตว่ามีไฟล์ functions.php 'พาเร นต์ ' ที่มีอิทธิพลต่อทั้งไซต์ของคุณ แต่แต่ละธีมมาพร้อมกับเวอร์ชันย่อยของตัวเอง (เหมือนกับ ไฟล์ style.css ของคุณ) วิธีนี้ทำให้คุณสามารถใช้ฟังก์ชันได้เฉพาะกับธีมเฉพาะโดยไม่กระทบต่อไซต์ของคุณทั่วโลก

17 File Hacks สำหรับ WordPress Functions.php File ของคุณ

ดังที่เราได้กล่าวไว้ก่อนหน้านี้ แต่ละธีมมาพร้อมกับไฟล์ functions.php ของตัวเอง หากคุณกำลังจะทำการปรับเปลี่ยนของคุณอย่างละเอียด แนวทางปฏิบัติที่ดีที่สุดคือการตั้งค่าธีมย่อย เพื่อไม่ให้การเปลี่ยนแปลงของคุณหายไประหว่างการอัปเดต นอกจากนี้ คุณจะต้องสำรองข้อมูลไซต์ของคุณก่อนที่จะทำการเปลี่ยนแปลงใดๆ เผื่อในกรณีที่เกิดข้อผิดพลาดและคุณจำเป็นต้องย้อนกลับการเปลี่ยนแปลงของคุณ

ต่อไป คุณจะต้องเข้าถึงไฟล์ functions.php ของคุณโดยใช้ไคลเอนต์ FTP (File Transfer Protocol) เช่น FileZilla เพื่อไปยังไดเร็กทอรี wp-content/themes/ ภายในคุณจะพบโฟลเดอร์สำหรับแต่ละธีมของคุณ ซึ่งทั้งหมดควรมีไฟล์ functions.php ของตัวเองอยู่ภายใน:

ไฟล์ Divi functions.php

เพียงคลิกขวาที่มันแล้วเลือกตัวเลือกที่ระบุว่า แก้ไข ซึ่งจะเปิดโปรแกรมแก้ไขข้อความเริ่มต้นของคุณ เสร็จแล้วไปทำธุรกิจกันเถอะ!

1. เพิ่มผู้ดูแลระบบใหม่ใน WordPress

มีบางครั้งที่คุณอาจถูกล็อกไม่ให้เข้าบัญชีผู้ดูแลระบบ และไม่สามารถเปลี่ยนรหัสผ่านหรือเข้าถึงไซต์ของคุณได้ ด้วยการปรับแต่งนี้ คุณจะมีวิธีเพิ่มเติมในการเข้าถึงอีกครั้งผ่าน FTP

เช่นเดียวกับแฮ็กและตัวอย่างข้อมูลทั้งหมดเหล่านี้ เพียงคัดลอกโค้ดต่อไปนี้ วางที่ส่วนท้ายของไฟล์ functions.php ของธีมของคุณ และบันทึกการเปลี่ยนแปลง

function wpb_admin_account(){
$user = 'username';
$pass = 'password';
$email = '[email protected]';
if ( !username_exists( $user )  && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','wpb_admin_account');

คุณจะต้องแทนที่ค่าที่ระบุ ชื่อผู้ใช้ รหัสผ่าน และ อีเมล ด้วยค่าของคุณเอง เท่านี้ก็เรียบร้อย!

2. แสดงจำนวนผู้ใช้ที่ลงทะเบียนทั้งหมด

หากคุณเคยต้องการที่จะอวดให้โลกรู้เกี่ยวกับจำนวนผู้ใช้ที่ไซต์ของคุณมี การปรับแต่งนี้ช่วยให้คุณสามารถเพิ่มการนับง่ายๆ ที่ส่วนหน้าของคุณ แฮ็คนี้ยังมีประโยชน์มากกว่าแค่การคุยโม้ ตัวอย่างเช่น ผู้คนอาจเต็มใจที่จะไว้วางใจเว็บไซต์ของคุณมากขึ้นหากพวกเขารู้ว่าเว็บไซต์มีฐานผู้ใช้ที่แข็งแกร่ง นี่คือตัวอย่าง:

function wpb_user_count() {
$usercount = count_users();
$result = $usercount['total_users'];
return $result;
}
add_shortcode('user_count', 'wpb_user_count');

นี่เป็นขั้นสูงเล็กน้อย เนื่องจากเราได้ลงทะเบียน รหัสย่อที่ กำหนดเอง [user_count] เพื่อแสดงจำนวนผู้ใช้ที่ลงทะเบียนทั้งหมดบนไซต์ของคุณ แม้ว่านี่อาจเป็นหัวข้อที่ซับซ้อน แต่การใช้งานของเรานั้นง่าย!

3. ลบ 'แผงต้อนรับ' ของแดชบอร์ดของคุณ

แผงต้อนรับของคุณคือส่วนของแดชบอร์ดที่ปรากฏขึ้นทันทีที่คุณลงชื่อเข้าใช้ WordPress และมักจะมีเคล็ดลับและรายการตรวจสอบเล็กน้อยเพื่อช่วยให้คุณเริ่มต้นได้ ด้วยข้อมูลโค้ดนี้ คุณจะสามารถลบออกได้อย่างถาวร:

remove_action('welcome_panel', 'wp_welcome_panel');

แน่นอนว่าแผงต้อนรับไม่รุกรานเลย แต่อาจเก่าไปหน่อยหากคุณใช้แพลตฟอร์มมาระยะหนึ่งแล้วและไม่ต้องการคำแนะนำอีกต่อไป นอกจากนี้ เนื่องจากต้องใช้เพียงโค้ดเดียว การแฮ็กนี้จึงไม่มีข้อเสีย

4. ซ่อนหมายเลขเวอร์ชัน WordPress ของคุณ

อย่างที่คุณอาจทราบ ขึ้นอยู่กับธีมที่คุณใช้ WordPress มักจะแสดงหมายเลขเวอร์ชันในส่วนท้ายของไซต์ของคุณ เป็นรายละเอียดเล็กๆ น้อยๆ ที่คุณสามารถลบออกได้อย่างง่ายดายด้วยรหัสนี้:

function wpb_remove_version() {
return '';
}
add_filter('the_generator', 'wpb_remove_version');

หากคุณกำลังใช้งาน WordPress เวอร์ชันเก่า (ซึ่งแน่นอนว่าคุณไม่ควรเป็นเช่นนั้น) การปรับแต่งนี้อาจมีประโยชน์ในการทำให้คุณเป็นเป้าหมายที่ดึงดูดใจน้อยลง

5. แก้ไขส่วนท้ายแดชบอร์ดของคุณ

แดชบอร์ด WordPress ของคุณอาจมีข้อความอยู่เล็กน้อยที่ส่วนท้าย ซึ่งมักจะระบุเครดิตบางอย่าง (โดยปกติคือ WordPress เอง) เป็นสิ่งที่คุณอาจมองไม่เห็น แต่การแฮ็ก นี้ ให้โอกาสที่ดีแก่คุณในการปรับแต่งหรือสร้างแบรนด์เว็บไซต์ของคุณด้วยการแฮ็กง่ายๆ ลองดูรหัสที่เกี่ยวข้องกัน:

function remove_footer_admin () {
echo 'Hello world!';
}
add_filter('admin_footer_text', 'remove_footer_admin');

สำหรับแฮ็คนี้ คุณควรเปลี่ยน Hello world! ข้อความของคุณเอง รวมถึงลิงก์ใดๆ ที่คุณต้องการรวมไว้ด้วย

6. เพิ่มวิดเจ็ตข้อความอย่างง่ายไปยังแดชบอร์ดของคุณ

หากคุณตัดสินใจที่จะล้างบางห้องบนแดชบอร์ดของคุณโดยการลบวิดเจ็ตต้อนรับ คุณอาจต้องการแทนที่ด้วยวิดเจ็ตของคุณเอง เมื่อใช้รหัสนี้ คุณจะสามารถตั้งค่าวิดเจ็ตข้อความอย่างง่ายได้:

add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;
wp_add_dashboard_widget('custom_widget', 'More Information', 'custom_dashboard_information');
}
function custom_dashboard_information() {
echo 'If you need help making changes to your site, you can always contact me via email at...';
}

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

7. เพิ่มขนาดรูปภาพที่กำหนดเองในการติดตั้งของคุณ

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

add_image_size( 'sidebar-thumbnail', 120, 120 );

โปรดทราบว่าคุณสามารถเพิ่มขนาดใหม่ได้มากเท่าที่ต้องการ และอาจมีประโยชน์อย่างยิ่งหากคุณใช้ความละเอียดเฉพาะในไซต์ของคุณ

8. เพิ่มรูปภาพเด่นลงในฟีด RSS ของคุณ

หลายคนไม่ทราบเรื่องนี้ แต่ WordPress สร้างฟีด RSS สำหรับเว็บไซต์ของคุณโดยอัตโนมัติ หากคุณต้องการใช้ของคุณ คุณจะต้องตั้งค่ารูปภาพเด่นสำหรับโพสต์ของคุณ ซึ่งคุณสามารถทำได้ด้วยรหัสนี้:

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '

' . get_the_post_thumbnail($post->ID) .
'

' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

รูปภาพเด่นสามารถช่วยให้ฟีด RSS ของคุณดูน่าสนใจยิ่งขึ้น ซึ่งเป็นสิ่งสำคัญสำหรับเนื้อหาทุกประเภทที่ต้องอาศัยการคลิกผ่าน

9. ยกเว้นหมวดหมู่จากฟีด RSS ของคุณ

หนึ่งในสิ่งที่ดีที่สุดเกี่ยวกับคุณลักษณะของฟีด WordPress RSS คือความสามารถในการปรับแต่งได้ ด้วยรหัสนี้ คุณจะสามารถซ่อนหมวดหมู่เฉพาะจากฟีดของคุณ ดังนั้นคุณสามารถเลือกและเลือกเนื้อหาที่จะเพิ่มได้:

function exclude_category($query) {
if ( $query->is_feed ) {
$query->set('cat', -2, -3');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');

โปรดทราบว่า WordPress จะระบุหมวดหมู่ตามหมายเลขประจำตัว (เช่น -2 และ -3 ) ในโค้ดด้านบน ดังนั้น คุณจะต้องระบุรหัสสำหรับหมวดหมู่ที่คุณต้องการนำออกก่อนที่จะใช้แฮ็คนี้

10. ปิดใช้งานฟีด RSS ของคุณ

แม้ว่ามันจะเป็นฟีเจอร์ที่ยอดเยี่ยมของ WordPress หากคุณไม่สนใจที่จะใช้ RSS เลย คุณสามารถปิดการใช้งานทั้งหมดโดยใช้ข้อมูลโค้ดนี้:

function fb_disable_feed() {
wp_die( __('Sorry, we don't use RSS!') );
}
add_action('do_feed', 'fb_disable_feed', 1);
add_action('do_feed_rdf', 'fb_disable_feed', 1);
add_action('do_feed_rss', 'fb_disable_feed', 1);
add_action('do_feed_rss2', 'fb_disable_feed', 1);
add_action('do_feed_atom', 'fb_disable_feed', 1);

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

11. ซ่อนรายละเอียดข้อผิดพลาดในการเข้าสู่ระบบ WordPress ของคุณ

ข้อผิดพลาดในการเข้าสู่ระบบที่มีรายละเอียดมากเกินไปสามารถให้ข้อมูลที่ไม่ต้องการเพื่อช่วยให้เข้าถึงไซต์ของคุณได้ ด้วยรหัสนี้ WordPress จะไม่ระบุตำแหน่งที่คุณทำผิดพลาดเมื่อพยายามเข้าสู่ระบบ:

function no_wordpress_errors(){
return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

การใช้แฮ็คนี้ทำให้ผู้โจมตีพยายามเข้าถึงไซต์ของคุณได้ยากขึ้น ในขณะที่ผู้ใช้จริงจะไม่มีปัญหาในการหาว่าพวกเขาทำผิดพลาดตรงไหน win-win รอบด้าน!

12. บังคับให้ผู้ใช้เข้าสู่ระบบด้วยชื่อผู้ใช้

ผู้คนจำนวนมากมักจะสมัครใช้งานทุกบริการโดยใช้อีเมลเดียวกัน ซึ่งหมายความว่าผู้โจมตีสามารถพยายามเข้าถึงได้เพียงแค่รู้ที่อยู่อีเมลของพวกเขา ด้วยรหัสนี้ คุณจะบังคับให้ผู้ใช้เข้าสู่ระบบโดยใช้ชื่อผู้ใช้เท่านั้น:

remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

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

13. เปลี่ยนความยาวของข้อความที่ตัดตอนมา

ดัชนีบล็อกของ WordPress มักจะแสดงข้อความที่ตัดตอนมาสั้น ๆ ของบทความของคุณเพื่อให้ผู้อ่านทราบว่ามีไว้เพื่ออะไร หากคุณเคยต้องการเปลี่ยนความยาวเริ่มต้นของข้อความที่ตัดตอนมาเหล่านี้ นี่เป็นโอกาสที่จะเปลี่ยน

functionnew_excerpt_length($length) {
return 75;
}
add_filter('excerpt_length', 'new_excerpt_length');

ความยาวเริ่มต้นคือ 55 แต่ในโค้ดด้านบน เราเพิ่มเป็น 75 เพื่อให้มีพื้นที่กระดิกเพิ่มขึ้นอีกเล็กน้อย

14. เปิดใช้งาน WordPress เพื่ออัปโหลดไฟล์ประเภทใดก็ได้ที่คุณต้องการ

ตามค่าเริ่มต้น WordPress อนุญาตให้คุณอัปโหลดไฟล์ประเภทต่างๆ ได้จำกัด รวมถึงรูปแบบสื่อทั่วไป เช่น . png และ .jpg ด้วยรหัสนี้ คุณจะสามารถบังคับการติดตั้งของคุณเพื่ออนุญาตประเภทอื่นๆ เพิ่มเติม:

function my_myme_types($mime_types){
$mime_types['svg'] = 'image/svg+xml';
return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

ยกตัวอย่าง . svg ซึ่งเป็นประเภทไฟล์ที่เราเคยพูดถึงในอดีต ด้วยข้อมูลโค้ดนี้ คุณจะสามารถเพิ่มการสนับสนุนโดยไม่ต้องใช้ปลั๊กอิน

15. ปิดใช้งานการเชื่อมโยงรูปภาพอัตโนมัติ

นอกกรอบ WordPress จะเพิ่มลิงก์ไปยังแต่ละภาพที่คุณรวมไว้ในเนื้อหาของคุณซึ่งชี้ไปที่เวอร์ชันเต็ม เมื่อใช้รหัสนี้ คุณจะปิดการใช้งานฟังก์ชันนี้:

function wpb_imagelink_setup() {
$image_set = get_option( 'image_default_link_type' );
if ($image_set !== 'none') {
update_option('image_default_link_type', 'none');
}
}
add_action('admin_init', 'wpb_imagelink_setup', 10);

อย่างไรก็ตาม โปรดจำไว้ว่า คุณยังคงสามารถเข้าถึงคุณลักษณะนี้ได้โดยการแก้ไขแต่ละภาพ ทั้งหมดนี้จะป้องกันไม่ให้ทำงานโดยอัตโนมัติ

16. เพิ่มพื้นที่พร้อมวิดเจ็ต

WordPress ได้รวมพื้นที่ที่พร้อมสำหรับวิดเจ็ตหลายส่วนให้คุณใช้งานแล้ว แต่คุณสามารถเพิ่มพื้นที่ใหม่ได้เสมอโดยใช้ functions.php magic เล็กน้อย เช่นเดียวกับการแฮ็กรหัสย่อก่อนหน้านี้ คุณกำลังเริ่มเข้าสู่ขอบเขตของนักพัฒนาที่นี่ อย่างไรก็ตาม นี่เป็นวิธีง่ายๆ ที่สามารถช่วยคุณได้อย่างมาก:

function custom_sidebars() {
	$args = array(
		'id'            => 'custom_sidebar',
		'name'          => __( 'Custom Widget', 'text_domain' ),
		'description'   => __( 'A custom widget, 'text_domain' ),
		'before_title'  => '


<h3 class="widget-title">',
		'after_title'   => '</h3>



',
		'before_widget' => '


<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>



',
	);
	register_sidebar( $args );
}
add_action( 'widgets_init', 'custom_sidebars' );

โปรดทราบว่ารหัสนี้เป็นเพียง 'ลงทะเบียน' พื้นที่วิดเจ็ตใหม่ของคุณ คุณยังคงต้องเรียกมันสำหรับส่วนของธีมเฉพาะ เช่น ส่วนท้ายของคุณ โดยการแก้ไขไฟล์ที่เกี่ยวข้อง

17. ปิดใช้งานคุณลักษณะการค้นหาของ WordPress

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

function fb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query-&gt;is_search = false;
$query-&gt;query_vars[s] = false;
$query-&gt;query[s] = false;
// to error
if ( $error == true )
$query-&gt;is_404 = true;
}
}
add_action( 'parse_query', 'fb_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

ก่อนปิดใช้คุณลักษณะนี้ คุณต้องแน่ใจ 100% ว่าไม่จำเป็นต้องใช้ เนื่องจากคุณลักษณะนี้อาจส่งผลกระทบอย่างมากต่อการใช้งานไซต์ของคุณ แน่นอน คุณสามารถลบโค้ดเพื่อคืนสถานะการค้นหาบนไซต์ของคุณได้เสมอ แต่หากคุณไม่แน่ใจ โปรดใช้ความระมัดระวังและอย่าปิด!

บทสรุป

ไฟล์ functions.php ของคุณเป็นหนึ่งในทรัพย์สินที่ทรงพลังที่สุดในกล่องเครื่องมือ WordPress ของคุณ ไม่เพียงแต่ช่วยให้คุณสามารถเพิ่มคุณลักษณะทุกประเภทด้วยโค้ดไม่กี่บรรทัดเท่านั้น แต่ยังจำเป็นสำหรับไซต์ของคุณที่จะทำงานได้ (ดูสิ่งที่เราทำที่นั่น)

หากคุณเป็นผู้ใช้ Divi ไฟล์ functions.php จะช่วยคุณเพิ่มคุณสมบัติเสริมต่างๆ ให้กับไซต์ของคุณ โดยไม่ ต้องตั้งค่าปลั๊กอินเพิ่มเติม ซึ่งถือว่าได้ผลเสมอ

คุณมีคำถามใด ๆ เกี่ยวกับการแฮ็กไฟล์ฟังก์ชั่น WordPress เหล่านี้หรือไม่? ถ้าเป็นเช่นนั้นถามออกไปในส่วนความคิดเห็นด้านล่าง!

ภาพขนาดย่อของบทความโดย MchlSkhrv / shutterstock.com