Tips, Trik dan Hacks Untuk WordPress
Pada artikel ini akan berbagi beberapa tips, trik dan hacks WordPress yang paling dicari yang akan membantu menggunakan WordPress seperti pro sebagai berikut :
1. Menghapus Post Date Stamp dari SERP
Jika konten cenderung tidak bersifat time-sensitive atau berkaitan dengan pentingnya kronologi waktu yang ada, pastikan menghindari WordPress post date stamp pada SERP (hasil pencarian atau penelusuran dari mesin sejenis Google). Tindakan ini dapat meningkatkan CTR terhadap post di website yang muncul di SERP. Copy-paste kode yang berikut pada single.php file :
<?php the_time(‘F jS, Y’) ?>
Ganti kode ini dengan kode di bawah ini :
<script language=”javascript” type=”text/javascript”>document.write(“<?php the_time(‘F jS, Y’) ?>”);</script>
2. Menambah Maximum Upload Size
Hack WordPress berikutnya adalah menambah maximum upload size. Tambahkan kode berikut ke .htaccess file maka dapat menambahkan upload limit sampai 64MB :
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300
Bagi yang tidak ingin mengutak-atik wp-admin sendiri, ada cara alternatif yaitu mengubahnya melalui hosting :
Pergi ke cPanel > pilih select php version > ubah php options
3. Instalasi Child Theme
Buatlah child theme dan tambahkan kode berikut ini ke CSS file pada child theme yang telah dibuat :
/*
Theme Name: Child Theme Name
Template: parenttheme
*/
@import url(“../parenttheme/style.css”);
4. Melakukan Custom Terhadap Error Page
Buatlah error pages untuk 403, 404 and 500 errors lalu upload ke base WordPress installation. Tambahkan code snippet berikut ke .htaccess file untuk mengaktifkan error pages yang sudah diatur :
# Custom error page for error 403, 404 and 500
ErrorDocument 404 /404-error.html
ErrorDocument 403 / 403-error.html
ErrorDocument 500 / 500-error.html
5. Melakukan Custom pada Content Editor
Menambahkan “style” pada editor dapat meningkatkan pengalaman menulis di WordPress editor. Dapat mencocokkan typographic style dari backend dengan front-end yang nantinya bisa memudahkan untuk melihat versi terakhir (paling mendekati versi final) pada saat menulis. Tips WordPress yang disampaikan berikut ini mampu mengurangi switching dari back hingga forth antara editor dan content output.
function my_editor_styles() {
add_editor_styles(éditor-style.css’);
}
add_action(‘admin_init’,’my_editor_styles’);
6. Mematikan Self-Pingback
Tambahkan kode berikut ke functions.php file untuk mematikan self pingbacks :
// Disable self pingbacks in WordPress
function disable_self_trackback( &$links ) {
foreach ( $links as $l => $link )
if ( 0 === strpos( $link, get_option( ‘home’ ) ) )
unset($links[$l]);
}add_action( ‘pre_ping’, ‘disable_self_trackback’ );
Sebenarnya, untuk mematikan self-pingback, juga bisa menggunakan WP-Optimize plugin yang dapat melakukan fungsi flush atau remove. Silahkan pilih metode mana yang ingin digunakan.
7. Melakukan Block Directories dengan Menggunakan robot.txt
Tambahkan code snippet berikut ke robot.txt file :
User-agent: *
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /xmlrpc.php
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /wp-content/themes/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Disallow: /category/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Disallow: /*?
Allow: /wp-content/uploads/
8. Membuat Send-to-Twitter Button
Dengan sekali klik, pembaca dapat share blog post URL ke Twitter. Caranya sederhana, masukkan kode snippet dimanapun pada posts :
<a href=”http://twitter.com/home?status=Currently reading <?php the_permalink(); ?>” title=”Click to send this page to Twitter!” target=”_blank”>Share on Twitter</a>
Dapat juga menggunakan cara alternatif lain yaitu dengan melakukan instalasi plugin Ultimate Social Media Icon untuk mengaktifkan fungsi send-to-twitter button tersebut.
9. Menambahkan Actionable Button Pada Published Comment
Tambahkan kode berikut ke functions.php file :
function delete_comment_link($id) {
if (current_user_can(‘edit_post’)) {
echo ‘| <a href=”‘.admin_url(“comment.php?action=cdc&c=$id”).’”>del</a> ‘;
echo ‘| <a href=”‘.admin_url(“comment.php?action=cdc&dt=spam&c=$id”).’”>spam</a>’;
}
}
Lalu, tambahkan code snippet berikut ke comments.php file :
delete_comment_link(get_comment_ID());
10. Mengganti Teks “Howdy” dari Dashboard
Tambahkan kode berikut ke functions.php file :
function replace_howdy( $wp_admin_bar ) {
$my_account=$wp_admin_bar->get_node(‘my-account’);
$newtitle = str_replace( ‘Howdy,’, ‘Logged in as’, $my_account->title );
$wp_admin_bar->add_node( array(
‘id’ => ‘my-account’,
‘title’ => $newtitle,
) );
}add_filter( ‘admin_bar_menu’, ‘replace_howdy’,25 );
Apa yang perlu dilakukan hanyalah memasukkan pesan yang baru pada elemen kedua di dalam $newtitle array.
11. Melakukan Custom Pada CSS Untuk Individual Post
Sebenarnya pada setiap theme yang premium atau yang bagus, theme panel editor sudah tersedia pada sidebar secara otomatis. Apabila tidak, tampilkan customized sidebar content untuk individual posts dengan menggunakan custom fields. Caranya, copy-paste kode ini ke single.php, index.php dan page.php file yang ada :
<?php get_sidebar(); ?>
Ganti dengan potongan kode itu.
<?php $sidebar = get_post_meta($post->ID, “sidebar”, true);
get_sidebar($sidebar);
?>
Ketika menulis post, buatlah new custom fields bernama sidebar. Kemudian, di value section, masukkan nama dari sidebar yang ingin di display sehingga dapat membangun dua sidebar files yang berbeda (contohnya, sidebar-category.php dan sidebar-promotion.php). Kemudian, jika ingin menunjukkan sidebar-category.php, ganti key sebagai “sidebar” dan value sebagai “sidebar-category“.
12. Menampilkan Popular Post di Sidebar
Untuk menunjukkan 5 post paling populer berdasarkan penghitungan komentar, tempatkan kode berikut di sidebar.php file :
<?php $result = $wpdb->get_results(“SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 5″);
foreach ($result as $post) {
setup_postdata($post);
$postid = $post->ID;
$title = $post->post_title;
$commentcount = $post->comment_count;
if ($commentcount != 0) { ?><li><a href=”<?php echo get_permalink($postid); ?>” title=”< ?php echo $title ?>”>< ?php echo $title ?></a> {<?php echo $commentcount ?>}</li>
<?php } } ?>
Cara lain untuk melakukannya tanpa memasukkan kode adalah :
pergi ke wp-admin > klik Appearance > pilih Widget > tambahkan widget Popular Post.
13. Menampilkan Tweet Pilihan
Jika seorang blogger yang memiliki akun twitter pribadi, mungkin ingin menunjukkan pada blog readers bagaimana tweet-tweet yang dibagikan secara aktif. Dalam beberapa kasus dapat menampilkan tweet pilihan ke blog agar dapat dibaca oleh blog readers dengan beberapa keyword tertentu atau hashtag tertentu. Ikuti langkah-langkah berikut :
- Temukan menu Twitter Widgets>> klik tombol bertuliskan “create new” >> klik pada “search” tab.
- Dalam search query box, pastikan enter from:dartcreations webdesign.
- Gantikan “the dartcreations” dengan “your twitter handle” dan “webdesign” dengan “your preferred query”.
- Lalu simpanlah widget dan copy widget itu ke widgets section yang ada di WordPress site.
Atau yang tidak ingin mengutak-atik WordPress dapat menggunakan bantuan plugin yang ada.
14. Mengarahkan WordPress feeds ke FeedBurner feeds
Tambahkan kode yang kami berikan berikut ini ke .htaccess untuk mengubah WP feeds menjadi FeedBurner feeds seperti yang diinginkan :
# temp redirect wordpress content feeds to feedburner
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/yourfeed [R=302,NC,L]</IfModule>
Pastikan bahwa kode yang telah dilakukan lewat kode di atas dengan FeedBurner tersinkronisasi sebelum disimpan.
15. Menghapus Semua Pingback
Eksekusilah SQL query di bawah ini atas database yang dimiliki untuk menghapus seluruh pingback yang diterima website :
DELETE FROM wp_comments WHERE comment_type = ‘pingback’;
16. Menambahkan Pinterest “Pin It” Button
Tambahkan kode yang berikut pada footer.php file :
<script type=”text/javascript”>
(function() {
window.PinIt = window.PinIt || { loaded:false };
if (window.PinIt.loaded) return;
window.PinIt.loaded = true;
function async_load(){
var s = document.createElement(“script”);
s.type = “text/javascript”;
s.async = true;
s.src = “http://assets.pinterest.com/js/pinit.js”;
var x = document.getElementsByTagName(“script”)[0];
x.parentNode.insertBefore(s, x);
}if (window.attachEvent)
window.attachEvent(“onload”, async_load);
else
window.addEventListener(“load”, async_load, false);})();
</script>Lalu, masukkan potongan kode ini ke file single.php anda
<?php $pinterestimage = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), ‘full’ ); ?>
<a href=”http://pinterest.com/pin/create/button/?url=<?php echo urlencode(get_permalink($post->ID)); ?>&media=<?php echo $pinterestimage[0]; ?>&description=<?php the_title(); ?>” class=”pin-it-button” count-layout=”vertical”>Pin It</a>
17. Mengubah Excerpt Length
Sesuai dengan default setting, length of the excerpts di WordPress adalah 55 words. Ubah functions.php file dengan menambahkan kode berikut dan customize panjangnya sehingga ukurannya pas :
function custom_excerpt_length( $length ) {
return 20;
}
add_filter( ‘excerpt_length’, ‘custom_excerpt_length’, 999 );
18. Meningkatkan PHP Memory
Jika mengaktifkan plugin yang berat dan menemukan kendala error berbunyi, “memory exhausted” tambahkan kode berikut pada wp-config.php file :
define(‘WP_MEMORY_LIMIT’, ’64M’);
19. Menghapus Semua Unfiltered Spam Comments Dalam Sekejap
Spam comments berhasil lolos dari spam filters dan mencapai ‘awaiting moderation’ yang ada di list. Menghapus semuanya secara manual tentu memakan waktu. Pertama, login ke PHPMyAdmin, pilih WordPress database, klik SQL. Terakhir, copy-paste kode berikut ke SQL command window:
DELETE from wp_comments WHERE comment_approved = ‘0’;
20. Menghapus Revisi Post Terakhir
Jika tidak ingin hanya mematikan fungsi otomatis dari post revision, tetapi juga menghapus semua revisi yang telah tersimpan di database, jalankan SQL query dari PHPMyAdmin dengan kode berikut :
DELETE FROM wp_posts WHERE post_type = ‘revision’;
21. Menggunakan Normal Quotes Bukan Curly Quotes
Untuk mengubah normal quotes ke curly quotes, gunakan code berikut :
remove_filter(‘the_content’, ‘wptexturize’);
22. Menambahkan Customized CSS File
Tambahkan customized CSS file dengan nama ‘custom.css’ ke theme dengan menambahkan following code pada funstions.php file :
function custom_style_sheet() {
wp_enqueue_style( ‘custom-styling’, get_stylesheet_directory_uri() . ‘/custom.css’ );
}
add_action(‘wp_enqueue_scripts’, ‘custom_style_sheet’);
Pastikan lokasi CSS file berada pada directory yang sama dengan main CSS file-nya.
23. Menambahkan Custom Page
Melakukan custom design pada suatu page mungkin untuk dilakukan. Dapat menggunakan simple HTML/CSS dan melakukan instalasinya pada WordPress site. Apa yang dibutuhkan hanyalah menambahkan following code ke bagian atas custom HTML page :
<?php /* Template Name: Squeeze */ ?>
Setelah menambahkan kodenya, simpan page sebagai squeeze.php dan upload page itu ke current theme folder (../wp-content/themes/your-theme-name). Setelah file telah sukses di-upload, buatlah new page dan pilih template Squeeze di bawah “Page Attributes”. Terakhir, publish page itu untuk melihatnya secara langsung.
24. Menambahkan Featured Image Support ke Theme
Tambahkan kode berikut ke functions.php file di theme :
add_theme_support( ‘post-thumbnails’ );
25. Melakukan Custom Pada Login Page
Menambahkan beberapa perubahan pada function.php file dapat memungkinkan melakukan customize pada login page. Ada beberapa tahap yang bisa dilakukan. Pertama, pada current theme directory (../wp-content/themes/your-theme-name), tambahkan folder dengan nama “login”. Buatlah CSS file didalam login folder tersebut dan namai dengan custom-login-styles.css Tahap berikutnya, tambahkan following code pada functions.php file :
function my_custom_login() {
echo ‘<link rel=”stylesheet” type=”text/css” href=”‘ . get_bloginfo(‘stylesheet_directory’) . ‘/login/custom-login-styles.css” />’;
}
add_action(‘login_head’, ‘my_custom_login’);
26. Menambahkan Infinite Scroll
Load new content secara otomatis ketika pembaca melakukan scroll down dan dan sampai pada bottom page. Sebenarnya infinite scroll ini adalah Jetpack plugin feature. Jika menggunakan well-coded theme semacam default WordPress theme yang telah ada, theme berarti telah support infinite scroll. Lakukan instalasi pada Jetpack plugin, aktifkan infinite scroll feature dan tambahkan following code ke functions.php file :
add_theme_support( ‘infinite-scroll’, array(
‘container’ => ‘content’,
‘footer’ => ‘page’,
) );
27. Menampilkan Random Image Header
Jika ingin menampilkan random image headers di blog, trick ini wajib dilakukan. Namai image 1.jpg, 2.jpg, 3.jpg, dan seterusnya. Upload semua image tersebut ke dalam folder di theme directory. Lalu copy-paste kode di bawah ini ke header.php file :
<img src=”http://Path_to_image_folder/<?php echo(rand(1,10)); ?>.jpg” width=”image_width” height=”image_height” alt=”image_alt_text” />
Pastikan mengganti the Path_to_image_folder dengan path yang benar.
28. Menambahkan Featured Box Dalam Konten
Tambahkan kode berikut di functions.php file pada theme :
function make_yellowbox($atts, $content = null) {
return ‘<p style=”background: none repeat scroll 0 0 #ff9; clear: both; margin-bottom: 18px; overflow: hidden; border: 1px solid #e5e597; padding: 13px;”>’ . do_shortcode($content) . ‘</p>’;
}
add_shortcode(‘yellowbox’, ‘make_yellowbox’);
29. Melihat Seluruh Plugin yang Aktif
Demi keperluan maintenance atau pengelolaan yang mumpuni, mungkin ingin melihat atau mendapatkan list lengkap dari semua plugin aktif yang sedang berjalan atau ter-install di WordPress. Cobalah untuk copy-paste kode berikut ke functions.php file, maka kemudian akan mulai melihat plugin aktif apa saja yang ada dashboard :
add_action(‘wp_dashboard_setup’,’wpse_54742_wp_dashboard_setup’);
function wpse_54742_wp_dashboard_setup(){
wp_add_dashboard_widget(‘wpse_54742_active_site_plugins’, __(‘Active Plugins’),’wpse_54742_active_site_plugins’);} function wpse_54742_active_site_plugins(){
$the_plugs = get_option(‘active_plugins’);
echo ‘<ul>’;
foreach($the_plugs as $key => $value){
$string = explode(‘/’,$value);// Folder name will be displayedecho ‘<li>’.$string[0].'</li>’; }
echo ‘</ul>’;}
30. Menampilkan Iklan AdSense Hanya Pada Mesin Penelusur
Jika memerhatikan, pada bagian bertuliskan total add clicks yang diterima pada website, maka akan menemukan bahwa para pengguna mesin penelusur semacam Google cenderung lebih banyak yang klik “contextual ads” seperti AdSense bila dibandingkan dengan pengunjung lainnya.
Jadi bisa menampilkan iklan AdSense hanya pada mesin penelusur seperti Google dengan tujuan untuk meningkatkan CTR terhadap iklan. Untuk menampilkan add hanya pada pengunjung dari mesin pencari, copy-paste kode yang diberikan berikut pada functions.php file :
$ref = $_SERVER[‘HTTP_REFERER’];
$SE = array(‘/search?’, ‘images.google.’, ‘web.info.com’, ‘search.’, ‘del.icio.us/search’, ‘soso.com’, ‘/search/’, ‘.yahoo.’);
foreach ($SE as $source) {
if (strpos($ref,$source)!==false) {
setcookie(“sevisitor”, 1, time()+3600, “/”, “.domainanda.com”);
$sevisitor=true;
}
}
function visits_from_searchengine(){
global $sevisitor;
if ($sevisitor==true || $_COOKIE[“sevisitor”]==1) {
return true;
}return false;
}
Pastikan mengubah domainanda.com menjadi domain yang dimiliki. Kemudian, tambahkan code snippet berikan berikut pada single.php file :
<?php if (function_exists(‘visits_from_searchengine’)) {
if (visits_from_searchengine()) { ?>
[Kode AdSense Anda]
<?php } } ?>
Jangan lupa untuk menambahkan Kode AdSense dengan mengganti teks yang tertulis sebagai [Kode AdSense Anda].