Chắc hẵn các bạn đã từng nghe nói đến shortcode, đây là một chức năng rất hay mà WordPress đã đưa vào kể từ phiên bản 2.5. Cái tên shortcode đã nói lên được chức năng của nó. Shortcode là một đoạn code ngắn dùng để thay thế cho một đoạn code dài mà bạn phải lập đi lập lại nhiều lần.
Ơ bài viết này mình sẽ tạo một shortcode nhỏ để chèn nút download vào bài viết. Shortcode này có thể cần thiết cho các bạn làm trang chia sẻ tài liệu, phần mềm…và muốn sử dụng các dịch vụ kiếm tiền như adf.ly…Hoặc bạn muốn ẩn link download các tài liệu hay dành cho các thành viên đã đăng ký.
Tạo shortcode download
Trường hợp bạn muốn hiển thị nút download giống nhau cho tất cả các link, chẳng hạn như sử dụng một hình ảnh làm nút botton download chẳng hạn. Bạn sẽ sử dụng đoạn code sau chèn vào file functions.php:
1 2 3 4 |
function rayno_dl( $atts, $content = null ) { return '<div class="dl"><a href="http://adf.ly/147412/' . $content . '" target="_blank" rel="nofollow"><p></p></a></div>'; } add_shortcode( 'dl', 'rayno_dl' ); |
Tiếp theo là thêm một lớp css và file style.css:
1 2 3 4 5 |
.dl p{ background: url(images/download.png) no-repeat; width: 250px; height: 69px; } |
Hình ảnh sử dụng là nút download có tên là download.png và đặt vào folder images của theme bạn sử dụng.
Bây giờ khi muốn chèn link download vào bài viết, bạn chỉ cần sử dụng shortcode:
1 |
[dl]link download[/dl] |
Trường hợp bạn muốn tùy chỉnh text link khác nhau cho mỗi link, bạn có thể sử dụng code sau:
1 2 3 4 5 |
function rayno_dl( $atts, $content = null) { extract(shortcode_atts(array( 'link' => ''), $atts)); return '<div class="dl"><a href="http://adf.ly/147412/' . $link . '" target="_blank" rel="nofollow"><p>' . $content . '</p></a></div>'; } add_shortcode( 'dl', 'rayno_dl' ); |
Bầy giờ shotcode bạn sử dụng sẽ là :
1 |
[dl link="link download"]text link[/dl] |
Ẩn link download cho thành viên
Như đã nói bên trên, bạn có thể ẩn đi link download các tài liệu hoặc phần mềm hay dành riêng cho thành viên đăng ký blog. Bạn có thể sử dụng code sau:
1 2 3 4 5 6 7 8 9 10 |
function rayno_dl( $atts, $content = null) { extract(shortcode_atts(array( 'link' => ''), $atts)); if(is_user_logged_in()) { return '<div class="dl"><a href="http://adf.ly/147412/' . $link . '" target="_blank" rel="nofollow"><p>' . $content . '</p></a></div>'; } else { return '<p>Bạn cần <a href="/wp-login.php">Đăng nhập</a> hoặc <a href="/wp-login.php?action=register">Đăng ký thành viên</a> để xem được link này</p>'; } } add_shortcode( 'dl', 'rayno_dl' ); |
Thủ thuật này rất cần thiết đối với các trang web cần nhiều thành viên. Ở bài viết sau mình sẽ hướng dẫn cách thêm button shortcode vào editor WordPress. Chúc các bạn thành công!