16 Đoạn mã hữu ích cho WordPress

Bài viết này vừa được chỉnh sửa lúc: 26/06/2018
Rate this post

Có những thay đổi nhỏ nhưng nó tạo ra sự khác biệt rất lớn ? Đó là một phần làm cho WordPress trở nên tuyệt vời – số lượng cách mà nó có thể được tùy chỉnh để đáp ứng nhu cầu cụ thể của bạn hầu như vô hạn. Bài viết này là một phần trong số đó, chắc chắn nó hữu ích với bạn….

Cùng chủ đề:

16 Đoạn mã hữu ích cho WordPress

1. Sử dụng Code Snippets

Có một vài cách khác nhau để sử dụng đoạn mã. Hầu hết thời gian, bạn sẽ thấy mình hướng đến tệp functions.php nhưng hãy suy nghĩ thêm.

Tệp functions.php của bạn rất cụ thể cho Theme của bạn. Nếu bạn quyết định thay đổi Theme các chức năng không theo chủ đề cụ thể, bạn sẽ phải bắt đầu lại từ đầu. Ngoài ra, nếu bạn thay đổi chủ đề gốc và sau đó cập nhật, tất cả các thay đổi của bạn sẽ bị ghi đè.

Để giải quyết vấn đề này, bạn còn lại với một vài lựa chọn:

  1.    Write a custom plugin.
  2.    Sử dụng snippet plugin like Code Snippets.
  3.    Dùng theme specific plugin.
  4.    Use a child theme and put all function changes in the child theme.

Lời khuyên cuối cùng, trước khi chúng ta chuyển sang những thứ tốt, là luôn sao lưu trang web của bạn trước khi bạn bắt đầu thực hiện các thay đổi – đặc biệt là đảm bảo bạn có một bản sao của tệp functions.php ban đầu có ích.

2. Tự động liên kết với tên người dùng Twitter

Bất cứ khi nào bạn đề cập đến một công ty hoặc cá nhân từ trong một bài đăng, thật tuyệt khi liên kết với tiểu sử trên Twitter của họ. Đoạn mã nhỏ tiện dụng này sẽ xem các bài đăng của bạn cho văn bản biểu thị tên người dùng Twitter và sau đó tự động tạo liên kết cho bạn.

function content_twitter_mention($content) {
return preg_replace('/([^a-zA-Z0-9-_&])@([0-9a-zA-Z_]+)/', "$1@$2", $content);
}
add_filter('the_content', 'content_twitter_mention');
add_filter('comment_text', 'content_twitter_mention');

3.  Thêm Shortcodes cho Widgets

Đôi khi bạn chỉ muốn thêm mã ngắn vào một tiện ích văn bản. May mắn thay, đây là một giải pháp đơn giản.

add_filter( 'widget_text', 'do_shortcode' );

4. Chuyển hướng người dùng đã đăng ký mới đến một trang cụ thể

Nếu bạn yêu cầu người dùng mới đăng ký trên trang web WordPress của mình, bạn có thể muốn chuyển hướng họ đến một trang cụ thể sau khi hoàn tất thành công. Có thể bạn muốn cung cấp cho họ một số thông tin quan trọng hoặc tải xuống cụ thể.

function wps_registration_redirect(){
return home_url( '/finished/' );
}
add_filter( 'registration_redirect', 'wps_registration_redirect' );

5. Hạn chế bản xem lại bài đăng trên WordPress

Việc theo dõi các bản sửa đổi bài đăng trong WordPress là một tính năng tuyệt vời – ở một mức độ nhất định. Nếu bạn thực hiện nhiều chỉnh sửa trong trình soạn thảo WordPress thì thật dễ dàng để kết thúc với hàng chục hoặc thậm chí hàng trăm bản sửa đổi được lưu trữ trong cơ sở dữ liệu. Cách khắc phục dễ dàng là giới hạn số lần sửa đổi trên mỗi bài đăng cho một thứ gì đó hợp lý hơn như 3-5.

if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 5);
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', false);

6. Sử dụng năm hiện tại trong bài đăng của bạn

Bạn có bao giờ muốn bạn có thể chèn năm hiện tại vào một số bài đăng của mình thông qua một shortcode đơn giản không?
Thêm đoạn mã dưới đây vào tệp functions.php của bạn và bạn sẽ tổ chức tiệc tùng giống như [năm].

function year_shortcode() {
$year = date('Y');
return $year;
}
add_shortcode('year', 'year_shortcode');

7.  Xóa tiêu đề riêng tư / được bảo vệ khỏi bài đăng của bạn

Trong trường hợp bạn từng xuất bản các bài đăng riêng tư, bạn sẽ nhận thấy rằng tiêu đề được đặt trước bởi một lời nhắc khó coi.

Bạn có thể thêm mã bên dưới vào tệp chức năng của mình và mọi thứ sẽ trở lại tốt.

function the_title_trim($title) {

$title = attribute_escape($title);

$findthese = array(
'#Protected:#',
'#Private:#'
);

$replacewith = array(
'', // What to replace "Protected:" with
'' // What to replace "Private:" with
);

$title = preg_replace($findthese, $replacewith, $title);
return $title;
}
add_filter('the_title', 'the_title_trim');

8. Hiển thị Ngày đăng và Ngày sửa đổi

Đôi khi sau một thời gian bạn muốn thêm cập nhật mới nội dung website của mình.

Đoạn mã đơn giản này sẽ thêm ngày sửa đổi vào bài đăng của bạn.

Posted on <?php the_time('F jS, Y') ?>
<?php
          $u_time = get_the_time('U');
          $u_modified_time = get_the_modified_time('U');

      if ($u_modified_time != $u_time) {
                echo &quot;and last modified on &quot;;
                the_modified_time('F jS, Y');
                echo &quot;. &quot;;
          }
?>

9 .Xóa số phiên bản WordPress

Đôi khi bạn muốn trì hoãn việc cập nhật lên phiên bản WordPress mới nhất cho đến khi bạn tạo bản sao lưu mới.

Là cách bảo mật website của bạn khi bạn chưa có thời gian cập nhật các bản vá lỗi WP.

Đoạn mã này sẽ ẩn thông báo cập nhật hiển thị trong tiêu đề.

// Hide WordPress Update
function wp_hide_update() {
remove_action('admin_notices', 'update_nag', 3);
}
add_action('admin_menu','wp_hide_update');

10. Xóa trường URL trong nhận xét

Nếu blog của bạn liên tục là mục tiêu của những người gửi spam, bạn có thể xóa trường URL khỏi các nhận xét của họ.

function remove_comment_fields($fields) {
unset($fields['url']);
return $fields;
}
add_filter('comment_form_default_fields','remove_comment_fields');

11.  Thêm nút search cùng với menu

Nếu bạn muốn thêm một form search cùng Menu thì bạn xem đoạn code dưới đây

function add_search_to_wp_menu ( $items, $args ) {
 if( 'primary' === $args -> theme_location ) {
$items .= '<li class="menu-item menu-item-search">';
$items .= '<form method="get" class="menu-search-form" action="' . get_bloginfo('home') . '/"><p><input class="text_input" type="text" value="Enter Text &amp; Click to Search" name="s" id="s" onfocus="if (this.value == \'Enter Text &amp; Click to Search\') {this.value = \'\';}" onblur="if (this.value == \'\') {this.value = \'Enter Text &amp; Click to Search\';}" /><input type="submit" class="my-wp-search" id="searchsubmit" value="search" /></p></form>';
$items .= '</li>';
 }
return $items;
}
add_filter('wp_nav_menu_items','add_search_to_wp_menu',10,2);

12.  Rút ngắn dòng mô tả bài viết

Nếu bạn cho rằng đoạn trích vào một bài đăng trên blog quá dài, bạn có thể rút ngắn bài viết đó thành 20 từ.

Điều đó có thể làm sạch giao diện của trang bài đăng trên blog của bạn một chút. Đây là đoạn mã:

 

Function new_excerpt_length($trength) {return 20;}

add_filter(‘excerpt_length’,’new_excerpt_length’);

13. Yêu cầu một hình ảnh nổi bật

Đây là một ý tưởng tuyệt vời nếu bạn có khách hàng đang tạo bài đăng của riêng họ.

Khách hàng thường quyết định bỏ qua hình ảnh nổi bật khi đã có một bố cục sắp xếp hoàn hảo.

Đoạn mã này sẽ yêu cầu tác giả chọn một hình ảnh nổi bật trước khi bài đăng có thể được xuất bản.

add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');

function wpds_check_thumbnail($post_id) {

// change to any custom post type
if(get_post_type($post_id) != 'post')
return;

if ( !has_post_thumbnail( $post_id ) ) {
// set a transient to show the users an admin message
set_transient( &quot;has_post_thumbnail&quot;, &quot;no&quot; );
// unhook this function so it doesn't loop infinitely
remove_action('save_post', 'wpds_check_thumbnail');
// update the post set it to draft
wp_update_post(array('ID' =&gt; $post_id, 'post_status' =&gt; 'draft'));

add_action('save_post', 'wpds_check_thumbnail');
} else {
delete_transient( &quot;has_post_thumbnail&quot; );
}
}

function wpds_thumbnail_error()
{
// check if the transient is set, and display the error message
if ( get_transient( &quot;has_post_thumbnail&quot; ) == &quot;no&quot; ) {
echo &quot;
&lt;div id=&quot;message&quot; class=&quot;error&quot;&gt;

You must select Featured Image. Your Post is saved but it can not be published.

&lt;/div&gt;
&quot;;
delete_transient( &quot;has_post_thumbnail&quot; );
}

}

14. Thay thế “Howdy, User Name” bằng bất cứ thứ gì bạn muốn

Đoạn code thay đổi thông báo “Howdy” xuất hiện trong tiêu đề cho người dùng đã đăng nhập.

function replace_howdy( $wp_admin_bar ) {
$my_account=$wp_admin_bar-&gt;get_node('my-account');
$newtitle = str_replace( 'Howdy,', 'Logged in as', $my_account-&gt;title );
$wp_admin_bar-&gt;add_node( array(
'id' =&gt; 'my-account',
'title' =&gt; $newtitle,
) );
}
add_filter( 'admin_bar_menu', 'replace_howdy',25 );

15. Loại bỏ hoặc ẩn danh mục khỏi trang chủ

Đôi khi bạn muốn xóa hoặc tránh hiển thị các danh mục nhất định trên trang chủ của mình.

Một số chủ đề cao cấp có chức năng này được tích hợp sẵn để đảm bảo kiểm tra cài đặt chủ đề của bạn trước tiên.

function exclude_category_home( $query ) {
if ( $query-&gt;is_home ) {
$query-&gt;set( 'cat', '-5, -34' );
}
return $query;
}

add_filter( 'pre_get_posts', 'exclude_category_home' );

16.  Hiển thị X kết quả trên trang kết quả tìm kiếm

Nếu bạn muốn thay đổi số lượng kết quả tìm kiếm mặc định được trả lại thành giá trị lớn hơn hoặc nhỏ hơn.

Đoạn mã mặc định này sẽ cho phép bạn thực hiện điều đó.

function limit_posts_per_search_page() {
  if ( is_search() )
    set_query_var('posts_per_archive_page', 20); 
}

add_filter('pre_get_posts', 'limit_posts_per_search_page');

Với việc giới thiệu 16 đoạn mã hữu ích ở trên. IZ4WEB chấm côm hi vọng bạn sẽ làm được.

Chúc ban thành công !

 

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments

IZ4WEB.COM - Trang chia sẻ theme / Plugin WordPress từ themeforest chia sẻ hoàn toàn miễn phí link download được gắn đến Google Drive, nếu ko tìm thấy Plugin – Theme mong muốn vui lòng liên hệ qua Form hỗ trợ hoặc qua mail iz4webteams@gmail.com or 0964.555.805 để chúng tôi sẽ gửi cho bạn ngay phiên bản mới nhất qua thông tin nhận được.

Team có vài lưu ý:

  • Vì chia sẻ miễn phí các bạn đừng hỏi license, team vẫn hỗ trợ update
  • Cơ bản các theme đều import được demo, đọc kĩ tài liệu hướng dẫn của Theme
  • Team sẽ không cam kết chất lượng code Theme vì mình không phải người làm ra theme đấy
  • Nếu các bạn thấy theme có vấn đề vui lòng phản hồi lại Admin để update

Để anh/em có động lực làm việc mọi người có thể donate 1 phần nhỏ tiền trà thuốc để có động lực chiến đấu... Thay mặt Team chân thành cảm ơn!

Chủ TK: Lý Mạnh Hưng



Ngoài ra chúng tôi còn cung cấp các dịch vụ Thiết Kế Website, Cài đặt cấu hình website theo yêu cầu, Dịch vụ SEO, Design & Media, Dịch vụ quảng cáo...

0
Would love your thoughts, please comment.x
()
x