Tổng hợp code function hay trong WordPress

banner home FINAL 1050x121 1
huong dan su dung wordpress 2

Tổng hợp code function hay trong WordPress

Dưới đây là tổng hợp một số code thêm chức năng cho WordPress thông qua file function.php trong thư mục theme mà bạn đang sử dụng. Bạn chỉ cần sao chép code về rồi dán vào file function.php rồi lưu lại là xong.

Xóa thanh điều khiển Admin

add_filter( 'show_admin_bar', '__return_false' );

Nén code tăng tốc cho trang

function sanitize_output($buffer)

{

$search = array(

'/\>[^\S ]+/s',

'/[^\S ]+\</s',

'/(\s)+/s'

);

$replace = array(

'>',

'<',

'\\1'

);

$buffer = preg_replace($search, $replace, $buffer);

return $buffer;

}

ob_start("sanitize_output");

Đếm số ký tự trong bài viết

function post_word_count() {

global $post;

$words = str_word_count( strip_tags( get_post_field( 'post_content', get_the_ID() ) ) );

$time = $words/250;

if ( $time < 1) {

echo 1;

} else {

echo round($time, 1, PHP_ROUND_HALF_UP);

}

}

Để hiển thị ra bạn sử dụng đoạn code bên dưới

<?php echo post_word_count(); ?>

Thêm nhóm thành viên quản trị

$add_group_user = add_role('Modquanly', __( 'Mod quản lý' ),

array(

'upload_files' => true, // duoc phep ipload file

'edit_others_pages' => true, // duoc phep sua trang

'edit_posts' => true, // duoc phep su bai viet

'publish_posts' => true, // duoc phep xet duyet bai viet

'read' => true,

'level_3' => true,

)

);

Sử dụng font chữ Google cho WordPress

function google_fonts() {

wp_register_style( 'OpenSans', '//fonts.googleapis.com/css?family=Open+Sans:400,600,700,800' );

wp_enqueue_style( 'OpenSans' );

}

add_action( 'wp_print_styles', 'google_fonts' );

Hiển thị thời gian ở mục bình luận theo dạng bao nhiêu phút trước

function pressfore_comment_time_output($date, $d, $comment){

return sprintf( _x( '%s trước', '%s = human-readable time difference', 'your-text-domain' ), human_time_diff( get_comment_time( 'U' ), current_time( 'timestamp' ) ) );

}

add_filter('get_comment_date', 'pressfore_comment_time_output', 10, 3);

Phân biệt từng nhóm thành viên ở mục bình luận

if ( ! class_exists( 'WPB_Comment_Author_Role_Label' ) ) :

class WPB_Comment_Author_Role_Label {

public function __construct() {

add_filter( 'get_comment_author', array( $this, 'wpb_get_comment_author_role' ), 10, 3 );

add_filter( 'get_comment_author_link', array( $this, 'wpb_comment_author_role' ) );

}

function wpb_get_comment_author_role($author, $comment_id, $comment) {

$authoremail = get_comment_author_email( $comment);

if (email_exists($authoremail)) {

$commet_user_role = get_user_by( 'email', $authoremail );

$comment_user_role = $commet_user_role->roles[0];

$this->comment_user_role = ' <span class="comment-author-label comment-author-label-'.$comment_user_role.'">' . ucfirst($comment_user_role) . '</span>';

} else {

$this->comment_user_role = '';

}

return $author;

}

function wpb_comment_author_role($author) {

return $author .= $this->comment_user_role;

}

}

new WPB_Comment_Author_Role_Label;

endif;

Thêm đoạn css bên dưới để thay đổi màu cho từng nhóm thành viên.

.comment-author-label {

padding: 5px;

font-size: 14px;

border-radius: 3px;

}

.comment-author-label-editor {

color:#66666;

}

.comment-author-label-author {

color:#66666;

}

.comment-author-label-contributor {

color:#44444;

}

.comment-author-label-subscriber {

color:#00cc00;

}

.comment-author-label-administrator {

color:#ff3333;

}

Tắt Widget không dùng tới

add_action( 'widgets_init', function () {

unregister_widget( 'WP_Widget_Pages' );

unregister_widget( 'WP_Widget_Calendar' );

unregister_widget( 'WP_Widget_Archives' );

unregister_widget( 'WP_Widget_Links' );

unregister_widget( 'WP_Widget_Meta' );

unregister_widget( 'WP_Widget_Search' );

unregister_widget( 'WP_Widget_Text' );

unregister_widget( 'WP_Widget_Categories' );

unregister_widget( 'WP_Widget_Recent_Posts' );

unregister_widget( 'WP_Widget_Recent_Comments' );

unregister_widget( 'WP_Widget_RSS' );

unregister_widget( 'WP_Widget_Tag_Cloud' );

unregister_widget( 'WP_Nav_Menu_Widget' );

}, 11);

Chỉ Admin mới được phép truy cập vào trình quản lý WordPress

function lovend_redirect(){

$kiemtra = get_current_user_id();

if( is_admin() && !defined('DOING_AJAX') && ( current_user_can('editor') || current_user_can('author') || current_user_can('subscriber') || current_user_can('contributor') ) ){

wp_redirect( home_url() );

exit;

}

}

add_action('init','lovend_redirect');

Thêm ô nhập thông tin cho thành viên ở hồ sơ thành viên

function add_fields_user($profile_fields){

$profile_fields['phone'] = 'Phone';

$profile_fields['namsinh'] = 'Năm Sinh';

$profile_fields['facebook'] = 'Facebook';

return $profile_fields;

}

add_filter('user_contactmethods', 'add_fields_user');

Bỏ menu không cần thiết trong trình quản lý WordPress

add_action( 'admin_menu', function () {

// Bỏ Dashboard

remove_menu_page( 'index.php' );

// Bỏ Posts

remove_menu_page( 'edit.php' );

// Bỏ Posts -> Categories

remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=category' );

// Bỏ Posts -> Tags

remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=post_tag' );

// Bỏ Media

remove_menu_page( 'upload.php' );

// Bỏ Media -> Library

remove_submenu_page( 'upload.php', 'upload.php' );

// Bỏ Media -> Add new media

remove_submenu_page( 'upload.php', 'media-new.php' );

// Bỏ Pages

remove_menu_page( 'edit.php?post_type=page' );

// Bỏ Pages -> All pages

remove_submenu_page( 'edit.php?post_type=page', 'edit.php?post_type=page' );

// Bỏ Pages -> Add new page

remove_submenu_page( 'edit.php?post_type=page', 'post-new.php?post_type=page' );

// Bỏ Comments

remove_menu_page( 'edit-comments.php' );

// Bỏ Appearance

remove_menu_page( 'themes.php' );

// Bỏ Appearance -> Themes

remove_submenu_page( 'themes.php', 'themes.php' );

// Bỏ Appearance -> Customize

remove_submenu_page( 'themes.php', 'customize.php?return=' . urlencode( $_SERVER['REQUEST_URI'] ) );

// Bỏ Appearance -> Widgets

remove_submenu_page( 'themes.php', 'widgets.php' );

// Bỏ Appearance -> Menus

remove_submenu_page( 'themes.php', 'nav-menus.php.php' );

// Bỏ Appearance -> Editor

remove_submenu_page( 'themes.php', 'theme-editor.php' );

// Bỏ Plugins

remove_menu_page( 'plugins.php' );

// Bỏ Plugins -> Installed plugins

remove_submenu_page( 'plugins.php', 'plugins.php' );

// Bỏ Plugins -> Add new plugins

remove_submenu_page( 'plugins.php', 'plugin-install.php' );

// Bỏ Plugins -> Plugin editor

remove_submenu_page( 'plugins.php', 'plugin-editor.php' );

// Bỏ Users

remove_menu_page( 'users.php' );

// Bỏ Users -> Users

remove_submenu_page( 'users.php', 'users.php' );

// Bỏ Users -> New user

remove_submenu_page( 'users.php', 'user-new.php' );

// Bỏ Users -> Your profile

remove_submenu_page( 'users.php', 'profile.php' );

// Bỏ Tools

remove_menu_page( 'tools.php' );

// Bỏ Tools -> Available Tools

remove_submenu_page( 'tools.php', 'tools.php' );

// Bỏ Tools -> Import

remove_submenu_page( 'tools.php', 'import.php' );

// Bỏ Tools -> Export

remove_submenu_page( 'tools.php', 'export.php' );

// Bỏ Settings

remove_menu_page( 'options-general.php' );

// Bỏ Settings -> Writing

remove_submenu_page( 'options-general.php', 'options-writing.php' );

// Bỏ Settings -> Reading

remove_submenu_page( 'options-general.php', 'options-reading.php' );

// Bỏ Settings -> Discussion

remove_submenu_page( 'options-general.php', 'options-discussion.php' );

// Bỏ Settings -> Media

remove_submenu_page( 'options-general.php', 'options-media.php' );

// Bỏ Settings -> Permalinks

remove_submenu_page( 'options-general.php', 'options-permalink.php' );

}, 999);

Xóa nhóm thành viên mặc định trên WordPress

add_action( 'admin_init', function () {

remove_role( 'administrator' ); // nhóm admin

remove_role( 'editor' ); // nhóm biên tập viên

remove_role( 'author' ); // nhóm tác giả

remove_role( 'contributor' ); // nhóm cộng tác viên

remove_role( 'subscriber' ); // nhóm thành viên

});

Bỏ các chức năng không cần thiết trong mục Media

add_filter('media_view_strings', function ( $strings ) {

$strings['createGalleryTitle'] = null; // Bỏ nút "Create gallery"

$strings['createPlaylistTitle'] = null; // Bỏ nút "Create Audio Playlist"

$strings['createVideoPlaylistTitle'] = null; // Bỏ nút "Create Video Playlist"

$strings['insertFromUrlTitle'] = null; // Bỏ nút "Inset from URL"

return $strings;

});

# KHÁM PHÁ CÁC HASHTAG HÀNG ĐẦU

Theo dõi và cập nhật tin tức AZ9s thông qua các kênh truyền thông:

- Zalo Channel

- Facebook Channel

- Youtube Channel

banner home FINAL 1050x121 1
0 0 votes
Article Rating
Nhận thông báo qua Email
Nhận thông báo cho
guest

0 Comments
Inline Feedbacks
View all comments
0
Hãy để lại bình luận của bạn!x
()
x