Membuat Form Pencarian Berdasarkan Kategori Dropdown WordPress

Bagaimana cara membuat search form WordPress berdasarkan kategori dalam artikel blog Anda?. Dengan menambahkan function wp dropdown categories, akan menjadikan form pencarian blog dapat berfungsi lebih spesifik dalam mencari artikel berdasarkan kategori yang dipilih, contohnya seperti form pencarian di situs JEVUSKA ini.

Search Form Dropdown Categories WordPress

Kode function wp dropdown categories berikut ini, akan menampilkan semua kategori yang ada dalam blog Anda.

<?php wp_dropdown_categories(array('show_option_all' => 'All categories','hierarchical'=>0));?>

Sisipkan kode tersebut setelah kode input text dalam file searchform.php theme WP Anda. Jika file searchform.php tidak ada, Anda dapat membuatnya (searchform.php) dan manambahkan kode form pencarian di dalamnya.

Kode form pencarian dengan penambahan kategori model dropdown dan tombol submit

<form method="get" action="<?php bloginfo('url'); ?>">

<input type="text" name="s" value="" /> //input text

<?php wp_dropdown_categories(array('show_option_all' => 'All categories','hierarchical'=>0));?> //fungsi wp dropdown categories yang ditambahkan

<input type="submit" value="Search" /> //tombol submit

</form>

Referensi kode fungsi wp_dropdown_categories lebih lengkap tersedia dalam WordPress Codex http://codex.wordpress.org/Function_Reference/wp_dropdown_categories.


 Share

Cara mudah memaksimalkan halaman pencarian WordPress

Hasil halaman pencarian di blog WordPress yang dibiarkan masuk (index,follow) oleh user agent (spider/robots) suatu mesin pencari/search engine, dapat menambah jumlah halaman yang terindex dan menambah pengunjung yang masuk suatu situs. Banyak cara yang digunakan untuk memaksimalkan search result dari halaman pencarian ini, salah satunya adalah metode auto generate content yang sudah dibahas pada postingan yang lalu.

Jika Anda mempunyai konten yang banyak atau Anda konsisten meng-update blog Anda, ada cara yang lebih mudah dalam memaksimalkan halaman pencariannya. Langkah awal yang Anda harus lakukan adalah instal plugin STT2, Relevanssi, dan plugin bad words search noindex. Dengan ketiga plugin tersebut sudah cukup untuk memaksimalkan trafik blog Anda. Kemudian setting masing-masing plugin tersebut sesuai dengan keinginan Anda. Kemudian tempatkan widget STT2 yang telah terinstal di samping halaman blog (sidebar), setting widget tersebut menuju ke halaman pencarian (defaultnya search).

Pastikan ke tiga plugin tersebut telah diatur dengan benar sebelum Anda melakukan update teratur, hal ini dilakukan untuk mendapatkan hasil yang maksimal untuk hasil halaman pencarian dari blog WordPress Anda dan indexing yang dihasilkan oleh search engine lebih bagus juga. Cara setting yang optimal untuk ketiga plugin tersebut akan saya bahas pada tutorial berikutnya.


 Google

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 Search Base Permalink Plugin SEO STT2
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.
URL Search WP Blog

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:
URL Search WP Dinamis

  • 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