10 thủ thuật WordPress bạn nên biết

Posted on

WordPress là nền tảng blog mạnh mẽ và là sự lựa chọn của nhiều Blogger hiện nay, và có 10 thủ thuật hữu dụng cho WordPress trên trang CatsWhoCode mà mình muốn giới thiệu đến các bạn.

wordpresshacks

1. Tự động loại bỏ liên kết trong bình luận

Nếu có một ai đó để lại liên kết trong bình luận, thì liên kết đó sẽ tự động chuyển thành liên kết trong WordPress. Điều này sẽ hữu ích với các chủ blog khó tính không muốn độc giả đặt quá nhiều liên kết trong bình luận, đặc biệt khi họ là spammer.

Để thực hiện điều bày, bạn chỉ cần dán đoạn mã sau đây vào file functions.php. Sau khi lưu tập tin, bạn sẽ thấy điều kì diệu xảy ra.

remove_filter('comment_text', 'make_clickable', 9);
» Nguồn: http://www.wprecipes.com/wordpress-hack-remove-autolinks-in-comments

2. Tự động thông báo cho các thành viên khi có bài viết mới

Nếu đang có một trang cá nhân sử dụng WordPress, sẽ rất hữu ich khi có một thông báo được gửi cho các thành viên khi bạn đăng một vài viết mới. Dĩ nhiên là bạn không nên sử dụng nó trên blog của mình vì vẫn chưa có tùy chọn hủy bỏ đăng kí.

function email_members($post_ID) {
global $wpdb;
$usersarray = $wpdb->get_results("SELECT user_email FROM $wpdb->users;");
$users = implode(",", $usersarray);
mail($users, "New WordPress recipe online!", 'A new recipe have been published on http://ictkh.org');
return $post_ID;
}
add_action('publish_post', 'email_members');

3. Hiển thị phong cách “time ago” như Twitter

Hiển thị ngày tháng bài viết theo kiểu “days ago” giống như Twitter hiện giờ rất phổ biến trên các blog. Có rất nhiều hướng dẫn trên mạng giúp bạn thực hiện điều này trên blog WordPress nhưng các bạn không biết là WordPress đã có sẵn tính năng này: human_time_diff().

Bạn dán đoạn mã sau đây vào bất kì nơi nào trong loop, và nó sẽ hiển thị theo ý bạn.

Posted
» Nguồn: http://www.phpsnippets.info/display-dates-as-time-ago

4. Hiển thị thumbnail bài viết trong feed

Được giới thiệu trong phiên bản WordPress 2.9, function the_post_thumbnail() giúp bạn dễ dàng thêm và hiển thị thumbnail của bài viết. Nhưng vẫn chưa có chức năng thêm thumbnail bài viết vào RSS feed.

Thật may là đoạn code dưới đây sẽ giúp bạn thực hiện điều này, chỉ cần dán nó vào file functions.php và lưu lại thì ảnh thumbnail của bài viết sẽ hiển thị trong Feed.
function diw_post_thumbnail_feeds($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<div>' . get_the_post_thumbnail($post->ID) . '</div>' . $content;
}
return $content;
}
add_filter('the_excerpt_rss', 'diw_post_thumbnail_feeds');
add_filter('the_content_feed', 'diw_post_thumbnail_feeds');

» Nguồn: http://digwp.com/2010/06/show-post-thumbnails-in-feeds/

5. Khóa các external requests (yêu câu từ bên ngoài)

Mặc định, WordPress thực hiện một vài external requests để tìm thông tin cập nhật và hiển thị những tin tức mới nhất từ WordPress trong bảng dashboard. Nếu bạn làm một trang web cho khách hàng bằng WordPress nhưn họ không thích các external request. Lúc này, bạn hãy chèn dòng này vào file wp-config.php.
define('WP_HTTP_BLOCK_EXTERNAL', true);

Nếu vẫn cần giữ lại một vài external request, bạn có thể tạo ra một whitelist:
define('WP_ACCESSIBLE_HOSTS', 'rpc.pingomatic.com');
Bạn cũng dán dòng này trong file wp-config.php
» Nguồn: http://digwp.com/2010/08/pimp-your-wp-config-php/

6. Bật chế độ sửa lỗi

Khi lập trình sai một thứ gì đó, bạn có thể sử dụng công cụ sửa lỗi của WordPress, WP_DEBUG. Bạn phải dán một đoạn mã trong file wp-config.php để bật chế độ này.

Bạn mở file wp-config.php và thay thế
define('WP_DEBUG', true);
Thành:
if ( isset($_GET['debug']) && $_GET['debug'] == 'debug')
define('WP_DEBUG', true);

Sau khi đã thực hiện xong, bạn chỉ cần thêm một tham số GET vào url của trang mà mình muốn sửa lỗi.
http://ictkh.org/about?debug=debug
Để đảm bào an toàn, bạn nên bật chế độ bảo trì trong thời gian sửa lỗi.

» Nguồn: http://yoast.com/wordpress-debug/

7. Đưa WordPress shortcode vào theme của bạn

Về cách sử dụng Shortcode thì hẳn là các bạn nào cũng đã biết, mình chỉ giới thiệu để các bạn được rõ hơn.
do_shortcode('
');

» Nguồn: http://codex.wordpress.org/Function_Reference/do_shortcode

8. Cho phép upload nhiều loại tập tin

Nếu bạn đã từng thử upload một số định dạng tập tin không phổ biến lên blog Worpdress, có thể bạn sẽ gặp phải lỗi do WordPress không cho phép tải lên những tập tin lạ.

Dĩ nhiên là vẫn có cách khắc phục điều này bằng cách chèn đoạn mã sau đây vào file functions.php, bạn lưu ý là mỗi loại tập tin được phân cách bằng dấu |.

function addUploadMimes($mimes) {
    $mimes = array_merge($mimes, array(
        'tmbundle|tmCommand|tmDragCommand|tmSnippet|tmLanguage|tmPreferences' => 'application/octet-stream'
    ));

    return $mimes;
}

add_filter('upload_mimes', 'addUploadMimes');

» Nguồn: http://www.wprecipes.com/wordpress-tip-allow-upload-of-more-file-types

9. Google Docs PDF viewer shortcode

Nếu muốn xem tài liệu .pdf, .doc, .xls trực tuyến, cách đơn giản nhất là sử dụng Google Docs. Vì vậy, nếu muốn chia sẻ một file PDF với độc giả của mình, làm thế nào sử dụng shortcode có thể mở file PDF đó bằng Google Docs thay vì phải tải file PDF về?

Đơn giản là bạn dán đoạn code sau vào file functions.php.

function pdflink($attr, $content) {
	return '<a href="http://docs.google.com/viewer?url=' . $attr['href'] . '">'.$content.'</a>';
}
add_shortcode('pdf', 'pdflink');

Bây giờ, bạn co thể dùng shortcode trong bài viết và các trang theo cú pháp:

[pdf href="http://yoursite.com/linktoyour/file.pdf"]View PDF[/pdf]

10. Phát hiện trình duyệt khách đang sử dụng

Điều này cũng không phải là mới mẻ, nhưng thỉnh thoảng thực hành lại cũng là ý kiến hay phải không?

Bằng cách này, bạn có thể sửa lỗi trong từng trình duyệt, bạn hãy dán đoạn mã sau vào file functions.php

add_filter('body_class','browser_body_class');
function browser_body_class($classes) {
	global $is_lynx, $is_gecko, $is_IE, $is_opera, $is_NS4, $is_safari, $is_chrome, $is_iphone;

	if($is_lynx) $classes[] = 'lynx';
	elseif($is_gecko) $classes[] = 'gecko';
	elseif($is_opera) $classes[] = 'opera';
	elseif($is_NS4) $classes[] = 'ns4';
	elseif($is_safari) $classes[] = 'safari';
	elseif($is_chrome) $classes[] = 'chrome';
	elseif($is_IE) $classes[] = 'ie';
	else $classes[] = 'unknown';

	if($is_iphone) $classes[] = 'iphone';
	return $classes;
}

» Nguồn: http://www.nathanrice.net/blog/browser-detection-and-the-body_class-function/

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s