background img

Bài Viết Mới

[Thủ thuật WP] Xóa các Menu trong Wordpress Admin Bar

 

Xin chào các bạn!

Chúng ta lại gặp nhau trong bài viết thủ thuật Wordpress. Bài trước mình có hướng dẫn các bạn "Ẩn WordPress Admin Bar theo các quyền trong wordpress". Trong bài này, mình sẽ hướng dẫn các bạn xóa các Menu trên WP Admin Bar nếu bạn không muốn ẩn.

Việc xóa các Menu trong WP Admin Bar khá đơn giản, bạn sẽ cần chèn thêm vài dòng lệnh vào file function.php nằm trong thư mục theme của bạn.

WP Admin Bar giúp bạn thao tác nhanh giữa các tiện ích của WP, tuy nhiên đôi lúc bạn muốn xóa các menu như WP Logo, About,... đó là những phần không cần thiết. Bài này mình chia làm 2 phần nhỏ, phần 1 là xóa các Menu mặc định có sẵn của WP, và phần 2 là xóa các menu không phải mặc định của WP, tức là sao, tức là khi bạn cài các Plugin thêm cho WP như Wordpress SEO by Yoast, Wordpress Super Cache,... nó sẽ hiễn thị lên WP Admin Bar, nếu bạn làm website tương tác với nhiều người dùng thì sẽ có nhưng Menu mà bạn không mong muốn hiển thị. Mình sẽ bắt đầu đi vào cụ thể.

1. Xóa các Menu có sẵn của Wordpress


Đầu tiên thì chúng ta tìm hiểu các Menu này tạo ra như thế nào, hơi nâng cao một tí nếu bạn không phải dân IT tuy nhiên mình sẽ viết nếu ai muốn hiểu các Menu mặc định này ở đâu. Còn nếu bạn chỉ quan tâm cách xóa thì đọc bên dưới nhé.

Trong wordpress thì file wp admin bar nó nằm trong thư mục wp-includes/admin-bar.php, khi bạn mở file này lên thì bạn sẽ thấy các menu  mặc định của admin bar. Các bạn có thể tìm hiểu thêm nhé  :aaa:

Để xóa menu trong WP Admin Bar thì bạn dùng hàm $wp_admin_bar->remove_menu('tên menu'); và các bạn chèn vào file functions.php như sau:
function remove_admin_bar_links() {
global $wp_admin_bar;
$wp_admin_bar->remove_menu('wp-logo'); // Remove the WordPress logo
$wp_admin_bar->remove_menu('about'); // Remove the about WordPress link
$wp_admin_bar->remove_menu('wporg'); // Remove the WordPress.org link
$wp_admin_bar->remove_menu('documentation'); // Remove the WordPress documentation link
$wp_admin_bar->remove_menu('support-forums'); // Remove the support forums link
$wp_admin_bar->remove_menu('feedback'); // Remove the feedback link
$wp_admin_bar->remove_menu('site-name'); // Remove the site name menu
$wp_admin_bar->remove_menu('view-site'); // Remove the view site link
$wp_admin_bar->remove_menu('updates'); // Remove the updates link
$wp_admin_bar->remove_menu('comments'); // Remove the comments link
$wp_admin_bar->remove_menu('new-content'); // Remove the content link
$wp_admin_bar->remove_menu('my-account'); // Remove the user details tab

}
add_action( 'wp_before_admin_bar_render', 'remove_admin_bar_links' );

Lưu ý: Bạn để ý sau dấu // là các dòng chữ, đó là GHI CHÚ CHỨC NĂNG CỦA TỪNG DÒNG.

Nếu bạn muốn GIỮ MENU nào thì hãy xóa dòng đó, ví dụ bạn muốn để lại menu My Account (Nằm góc phải ở Admin Bar giúp bạn chỉnh sửa) thì bạn hãy xóa nguyên dòng đó, hoặc tính năng Comments (comments). Sau đó SAVE LẠI và xem thành quả.

2. Xóa các Menu khác không phải mặc định


Ở phần này bạn phải biết NAME của menu bạn muốn xóa, thông thường phải kiểm tra trong mỗi plugin nó VIẾT HÀM add menu là gì?, mà hàm đó mỗi plugin viết một nơi.

Ví dụ: Plugin Wordpres SEO by Yoast thì nó nằm trong file wpseo-non-ajax-functions.php, plugin WP Super Cache thì nằm trong wp-cache.php.

Vậy có cách nào để tìm ra, mình có 2 cách, 1 cách đơn giản và một cách đơn giản hơn  :eye_wide:

Cách 1: Bạn dùng một phần mềm nào đó có chức năng tìm kiếm nội dung trong các file text. Mình lâu rồi không xài windows nên mình không nhớ nổi, tuy nhiên các bạn có thể dùng Sublime Text, Dreamweaver (cả mac và windows) để có thể search nội dung để tìm ra NAME của nó. Vậy tìm như thế nào, bạn có thể ý là hàm xóa trong wp khi nãy mình viết bên trên không? ($wp_admin_bar->remove_menu('tên menu');) vâng, vậy hàm thêm (add) vào Admin Bar chỉ có thể là $wp_admin_bar->add_menu('tên menu');   :bathing:

Các bạn chỉ cần tìm từ khóa $wp_admin_bar->add_menu là nó sẽ ra nội dung bạn cần tìm :)

Cách 2: Cách này đơn giản hơn, các bạn nên dùng trình duyệt Safari, Chrome, Firefox để có thể dễ nhìn hơn.

 Bước 1: Đầu tiên bạn đăng nhập 


 Bước 2: Click phải vào MENU MUỐN XÓA, chọn Inspect ElementXóa các Menu trong WordPress Admin Bar


 Bước 3: Bạn sẽ sẽ thấy dãy CODE


Xóa các Menu trong WordPress Admin Bar



Bước 4: Quan sát các dòng có <li id="wp-admin-bar-XXXXX>...</li> (XXXXX ở đây chính là NAME)


Tùy vào website bạn sử dụng như thế nào mà nó hiện nhiều dòng <li id="wp-admin-bar-XXXXX>...</li>, do website mình đã bỏ hết, chỉ để còn lại số ít Menu như vậy.


Và sau khi bạn đã có NAME, việc khá đơn giản, chỉ thêm vào bên trong của hàm remove_admin_bar_links() với nội dung là:



$wp_admin_bar->remove_menu('NAME MENU');

 

KẾT LUẬN


Trong bài viết mình đã hướng dẫn các bạn khá chi tiết về wp admin bar trong wordpress và cách xóa Menu của Admin bar. Bạn có thể kết hợp với các bài viết về quyền (role) trong các bài viết trước của mình để có thể XÓA hoặc THÊM dựa vào các quyền của các thành viên. Nếu có thắc mắc đoạn code, nội dung gì vui lòng để lại COMMENT bên dưới nhé.


Nguồn: Tự Học IT Online - http://tuhocit.net

2 nhận xét: Leave Your Comments

  1. [Thủ Thuật Wp] Xóa Các Menu Trong Wordpress Admin Bar >>>>> Download Now

    >>>>> Download Full

    [Thủ Thuật Wp] Xóa Các Menu Trong Wordpress Admin Bar >>>>> Download LINK

    >>>>> Download Now

    [Thủ Thuật Wp] Xóa Các Menu Trong Wordpress Admin Bar >>>>> Download Full

    >>>>> Download LINK

    Trả lờiXóa

Xem Nhiều