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

 
Microsoft, Google, Intel đứng ở “chiếu trên” Apple

Microsoft, Google, Intel đứng ở “chiếu trên” Apple

Trong bảng xếp hạng được đưa ra trên tạp chí Daily Finance, giá trị thương hiệu của Apple xếp sau 3 đại gia Microsoft, Google và Intel.

Amazon: 1 triệu thiết bị Kindle được bán ra mỗi tuần

Amazon: 1 triệu thiết bị Kindle được bán ra mỗi tuần

Amazon đang rất thành công với các thiết bị Kindle, đặc biệt là Kindle Fire. Hiện số lượng thiết bị Kindle bán ra mỗi tuần đã tăng lên 1 triệu...

Tự sửa các lỗi đơn giản trên máy in canon

Tự sửa các lỗi đơn giản trên máy in canon

Trong lúc in, bạn thường gặp một số lỗi đơn giản như tài liệu bị đốm mực, thứ tự trang in bị ngược, lề bản in không đúng với bản trên máy tính... Những thủ thuật sau sẽ giúp bạn vận hành máy in bình thường.

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

 

Diet con trung