Một số hàm thao tác với shortcode trong wordpress

Một số hàm thao tác với shortcode trong wordpress

Bài viết thực hiện dựa trên tài liệu Wordpress ở phiên bản 3.5.1. Shortcode được giới thiệu từ Một số hàm thao tác với shortcode trong wordpressphiên bản 2.5, nó sẽ thực hiện một số chức năng nào đó bằng việc tạo một đoạn mã theo cú pháp trong nội dung bài viết. Ví dụ bạn có thể thấy một số plugin sử dụng như nextGent gallery tạo ra một số shortcode là [ nggallery id=X ],  [ slideshow id=X w=X h=X ]... hay ở phiên bản 3.5.1 Wordpress đã tạo sẵn shortcode [gallery].

Một số hàm thao tác với shortcode:

  • add_shortcode
  • shortcode_atts
  • do_shortcode
  • shortcode_parse_atts
  • remove_shortcode
  • strip_shortcodes

add_shortcode($tag, $func)

Hàm sẽ thêm shortcode để thực hiện một chức năng nào đó, $tag là đoạn shortcode sẽ được đặt trong nội dung bài viết, $func là chức năng sẽ thực hiện khi đoạn sortcode được tìm thấy.

// Ví dụ nếu bạn có một đoạn shortcode: [footag foo="bar"]
function footag_func( $atts ) {
  return "foo = {$atts[foo]}";
}
add_shortcode('footag', 'footag_func');
//Ví dụ nếu đoạn shortcode được sử dụng như dạng thẻ đóng: [baztag]content[/baztag]
function baztag_func( $atts, $content="" ) {
  return "content = $content";
}
add_shortcode( 'baztag', 'baztag_func' );
//Nếu chức năng được viết trong một lớp
class MyPlugin {
  function baztag_func() {
    return "content = $content";
  }
}
add_shortcode( 'baztag', array( 'MyPlugin', 'baztag_func' ) );

shortcode_atts($pairs, $atts)

Hàm kết hợp giữa những thuộc tính của shortcode và những thuộc tính mặc định khi cần. Ví dụ nếu bạn có shortcode: [bartag foo="koala" bar="bears"]

function bartag_func($atts) {
extract(shortcode_atts(array(
  'foo' => 'no foo',
  'bar' => 'default bar'
), $atts));
return 'bartag: ' . $foo . ' ' . $bar;
}
add_shortcode('bartag', 'bartag_func');

do_shortcode($content)

Hàm sẽ chạy shortcode nếu bạn không muốn lấy trực tiếp từ nội dung bài viết. Ví dụ:

echo do_shortcode('[gallery]');
// sử dụng shortcodes trong widget text
add_filter('widget_text', 'do_shortcode');

shortcode_parse_atts($text)

Với đối số là một chuỗi shortcode hàm sẽ trả về một mảng thuộc tính và giá trị của shortcode. Mục đích chính của hàm dùng để kiểm tra thuộc tính và giá trị của shortcode.

remove_shortcode($tag)

gỡ shortcode bạn đã khai báo bởi hàm add_shortcode()

strip_shortcodes($content)

xóa shortcode khi trả về nội dung bài viết. Ví ụ nếu ở trang trủ bạn không muốn thực hiện shortcode trong nội dung bài viết:

function remove_shortcode_from_index($content) {
  if ( is_home() ) {
    $content = strip_shortcodes( $content );
  }
  return $content;
}
add_filter('the_content', 'remove_shortcode_from_index');

20 mẫu shortcode tiện dụng để bạn tham khảo

Tham khảo: codex.wordpress.org

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Tìm kiếm bất động sản

 

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Ngoại trưởng Dominic Raab - Anh đòi Trung Quốc trả lời câu hỏi hóc búa về Covid-19

Ngoại trưởng Dominic Raab - Anh đòi Trung Quốc trả lời câu hỏi hóc búa về Covid-19

Ngoại trưởng Dominic Raab tại cuộc họp báo về Covid-19 ở Văn phòng Thủ tướng tại số 10 phố Downing, London hôm 16.4.2020 cho hay Anh

Apple

Apple - Phần lớn người dùng ở lại với Android vì không muốn đổi nhà mạng

Apple vừa công bố báo cáo về tương quan người dùng giữa công ty và đối thủ Samsung, trong đó nêu lí do vì sao người dùng lại chọn một chiếc smartphone chạy Android thay vì “đổi đời” sang sản phẩm của Apple.

10 ứng dụng Jquery xuất sắc nhất

10 ứng dụng Jquery xuất sắc nhất

Released in October 2011, jRumble gets viewers’ attention by adding a vibrating – or rumbling – effect to any element on a page. It can be used as an effective hover tool or will merely make certain elements of your design stand out.

Công ty diệt chuột T&C

 

Diet con trung