• Manajemen Anggaran Pribadi Bulanan pakai Google Drive Spreadsheet

    anggaran bulanan

    Nah, akhirnya nemu juga template yang pas buat mengatur keuangan tiap bulan. Ya memang sebelumnya sudah pakai template untuk excel, tapi agak ribet juga misal lagi keluar kota dan harus mengupdate pengeluaran ataupun pemasukan bulanan.

    anggaran bulanan

    Setelah nyari nyari nemu juga link ini:

    https://drive.google.com/previewtemplate?id=0AluFE3YRzwXLdHM0TG5HSVFkVkVWTHpxYkVOV3k1enc&mode=public&urp=https://www.google.com/url?sa%3Dt%26rct%3Dj%26q%3D%26esrc%3Ds%26so&pli=1&ddrp=1#

    Tinggal pakai daaaaan, silakan coba sendiri.

     

  • Seni Jualan Online

    Alhamdulillah, seorang Yogi Anggriawan yang dulunya cuma bisa ngoding seadanya kini bisa belajar jualan online. Sebenernya sudah lama niatku untuk memulai ini, tapi apa daya, masih ada rasa malas waktu itu. Sadar, memang seharusnya mecoba akhirnya diberanikan untuk mulai jualan dibantu oleh teman.

    Untuk saat ini masih jualan di Tokped, yaa sambil belajar dulu. Ternyata rasanya asyik juga jualan, banyak seninya dan punya tantangan tersendiri setelah ‘nyemplung’ sebagai pedagang online. Oke, sekarang masih online. Masih dropship juga. Tapi dengan izin Allah, semoga nanti punya bisnis keluarga untuk jualan secara offline. Niatku nanti dibantu oleh adik perempuanku, dia yang managemen semua hal tentang jualan ini. Kita lihat dua atau tiga tahun mendatang. :)

    Bissmillah, ya Allah berikanlah hambamu ini rizki yang berkah. Berguna bagi diriku, keluargaku, sahabatku, dan masyarakat umum. Turunkanlah rizkimu dari langit. Jadikanlah hambamu sebagai penjual sukses seperti kekasihmu Nabi Muhammad SAW. Aamiin

  • Doa dan Harapan Orang Tua

    Hari ini masih seperti biasanya, ketika kumpul sama keluarga tiada hentinya mengucap syukur atas anugerah dan rizki yang diberikan Allah SWT. Begitu indah bisa berbincang bincang dengan keluarga, terasa semua masalah hilang. Yang ada hanya rasa bersyukur. Indah sekali.

    Harapan orang tua kepadaku akhirnya (eh beluh akhir ding) bisa sedikit terwujud. Pernah dulu berdoa agar bisa nyaman dalam berpergian ke tempat simbah di jogja. Alhamdulillah bulan Ramadhan tahun lalu 2014, satu kebo besi bisa kebeli. Allhamdulillah

    Ya saya sangat bersyukur atas pencapaian tahun lalu. Dan harapan di tahun ini bakal lebih besar. Semoga saja bisa ketemu jodoh, seperti kata ibu, yang sholehah, yang baik kepadaku dan orang tuaku, dan cantik sebagai bonus. haha :D
    InsyaAllah

  • Setting Domain Menggunakan WWW di Cloudflare

    wordpress-code

    Tutorial ini muncul karena banyak yang belum tau bagaimana menggunakan domain dengan www. Mungkin cara saya masih banyak yang keliru. Silakan diperbaiki yaaa…
    Kalau saya sih yang penting jadi aja. wwkwk :v

    Yang perlu ada di konfigurasi DNS Cloudflare adalah:

    • Untuk A address pertama, isinya name: domainmu.com, value: IP hostingmu
    • A address kedua, isinya name: * ,  value: IP hostingmu
    • lalu Delete A address yang isinnya name: www

    save. Lalu install domainmu (saya pake wp).

    Coba saja dulu, :D

  • Membuat Breadcrumb Navigation untuk Melengkapi Rich Snippet di WordPress

    wordpress-code

    Yang disediakan adalah sebuah fungsi yang diletakan di functions.php, disini saya copas dari dimox_breadcrumbs

     
    function dimox_breadcrumbs() {
    
     /* === OPTIONS === */
     $text['home'] = 'Home'; // text for the 'Home' link
     $text['category'] = 'Archive by Category "%s"'; // text for a category page
     $text['search'] = 'Search Results for "%s" Query'; // text for a search results page
     $text['tag'] = 'Posts Tagged "%s"'; // text for a tag page
     $text['author'] = 'Articles Posted by %s'; // text for an author page
     $text['404'] = 'Error 404'; // text for the 404 page
    
     $show_current = 1; // 1 - show current post/page/category title in breadcrumbs, 0 - don't show
     $show_on_home = 0; // 1 - show breadcrumbs on the homepage, 0 - don't show
     $show_home_link = 1; // 1 - show the 'Home' link, 0 - don't show
     $show_title = 1; // 1 - show the title for the links, 0 - don't show
     $delimiter = ' » '; // delimiter between crumbs
     $before = '<span class="current">'; // tag before the current crumb
     $after = '</span>'; // tag after the current crumb
     /* === END OF OPTIONS === */
    
     global $post;
     $home_link = home_url('/');
     $link_before = '<span typeof="v:Breadcrumb">';
     $link_after = '</span>';
     $link_attr = ' rel="v:url" property="v:title"';
     $link = $link_before . '<a' . $link_attr . ' href="%1$s">%2$s</a>' . $link_after;
     $parent_id = $parent_id_2 = $post->post_parent;
     $frontpage_id = get_option('page_on_front');
    
     if (is_home() || is_front_page()) {
    
     if ($show_on_home == 1) echo '<div class="breadcrumbs"><a href="' . $home_link . '">' . $text['home'] . '</a></div>';
    
     } else {
    
     echo '<div class="breadcrumbs" xmlns:v="http://rdf.data-vocabulary.org/#">';
     if ($show_home_link == 1) {
     echo '<a href="' . $home_link . '" rel="v:url" property="v:title">' . $text['home'] . '</a>';
     if ($frontpage_id == 0 || $parent_id != $frontpage_id) echo $delimiter;
     }
    
     if ( is_category() ) {
     $this_cat = get_category(get_query_var('cat'), false);
     if ($this_cat->parent != 0) {
     $cats = get_category_parents($this_cat->parent, TRUE, $delimiter);
     if ($show_current == 0) $cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
     $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
     $cats = str_replace('</a>', '</a>' . $link_after, $cats);
     if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
     echo $cats;
     }
     if ($show_current == 1) echo $before . sprintf($text['category'], single_cat_title('', false)) . $after;
    
     } elseif ( is_search() ) {
     echo $before . sprintf($text['search'], get_search_query()) . $after;
    
     } elseif ( is_day() ) {
     echo sprintf($link, get_year_link(get_the_time('Y')), get_the_time('Y')) . $delimiter;
     echo sprintf($link, get_month_link(get_the_time('Y'),get_the_time('m')), get_the_time('F')) . $delimiter;
     echo $before . get_the_time('d') . $after;
    
     } elseif ( is_month() ) {
     echo sprintf($link, get_year_link(get_the_time('Y')), get_the_time('Y')) . $delimiter;
     echo $before . get_the_time('F') . $after;
    
     } elseif ( is_year() ) {
     echo $before . get_the_time('Y') . $after;
    
     } elseif ( is_single() && !is_attachment() ) {
     if ( get_post_type() != 'post' ) {
     $post_type = get_post_type_object(get_post_type());
     $slug = $post_type->rewrite;
     printf($link, $home_link . $slug['slug'] . '/', $post_type->labels->singular_name);
     if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;
     } else {
     $cat = get_the_category(); $cat = $cat[0];
     $cats = get_category_parents($cat, TRUE, $delimiter);
     if ($show_current == 0) $cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
     $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
     $cats = str_replace('</a>', '</a>' . $link_after, $cats);
     if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
     echo $cats;
     if ($show_current == 1) echo $before . get_the_title() . $after;
     }
    
     } elseif ( !is_single() && !is_page() && get_post_type() != 'post' && !is_404() ) {
     $post_type = get_post_type_object(get_post_type());
     echo $before . $post_type->labels->singular_name . $after;
    
     } elseif ( is_attachment() ) {
     $parent = get_post($parent_id);
     $cat = get_the_category($parent->ID); $cat = $cat[0];
     if ($cat) {
     $cats = get_category_parents($cat, TRUE, $delimiter);
     $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
     $cats = str_replace('</a>', '</a>' . $link_after, $cats);
     if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
     echo $cats;
     }
     printf($link, get_permalink($parent), $parent->post_title);
     if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;
    
     } elseif ( is_page() && !$parent_id ) {
     if ($show_current == 1) echo $before . get_the_title() . $after;
    
     } elseif ( is_page() && $parent_id ) {
     if ($parent_id != $frontpage_id) {
     $breadcrumbs = array();
     while ($parent_id) {
     $page = get_page($parent_id);
     if ($parent_id != $frontpage_id) {
     $breadcrumbs[] = sprintf($link, get_permalink($page->ID), get_the_title($page->ID));
     }
     $parent_id = $page->post_parent;
     }
     $breadcrumbs = array_reverse($breadcrumbs);
     for ($i = 0; $i < count($breadcrumbs); $i++) {
     echo $breadcrumbs[$i];
     if ($i != count($breadcrumbs)-1) echo $delimiter;
     }
     }
     if ($show_current == 1) {
     if ($show_home_link == 1 || ($parent_id_2 != 0 && $parent_id_2 != $frontpage_id)) echo $delimiter;
     echo $before . get_the_title() . $after;
     }
    
     } elseif ( is_tag() ) {
     echo $before . sprintf($text['tag'], single_tag_title('', false)) . $after;
    
     } elseif ( is_author() ) {
     global $author;
     $userdata = get_userdata($author);
     echo $before . sprintf($text['author'], $userdata->display_name) . $after;
    
     } elseif ( is_404() ) {
     echo $before . $text['404'] . $after;
    
     } elseif ( has_post_format() && !is_singular() ) {
     echo get_post_format_string( get_post_format() );
     }
    
     if ( get_query_var('paged') ) {
     if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ' (';
     echo __('Page') . ' ' . get_query_var('paged');
     if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ')';
     }
    
     echo '</div><!-- .breadcrumbs -->';
    
     }
    } // end dimox_breadcrumbs()
    
    

    Penggunananya tinggal panggil fungsi dimox_breadcrumbs() di header.php

  • Cara Memunculkan Semua Gambar Secara Otomatis untuk Blog Gallery di Theme WP

    wordpress-code

    Cara ini sangat mudah sekali, jika mau googling di yahoo bisa ketemu. Ini sebenarnya tinggal menggunakan fungsi bawaan wordpress. Sangat mudah!!! Yang perlu dipersiapkan adalah theme yang siap digunakan untuk blog tipe gallery atay blog yang mempunyai banyak gambar di tiap postingnya.

    • Koding berikut ini dipaste di functions.php
    function display_images_in_list($size = thumbnail) {
    
    	if($images = get_posts(array(
    		'post_parent'    => get_the_ID(),
    		'post_type'      => 'attachment',
    		'numberposts'    => -1, // show all
    		'post_status'    => null,
    		'post_mime_type' => 'image',
                    'orderby'        => 'menu_order',
                    'order'           => 'ASC',
    	))) {
    		foreach($images as $image) {
    			$attimg   = wp_get_attachment_image($image->ID,$size);
    
    echo $attimg;
    
    		}
    	}
    }

     

    • Nah koding ini dipaste di single.php
    <!--?php display_images_in_list('large'); ?-->

    Untuk referensi silahkan buka http://codex.wordpress.org/Template_Tags/get_posts

  • Tips Mengubah Username Facebook Setelah Kena Limit

    Sempet bingung juga kemaren ketika mau ganti username Facebook karena jatah penggatian username sudah habis. Kalau nggak salah jatahnya cuma dua kali ganti username. Akhirnya nemu juga tutorial ini. TInggal lihat aja videonya

  • Error Setting di Plugin ByREV WP-PICShield di Dedicated Server / VPS Unmanaged

    Sebelumnya saya menggunakan shared hosting untuk menyimpan web web saya. Namun karena shared hosting mempunyai banyak kelemahan, akhirnya saya putuskan untuk pindah ke DS Unmanaged yang harganya masih relatif murah dari pada DS Managed.

    Sebelumnya waktu di Shared Hosting plugin wp-picshield masih berjalan normal. Dari google image bisa langsung diredirect ke halaman gambar asli di web kita. Namun muncul masalah ketika di DS.

    Ketika di save, ternyata si plugin pichield tidak ada efeknya. Sepertinya ada kesalahan. Setelah saya utak utik, liat kodingnya sana sini, akhirnya saya nemu masalah di plugin wp picshield.
    Masalahnya ada Plugin ByREV WP-PICShield menggunakan pembuka bahasa PHP versi lama, yaitu dengan <? dan penutup ?>. Versi terbaru kan yang <?php dan ditutup dengan ?>.Biasa disebut PHP short tags.  Nah, jika instal apache di DS, secara default PHP short tags nonaktif.
    Yang perlu dilakukan adalah mengubahnya di php.ini

    Silahkan buka php.ini, lalu:

    short_open_tag=On

     


    Kemudian restart apache.
    Ya, cuma seperti itu. Semoga berguna.

  • Cara Blok User SSH Berdasarkan Gagal Login dengan Fail2Ban di Centos 6

    fail2ban

    Pengalaman saya beberapa bulan ini menggunakan dedicated server yaitu banyak sekali log security yang menunjukan adanya ip berusaha masuk ke server. Nah, oleh sebab itu saya mencari cara bagaimana cara mem-blok IP berdasarkan gagal login. Saya akhirnya menemukan tutorial tentang Fail2Ban. Berikut ini langkahnya:

    Langkah Pertama —Install Fail2Ban

    Download dulu Fail2Ban, kalau bisa silahkan cari Fail2Ban terupdate.

    rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

    Kemudian Instal

    yum install fail2ban

    Langkah Kedua — Copy the Configuration File

    cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

    Langkah Ketiga — Configure defaults in Jail.Local

    vi /etc/fail2ban/jail.local

    Langkah Keempat (Optional)—Configure the ssh-iptables Section in Jail.Local

    Langkah Terakhir — Restart Fail2Ban

    Setelah melakukan perubahan, segera restart dengan:

    sudo service fail2ban restart

    Sumber asli: https://www.digitalocean.com/community/articles/how-to-protect-ssh-with-fail2ban-on-centos-6

  • PayDay 30 April 2014

    Alhamdulillah, akhirnya setelah ditunggu tunggu sampai juga pembayaran untuk bulan april ini. Lumayan lah untuk seorang pemula dalam bisnis online bisa menghasilkan diatas $1k. Syukur alhamdulillah.
    Dari penghasilan bulan ini, niatnya akan saya pecah-pecah untuk berbagai kepentingan. Kira-kira seperti ini.
    1. Sedekah 10%

    2. 40% untuk orang tua

    3.  20% ditabung untuk investasi

    4. sisanya untuk modal + gaji karyawan

    Untuk keperluan pribadi akan saya minimaliskan, harus bisa hemat. Punya banyak target, kalau terlalu boros jelas merugikan sekali.

    Penutupan bulan april yang luar biasa. Sungguh saya bersyukur bisa mendapatkan semua ini.

Yogi Anggriawan