WordPress Plugin – Phần 2: Tạo shortcode cho plugin

Ở phần 1 của loạt bài này, chúng ta đã tạo được một plugin đơn giản hiển thị một message trên web. Ở phần 2 này, Góc Kinh Nghiệm xin hướng dẫn các bạn cách tạo shortcode cho plugin

1. Shortcode của WordPress là gì?
Shortcode đơn giản chỉ là một chuỗi nằm trong dấu ngoặc vuông. Ví dụ như [goc_kinh_nghiem], [tap_lam_wordpress],[tap_viet_shortcode]… Chúng ta đặt shortcode vào một page hoặc một bài post để làm một công việc gì đó
Và dĩ nhiên chúng ta có thể đặt shortcode ở nhiều page hoặc nhiều bài post. Ok! Nói đến đây có vẻ như bắt đầu hơi khó hiểu và rối. Chúng ta viết vài dòng lệnh để hiểu rõ hơn về shortcode
2. Cách tạo shortcode trong plugin.
Giống như bài viết trước, chúng ta cũng in ra câu “WordPress plugin xin chào bà con cô bác”

function print_xin_chao_ba_con_message()
{	
     $msg = get_option('xin_chao_ba_con_message'); 	
     echo '<h1>'.$msg.'</h1>';
}
add_shortcode('tap_viet_shortcode', 'print_xin_chao_ba_con_message');

Đoạn mã trên chúng ta đã tạo ra một shortcode có tên là [tap_viet_shortcode], khi shortcode này được sử dụng, nó sẽ triệu gọi hàm print_xin_chao_ba_con_message để in ra câu “WordPress plugin xin chào bà con cô bác”
3. Sử dụng shortcode
Chúng ta vào phần admin tạo một page mới để test short code như sau
– Vào Pages/Add New

– Đặt title cho Page tùy theo ý của bạn. Góc Kinh Nghiệm đặt là Test shortcode. Và gõ vào nội dung chuỗi [tap_viet_shortcode]

– Save lại, chúng ta sẽ có một liên kết mới

– Click lên liên kết mới, chúng ta sẽ có kết quả như sau:

4. Đoạn mã cuối cùng của plugin xin-chao-ba-con của chúng ta sau 2 phần được cải tiến lên như sau

<?php/*
Plugin Name: Xin chào bà con
Description: Hiển thị một message đơn giản trên web
Version: 1.0
Author: Góc Kinh Nghiệm
Author URI: http://gockinhnghiem.com/
*/
register_activation_hook(__FILE__, 'xin_chao_ba_con_activation');
function xin_chao_ba_con_activation() {    
  // set new option    
  add_option('xin_chao_ba_con_message', 'WordPress plugin xin chào bà con cô bác', '', '');
}
add_action('get_template_part_loop', xin_chao_ba_con);
function xin_chao_ba_con(){	
  $msg = get_option('xin_chao_ba_con_message'); 	
  echo '<h1>'.$msg.'</h1>';
}
function print_xin_chao_ba_con_message() {	
  $msg = get_option('xin_chao_ba_con_message'); 	
  echo '<h1>'.$msg.'</h1>';
}
add_shortcode('tap_viet_shortcode', 'print_xin_chao_ba_con_message');

5. Lưu ý nhỏ về tên shortcode
Khi đặt tên cho shortcode, các bạn nhớ tránh dùng các tên: wp_caption, caption, gallery và embed vì chúng đã được WordPress sử dụng

Ở phần tiếp theo, chúng ta sẽ tập truyền attribute cho shortcode

Hãy cùng Góc Kinh Nghiệm tập viết WordPress plugin:
– Phần 1: Tạo plugin WordPress đơn giản
– Phần 2: Tạo shortcode trong plugin
– Phần 3: Truyền attribute cho shortcode


2 comments

  1. WordPress 3.2.1 không còn get_template_part_loop, vì thế bạn thay bằng một parameter khác, ví dụ như wp_head. Kết quả sẽ hiển thị chuỗi ‘WordPress plugin xin chào bà con cô bác’ trên cùng của theme.

  2. hình như cái này không dùng được trong các comment phải không bạn.

    mình dùng không các bài post thì dc, nhưng khi comment vào bài đó cũng dùng shortcode thì không có tác dụng

Leave a Reply

Your email address will not be published. Required fields are marked *