Membuat meta description tag WordPress yang dinamis

Bagaimana cara mebuat meta description untuk halaman “Tag” WordPress yang dinamis? meskipun pada kebanyakan blog wordpress halaman tag ini sering diacuhkan, akan tetapi tag sangat membantu dalam mengelompokkan beberapa artikel berdasarkan kata kunci suatu artikel. Tentunya “tag” berbeda dengan pengelompokan artikel berdasarkan “kategori” yang lebih luas maknanya.

Jika halaman tag blog Anda dideteksi oleh spider/robots mesin pencari, tentunya hal ini akan banyak menimbulkan duplikat konten di beberapa tool webmaster seperti Google Webmaster Tool, oleh karena itu dengan penambahan meta description untuk halaman tag akan sangat membantu dalam mengatasi deskripsi yang ganda untuk halaman-halaman blog Anda.

Berikut kode meta description yang dinamis untuk halaman tag blog WordPress.

<?php
if(is_tag()){
$posttags = get_the_tags();
if ($posttags) {
  foreach($posttags as $tag) {
    echo '<meta name="description"';
      if(is_paged()){
            echo 'content="Artikel dalam tag '.$tag->name.' - page '.$paged.'. Baca artikel dengan topik '.$tag->name.' - page '.$paged.'.';
                     }else{
            echo 'content="Artikel dalam tag '.$tag->name.'. Baca artikel dengan topik '.$tag->name.'.';
      }
    echo '">'; 
    }
  }
}
?>

Ganti beberapa contoh kata yang ada dalam kode tersebut dan tempatkan di dalam file header.php theme WP Anda.


 Google

Cara sederhana ganti url search plugin stt2 versi terbaru

Masih pakai plugin STT2?. Sampai detik ini, plugin ini masih support digunakan sampai WordPress versi terbaru dan telah dipakai di berbagai blog. Plugin ini banyak digunakan oleh para webmaster SEO untuk meningkatkan SERPs halaman situsnya di berbagai mesin pencari. Beberapa blogger ada yang menanyakan bagaimana cara merubah permalink search wordpress yang ditampilkan oleh plugin ini?. Search base permalink plugin SEO STT2 mengikuti search base WordPress default. Cara sederhana mengganti url search plugin STT2 versi terbaru untuk struktur permalink di halaman pencarian adalah sebagai berikut:

Cari kode berikut di file plugin STT2 (searchterms-tagging2.php dan widget.php) versi terbaru:

$permalink = get_bloginfo( 'url' ).'/search/'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value));


Kode ini akan membuat struktur url search wp secara default, contohnya http://www.domain.com/search/blog-wordpress dan jika Anda ingin mengganti search base permalink dengan bentuk yang lain misalnya http://www.domain.com/artikel/blog-wordpress.html, cukup mengganti kata search dan menambahkan .html dalam kode tersebut, jadinya seperti ini:

$permalink = get_bloginfo( 'url' ).'/artikel/'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value)).'.html';

Tentunya perubahan tersebut harus diikuti dengan merubah search base permalink blog Anda secara keseluruhan.

Contoh rubah kode url plugin STT2 untuk permalink search

Jika Anda melakukan modifikasi url search secara global di blog WordPress Anda dan mengkombinasikannya dengan plugin ini, Anda cukup merubah sedikit kode di atas pada bagian yang diberi warna merah. Contoh perubahan kode plugin STT2 untuk struktur url search lainnya seperti ini:

  • http://www.domain.com/artikel-blog-wordpress

    $permalink = get_bloginfo( 'url' ).'/artikel-'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value));
  • http://www.domain.com/artikel-blog-wordpress.html
    $permalink = get_bloginfo( 'url' ).'/artikel-'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value)).'.html';
  • http://www.domain.com/artikel+blog-wordpress.html
    $permalink = get_bloginfo( 'url' ).'/artikel+'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value)).'.html';
  • http://www.domain.com/blog-wordpress.html
    $permalink = get_bloginfo( 'url' ).'/'.user_trailingslashit(pk_stt2_function_sanitize_search_link($term->meta_value)).'.html';

Cara merubah search base permalink WordPress dengan mudah

Jika Anda pengguna WordPress versi lama 3.4.1 ke bawah, cara merubah search base permalink WordPress default dapat dengan mudah dilakukan, tanpa harus melakukan oprek atau edit kode search di core WordPress-nya. Cara merubah permalink search WordPress dengan gampang diterapkan langsung di file functions.php theme WP Anda dengan menyisipkan kode di bawah ini.
Kode Search Base URL WordPress

Contoh url search wp

  • www.domain.com/artikel/blog-wordpress

    function change_url_search_base_wp() {
    global $wp_rewrite;
    $wp_rewrite->search_structure = $wp_rewrite->front.'/artikel/%search%';
    return $wp_rewrite;
    }
    add_action('init', 'change_url_search_base_wp');
    
  • www.domain.com/arsip/blog-wordpress
    function change_url_search_base_wp() {
    global $wp_rewrite;
    $wp_rewrite->search_structure = $wp_rewrite->front.'/arsip/%search%';
    return $wp_rewrite;
    }
    add_action('init', 'change_url_search_base_wp');
    
  • www.domain.com/topic/blog-wordpress
    function change_url_search_base_wp() {
    global $wp_rewrite;
    $wp_rewrite->search_structure = $wp_rewrite->front.'/topic/%search%';
    return $wp_rewrite;
    }
    add_action('init', 'change_url_search_base_wp');
    

Kemudian masuk di menu SettingPermalinks di dashbord wp Anda, tekan tombol Save Changes. Pastikan juga bahwa perubahan search base permalink blog Anda tidak sama dengan struktur permalink dalam settingan tersebut agar tidak terjadi konflik nantinya.

Untuk mengubah search base permalink WordPress versi terbaru (3.4.2 atau 3.5.x), sampai saat ini Anda dapat melakukannya dengan mengikuti tutorial sebelumnya.


 Google

Modifikasi URL search WordPress

Cara modifikasi URL search WordPress sangat bervariasi, salah satu contohnya sudah ditutorialkan dalam postingan sebelumnya yaitu bagaimana membuat keyword menjadi direktori di struktur url search yang menggantikan direktori default (/search/) permalink di halaman pencarian wp.

Tutorial Jevuska ini sekaligus juga sebagai tips tambahan dalam melakukan modifikasi di halaman pencarian WordPress. Cara sederhana membuat modifikasi URL search WordPress lainnya adalah sebagai berikut:

  1. Tetap masih menggunakan WordPress versi 3.4.1 (Download di http://wordpress.org/download/release-archive/) atau mungkin versi dibawahnya lagi.
  2. Menambahkan kode rewrite global struktur permalink di dalam file functions.php theme WP Anda. Untuk membuat url search WP seperti:
    • a. http://www.yourdomain.com/search-blog-wp

      function change_url_search_base_wp() {
      global $wp_rewrite;
      $wp_rewrite->search_structure = $wp_rewrite->front.'/search-%search%';
      return $wp_rewrite;
      }
      add_action('init', 'change_url_search_base_wp');
      
    • b. http://www.yourdomain.com/artikel-blog-wp/
      function change_url_search_base_wp() {
      global $wp_rewrite;
      $wp_rewrite->search_structure = $wp_rewrite->front.'/artikel-%search%/';
      return $wp_rewrite;
      }
      add_action('init', 'change_url_search_base_wp');
      
    • c. http://www.yourdomain.com/topic-blog-wp.html
      function change_url_search_base_wp() {
      global $wp_rewrite;
      $wp_rewrite->search_structure = $wp_rewrite->front.'/topic-%search%.html';
      return $wp_rewrite;
      }
      add_action('init', 'change_url_search_base_wp');
      
    • d. http://www.yourdomain.com/search+blog+wp.html
      function change_url_search_base_wp() {
      global $wp_rewrite;
      $wp_rewrite->search_structure = $wp_rewrite->front.'/topic+%search%.html';
      return $wp_rewrite;
      }
      add_action('init', 'change_url_search_base_wp');
      

    Contoh-contoh kode di atas pada dasarnya mengganti tanda garis miring (/) serta kata “search” pada direktori url search menjadi tanda plus (+) atau minus (-) dari bentuk default struktur url search WP (http://domain.com/search/blog-wp).

  3. Menyelipkan kode (untuk membuat title search lebih friendly) di baris 2178 file wp-includes/query.php di bawah kode if ( !empty($q['s']) ) {.
    //added by JEVUSKA
    $tambahan = array('+','-');
    $tambahan2 = array('.html');
    $q['s'] = str_replace ( $tambahan,' ',$q['s']);
    $q['s'] = str_replace ( $tambahan2,'',$q['s']);
    
  4. Point terakhir (jangan sampai lupa langkah ini), lakukan Save Changes pada Setting/Permalinks di dalam dashboard WP Anda. Selesai.

Yang perlu diingat lagi adalah, jangan sampai ada permalink yang sama dengan struktur url search blog WordPress Anda, baik itu permalink postingan, tag, archive, dan lainnya. Jadi buatlah struktur url searh ini menjadi seunik mungkin dalam blog Anda.


 Google

Kata kunci pertama sebagai direktori url search WordPress

Masih berkutat dengan halaman search WordPress? bagaimana membuat kata kunci pertama sebagai direktori url search di halaman pencarian? contohnya seperti url search berikut ini:

  • http://localhost.com/search/blog+wp (Default)

Diubah menjadi

  • http://localhost.com/blog/blog-wp.html
  • http://localhost.com/hello/hello-world.html

Struktur url search ini sangat dinamik karena akan membuat banyak bentuk direktori sesuai dengan kata kunci pertama yang tersedia. Cara membuatnya sebagai berikut (Pakai WordPress Versi 3.4.1):

  1. Tambahkan kode rewrite global struktur permalink berikut di bagian paling atas dalam file functions.php theme WP Anda
    function change_url_search_base_wp() {
    global $wp_rewrite;
    $wp_rewrite->search_structure = $wp_rewrite->front.'/%search%.html';
    return $wp_rewrite;
    }
    add_action('init', 'change_url_search_base_wp');
    
  2. Selipkan kode berikut di baris 2178 file wp-includes/query.php (WordPress versi 3.4.1), tepat setelah kode if ( !empty($q['s']) ) {.
    //added by JEVUSKA
    $tambahan = array('+','-');
    $tambahan2 = array('.html');
    $q['s'] = str_replace ( $tambahan,' ',$q['s']);
    $q['s'] = str_replace ( $tambahan2,'',$q['s']);
    $q['s'] = strstr ( $q['s'],'/'); 
    $q['s'] = preg_replace('/&.+?;/', '', $q['s']);
    $q['s'] = preg_replace('/\s+/', ' ', $q['s']);
    $q['s'] = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', ' ', $q['s']);
    $q['s'] = preg_replace('|-+|', ' ', $q['s']);
    $q['s'] = preg_replace('/&#?[a-z0-9]+;/i','',$q['s']);
    $q['s'] = preg_replace('/[^%A-Za-z0-9 _-]/', '', $q['s']);
    $q['s'] = explode(" ",trim($q['s']));
    $q['s'] = array_unique($q['s']);
    $q['s'] = implode(" ",$q['s']);
    

Langkah terakhir adalah masuk ke dashboard WP Anda Setting/Permalinks Save Changes. Sekarang cobalah mengetikkan url search seperti contoh di atas. Pastikan struktur url halaman lainnya di dalam blog Anda tidak sama dengan struktur url search yang dibentuk untuk menghindari bentrok antar permalink.

Kode PHP mendapatkan kata pertama dari kalimat/keywords

Berikut ini adalah beberapa contoh function untuk mendapatkan kata pertama dari suatu kalimat atau kata kunci.

<?php
$katakunci = 'Hello world blog';
result = explode(' ',trim($katakunci));
echo result[0]; // output-nya hello
?>

atau

<?php
$katakunci = 'Hello world blog';
echo strtok($katakunci, " "); // output-nya hello
?>

 Google

Filter/block kata di search WordPress (Plugin Bad Words)

Jika Anda mempunyai blog WordPress dan ingin filter/block beberapa kata yang tidak diinginkan (bad words) dalam kotak pencarian WordPress (halaman search WordPress), ada beberapa cara yang bisa Anda lakukan. Yang pertama adalah rewrite halaman search yang mengandung kata kunci bad words menjadi halaman 404 (error page) dan kedua adalah membuat halaman search dengan kata kunci bad words menjadi halaman yang mengandung meta robots noindex.

Cara membuat filter/blokir bad words

Membuat Regex Bad Words

Ada 2 tipe regex untuk melakukan filter/block terhadap bad words.

#(.*?)(bing|google|youtube|facebook)(.*?)#
Contoh: kalimat yang mengandung kata bing, kambing, bingung, atau bingkisan akan cocok dengan kata bing.

/\b(bing|google|youtube|facebook)\b/
Regex ini hanya mencocokkan kata-kata yang telah ditentukan. Contoh: jika Anda telah menentukan kata bing maka hanya kalimat yang mangandung kata bing semata-mata yang cocok.

Jadi, di antara kedua tipe regex di atas, Anda tinggal pilih tipe regex mana yang diinginkan. Kemudian buatlah sebuah file PHP misalnya block_bad_words.php dan isi dengan kode regex di atas seperti berikut:

<?php
$block_bad_words="/\b(bing|google|youtube|facebook)\b/";
?>

Kode diatas untuk tipe regex yang kedua. Simpan file block_bad_words.php di directory theme WP Anda, sama dengan file-file theme yang Anda pakai. Anda dapat menambahkan sebanyak mungkin kata-kata yang diselingi dengan tanda “|” (tidak pakai kutip) sesuai dengan kode di atas, jangan ada spasi atau special character dan semua kata harus dalam bentuk lowercase (huruf kecil).

Block Bad Words di halaman pencarian WordPress (Search WP) menjadi halaman 404 error

Metode ini akan me-rewrite halaman search yang mengandung kata yang Anda blokir menjadi halaman 404 theme WordPress. Tempatkan kode berikut di dalam file search.php theme WP Anda. Simpan pada bagian paling atas!.

<?php
include 'block_bad_words.php';
if (preg_match($block_bad_words,strtolower($s))) {
  global $wp_query;
  $wp_query->set_404();
  status_header( 404 );
  get_template_part( 404 ); exit();
  }
?>

Filter/blokir bad words di halaman search WordPress menjadi halaman noindex

Jika Anda menginginkan search engine tidak meng-index halaman dengan kata kunci bad words, tempatkan kode plugin function berikut di dalam file functions.php theme WP Anda.

<?php
function noindex_bad_words() {
  if (is_search()){
  include 'block_bad_words.php';
    if (preg_match($block_bad_words,strtolower(get_search_query()))) {
      echo '<meta name="robots" content="noindex,follow" />';
      }
      else
      {
      echo '<meta name="robots" content="index,follow" />';
      }
   }
}
add_action('wp_head', 'noindex_bad_words');
?>

Kode ini akan menempatkan meta robots noindex secara otomatis di head html halaman pencarian dengan kata kunci yang mengandung bad words. Sedangkan halaman search yang tidak mengandung kata kunci bad words akan tampil meta robots index. Jadi pastikan terlebih dahulu halaman search WordPres Anda tidak mengandung meta robots sebelumnya, supaya tidak duplikat meta atau saling tumpang tindih.

Tutorial ini sekaligus menjawab pertanyaan-pertanyaan dari teman-teman yang bermain dengan auto generated content yang memanfaatkan halaman search WordPress. Metode regex dan function preg match PHP di atas juga dapat Anda manfaatkan untuk melakukan filter terhadap konten yang di-generate.

Kode regex mana yang Anda mau pakai? metode blokir mana yang Anda inginkan? mau menggabungkan keduanya? Semua terserah Anda. Jika ingin menggabungkan keduanya Anda harus membuat dua file block_bad_words.php dengan nama yang berbeda dan memanggilnya masing-masing dengan kedua kode filter yang berbeda pula.

Plugin Bad Words Search Noindex

Khusus untuk bad keywords noindex, Anda bisa pakai plugin Bad Words Search Noindex berikut, tambahkan kata bad words-nya dan simpan dengan nama file bad-words-search-noindex.php. Letakkan file ini di directory plugin WordPress Anda dan aktifkan melalui dashboard Anda. Anda juga bisa mengubah bentuk regex dalam plugin ini sesuai dengan penjelasan sebelumnya.

<?php
/**
 * @package bad-words-search-noindex
 */
/*
Plugin Name: Bad Words Search Noindex
Plugin URI: http://www.jevuska.com/2013/05/29/filter-block-kata-di-search-wordpress-plugin-bad-words
Description: Create meta robots noindex follow for bad keywords in search result WordPress blog.
Version: 1.0.0
Author: Jevuska
Author URI: http://www.jevuska.com/
*/
function noindex_bad_words() {
  if (is_search()){
   //add more keywords in regex code
   $block_bad_words="/\b(bing|google|youtube|yahoo|facebook)\b/";
    if (preg_match($block_bad_words,strtolower(get_search_query()))) {
      echo '<meta name="robots" content="noindex,follow" />';
      }
      else
      {
      echo '<meta name="robots" content="index,follow" />';
      }
   }
}
add_action('wp_head', 'noindex_bad_words');
?>

 Google

Cara backup WordPress sebelum update

WordPress 3.5 telah rilis, pastikan lakukan backup WordPress sebelum update blog Anda. Mungkin Anda sering tidak hiraukan pesan dari WordPress pada saat mengklik tombol “Update Now” melalui dashboard WordPress Updates.

Important: before updating, please back up your database and files. For help with updates, visit the Updating WordPress Codex page

Pihak WordPress bahkan memberi latar belakang warna kuning agar Anda berhati-hati dan memperhatikan pesan penting tersebut sebelum melakukan update blog WordPress Anda. Jika Anda adalah orang yang taat dalam berlalu lintas tentu paham akan warna-warni seperti itu. :)

Backup WordPress maksudnya adalah mengamankan semua file WordPress dan database terlebih dahulu dengan menyimpan hasil duplikatnya di dalam server biasa, server cloud atau langsung di komputer Anda. Hal ini dilakukan dengan tujuan agar bisa memulihkan kembali/restore blog WordPress Anda jika terjadi masalah atau konflik antara file-file atau database lama dengan yang baru. Konflik yang biasanya terjadi adalah belum mendukungnya plugin wp versi sebelumnya dengan wp versi terbaru. Ada 2 cara backup database dan file WordPress, yaitu dengan cara otomatis dan manual.

Backup WordPress cara otomatis

WordPress telah menyediakan banyak plugin backup yang dapat Anda gunakan. Masing-masing plugin berbeda-beda dalam cara melakukan backup. Pastikan plugin yang digunakan nantinya mendukung dengan versi WP blog Anda sekarang. Baca deskripsi plugin backup tersebut untuk melihat kemampuannya dalam membackup file. Perhatikan juga apakah backup yang dilakukan untuk file WordPress saja, database atau keduanya. Masuk di sini untuk melihat daftar plugin backup WordPress.

Backup WordPress cara manual

Cara ini juga ada beberapa macam, diantaranya adalah:

  • FTP Backups dan Shell Script: backup dilakukan secara otomatis ke FTP server blog Anda dengan menggunakan skrip.
  • cPanel: Tersedia File Manager, phpMyAdmin, dan MySQL di server Anda untuk backup file dan database,
  • FTP Client: program ftp yang dapat dijalankan di komputer Anda, misalnya FileZilla atau Fire FTP add-ons browser Mozilla Firefox. Software ini khusus untuk backup file, tidak database.

File-file WordPres yang harus Anda backup adalah:

  • File instalasi WordPress
  • Plugin WordPress
  • Theme WordPress
  • Gambar dan dokumen
  • File javascripts, PHP, dan file kode lainnya
  • File-file tambahan dan halaman web statis

Anda tinggal memilih cara backup mana yang Anda pikir lebih baik, dan pastinya selalu lakukan backup terhadap file-file dan database blog WordPress Anda sebelum di-update ke WP versi terbaru.