background img

Bài Viết Mới

Hiển thị các bài đăng có nhãn WP Admin Bar. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn WP Admin Bar. Hiển thị tất cả bài đăng
 

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

[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

Xin chào các bạn!

Hôm nay mình lại gặp nhau rồi  :congratz:

Ẩn Wordpress Admin Bar trong Wordpress

 

Hôm nay mình sẽ hướng dẫn các bạn cách Ẩn Wordpress Admin Bar trong Wordpress mà không sử dụng Plugin. Như các bạn biết, wordpress các ít dùng plugin tốc độ sẽ nhanh hơn, chưa kể các plugin thỉnh thoảng còn xung đột lẫn nhau. Vì thế mình sẽ hướng dẫn một thủ thuật đơn giản mà các bạn không cần phải dùng tới plugin,....

Đầu tiên các bạn sửa lại file functions.php trong templates mình đang sử dụng nhé. Hoặc vào Appearance > Editor rồi tìm file functions.php để sửa nhé.

Trong bài trước mình có giới thiệu các bạn lấy quyền (role) của user đang đăng nhập, các bạn có xem lại bài viết đó ở đây để có thể xem lại hàm đó (hàm get_current_user_role();) vì trong bài viết này mình sẽ dùng hàm này để xử lý.

Để ẩn Wordpress Admin Bar thì các bạn dùng hàm có trong wordpress đó là: show_admin_bar(false); (false là ẩn, và true là hiện)

Vì vậy để xử lý user đang đăng nhập thì user này có hiện thị Wordpress Admin Bar hay không thì tùy ở bạn. Mình sẽ xử lý đoạn code như sau, chèn vào file functions.php nhé:
function hide_admin_bar_user()
{
$quyen=get_current_user_role();
switch ($quyen) {
case 'Subscriber':
show_admin_bar( false );
remove_action( 'wp_head', '_admin_bar_bump_cb' );
break;
case 'Contributor':
show_admin_bar( false );
remove_action( 'wp_head', '_admin_bar_bump_cb' );
break;
case 'Author':
show_admin_bar( false );
break;
case 'Editor':
show_admin_bar( true );
break;
case 'Administrator':
show_admin_bar( true );
break;
default:
# code...
break;
}
}

Trong này mình dùng một biến $quyen để lấy quyền (role) của user đang đang nhập, sau đó mình sẽ tùy vào quyền của họ để có thể ẩn hay hiện WP Menu Bar dựa vào hàm switch (bạn có thể dùng hàm if).

Vâng! Khá đơn giản và dễ xài phải không các bạn.

Trong bài viết sau mình sẽ hướng dẫn các bạn ẩn một Link ở Wordpress Menu Bar nếu bạn muốn để Wordpress Admin Bar.

Xin cám ơn.  :big_smile:

[Nht2007]

 

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

[Thủ thuật WP] Ẩn Wordpress Admin Bar theo các quyền trong wordpress

Xin chào các bạn!

Hôm nay mình lại gặp nhau rồi  :congratz:

Ẩn Wordpress Admin Bar trong Wordpress

 

Hôm nay mình sẽ hướng dẫn các bạn cách Ẩn Wordpress Admin Bar trong Wordpress mà không sử dụng Plugin. Như các bạn biết, wordpress các ít dùng plugin tốc độ sẽ nhanh hơn, chưa kể các plugin thỉnh thoảng còn xung đột lẫn nhau. Vì thế mình sẽ hướng dẫn một thủ thuật đơn giản mà các bạn không cần phải dùng tới plugin,....

Đầu tiên các bạn sửa lại file functions.php trong templates mình đang sử dụng nhé. Hoặc vào Appearance > Editor rồi tìm file functions.php để sửa nhé.

Trong bài trước mình có giới thiệu các bạn lấy quyền (role) của user đang đăng nhập, các bạn có xem lại bài viết đó ở đây để có thể xem lại hàm đó (hàm get_current_user_role();) vì trong bài viết này mình sẽ dùng hàm này để xử lý.

Để ẩn Wordpress Admin Bar thì các bạn dùng hàm có trong wordpress đó là: show_admin_bar(false); (false là ẩn, và true là hiện)

Vì vậy để xử lý user đang đăng nhập thì user này có hiện thị Wordpress Admin Bar hay không thì tùy ở bạn. Mình sẽ xử lý đoạn code như sau, chèn vào file functions.php nhé:
function hide_admin_bar_user()
{
$quyen=get_current_user_role();
switch ($quyen) {
case 'Subscriber':
show_admin_bar( false );
remove_action( 'wp_head', '_admin_bar_bump_cb' );
break;
case 'Contributor':
show_admin_bar( false );
remove_action( 'wp_head', '_admin_bar_bump_cb' );
break;
case 'Author':
show_admin_bar( false );
break;
case 'Editor':
show_admin_bar( true );
break;
case 'Administrator':
show_admin_bar( true );
break;
default:
# code...
break;
}
}

Trong này mình dùng một biến $quyen để lấy quyền (role) của user đang đang nhập, sau đó mình sẽ tùy vào quyền của họ để có thể ẩn hay hiện WP Menu Bar dựa vào hàm switch (bạn có thể dùng hàm if).

Vâng! Khá đơn giản và dễ xài phải không các bạn.

Trong bài viết sau mình sẽ hướng dẫn các bạn ẩn một Link ở Wordpress Menu Bar nếu bạn muốn để Wordpress Admin Bar.

Xin cám ơn.  :big_smile:

[Nht2007]

 

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

Xem Nhiều