March 28, 2017

Membuat Related Posts Pada Blogger

Belakangan ini related posts atau artikel yang berhubungan mengalami error dan tidak muncul di setiap artikel dalam blog ini, banyak tutorial membuat related posts pada blogger yang telah di ikuti tetapi semuanya tidak berhasil, sampai akhirnya mampir ke link berikut ini: http://helplogger.blogspot.co.id/2016/09/new-related-posts-widget-for-blogger.html , langkah-langkah yang dilakukan:

1. Masuk ke Blogger Dashboard, pilih Theme dan klik Edit Html
2. Cari (dengan menekan tombol crtf+f ) </head> dan kopikan kode berikut tepat diatasnya:

<style type="text/css">
.related-posts-container{margin:55px 0px;}.related-posts-container h4{font:20px 'Open Sans', sans-serif;margin-bottom:20px;}.related-posts-container ul,.related-posts-container ul li{list-style: none;margin: 0;padding: 0;}
.related-posts-container ul li a{text-transform:capitalize !important;font:bold 13px 'Open Sans', sans-serif;outline: 0;}.related-snippets{margin-top:5px;font:italic 12px 'Open Sans', sans-serif;}.related-posts-1 li{list-style:inside none disc !important;}.related-posts-1 li,.related-posts-2 li{border-top:1px solid rgba(0,0,0,0.04);padding:0.8em 0 !important;}
.related-posts-1 li:first-child,.related-posts-2 li:first-child{border-top:medium none;}li.related-post-item{margin:0 3% 3% 0 !important;width:22.7%;float:left;list-style:none;position:relative;}li.related-post-item:last-child{margin:0 0 2% !important;}.related-thumb-large{width:100%;height:auto;border:none;margin:0px auto 10px;padding:0 !important;}
.related-posts-8 li .related-title,.related-posts-9 li .related-title,.related-posts-9 li .related-snippets{padding-left:74px;}.related-posts-8 li:nth-child(even),.related-posts-9 li:nth-child(even){margin:0 0 4% !important;}
.related-posts-8 li,.related-posts-9 li{background-color:#ffffff;box-shadow:0 0 4px rgba(180, 180, 180, 0.55);width:42% !important;float:left;margin:0 4% 4% 0 !important;padding:3% !important;}.related-thumb{float:left;height:64px;margin-right:10px;object-fit:cover;width:64px;}.related-posts-6 li,.related-posts-6 a{line-height:0 !important;}.related-posts-6 .related-thumb-large{margin-bottom:0;}.related-posts-7 li.related-post-item{margin:0 !important;width:25% !important;}
.related-wrapper{position:absolute;left:0px;right:0;top:0px;bottom:0;margin:0 auto;z-index:4;background:rgba(77,77,77,0.2);}.related-wrapper-inner{position:relative;height:100%;z-index:99;width:100%;display:table;vertical-align:middle;text-align:center;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}.related-wrapper .related-title{vertical-align:middle;display:table-cell;color:#ffffff;font:bold 16px 'Open Sans', sans-serif;padding:0 20px;}.related-date{margin-top:5px;font:italic 11px 'Open Sans', sans-serif;color:#999999;}
</style>

3. Cari kode berikut:
<b:includable id='postQuickEdit' var='post'>

dan tepat diatasnya ada kode seperti berikut:
</b:includable>

kopikan kode dibawah tepat diatas: </b:includable> :

<b:if cond='data:blog.pageType == "item"'>
<div class='related-posts-container' id='related-posts-widget'/>
<div style='clear: both;'/>
<script type='text/javascript'>
var labelArray = [<b:if cond='data:post.labels'><b:loop values='data:post.labels' var='label'>"<data:label.name/>"<b:if cond='data:label.isLast != "true"'>,</b:if></b:loop></b:if>];
var relatedSettings = {
blogURL:"<data:blog.homepageUrl/>",
relatedHeading:"<h4><span>Related Posts</span></h4>",
relatedPosts:4,
relatedStyle:4,
thumbnailSize:"w300-h200-p-nu",
defaultThumb:"https://4.bp.blogspot.com/-BLiit18tHXA/V9gCeNNCXzI/AAAAAAAALt8/SF8SUhGI1m8QuoHklq24MKiIEwKHIqwBACLcB/w300-h200-c/no-thumb.png",
roundThumbs:false,
titleLength:"auto",
snippetLength:45,
centerText:false,
openNewTab:false
};</script>
<script type='text/javascript'>
//<![CDATA[
var randomRelatedIndex,startRelated;!function(a,b,c){var d={callBack:function(){}};for(var e in relatedSettings)d[e]="undefined"==relatedSettings[e]?d[e]:relatedSettings[e];var f=function(a){var d=b.createElement("script");d.type="text/javascript",d.src=a,c.appendChild(d)},g=function(a,b){return Math.floor(Math.random()*(b-a+1))+a},h=function(a){var c,d,b=a.length;if(0===b)return!1;for(;--b;)c=Math.floor(Math.random()*(b+1)),d=a[b],a[b]=a[c],a[c]=d;return a},i="object"==typeof labelArray&&labelArray.length>0?"/-/"+h(labelArray)[0]:"",j=function(a){var b=a.feed.openSearch$totalResults.$t-d.relatedPosts,c=g(1,b>0?b:1);f(d.blogURL.replace(/\/$/,"")+"/feeds/posts/summary"+i+"?alt=json-in-script&orderby=updated&start-index="+c+"&max-results="+d.relatedPosts+"&callback=startRelated")},k=function(a){var l,m,n,o,p,q,b=document.getElementById("related-posts-widget"),c=h(a.feed.entry),e=d.relatedStyle,f=d.relatedHeading+'<ul class="related-posts-'+e+'">',g=d.openNewTab?' target="_blank"':"",i=d.centerText?"text-align:center;":"",j=d.roundThumbs?"-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;":"",k='<span style="display:block;clear:both;"></span>';if(b){for(var r=0;r<d.relatedPosts&&r!=c.length;r++){n=c[r].title.$t,o="auto"!==d.titleLength&&d.titleLength<n.length?n.substring(0,d.titleLength)+"…":n,p="media$thumbnail"in c[r]&&d.thumbnailSize!==!1?c[r].media$thumbnail.url.replace(/\/s[0-9]+(\-c)?/,"/"+d.thumbnailSize):d.defaultThumb,l=h(c[r].published.$t);for(var s=[1,2,3,4,5,6,7,8,9,10,11,12],t=["January","February","March","April","May","June","July","August","September","October","November","December"],u=l.split("-")[2].substring(0,2),v=l.split("-")[1],w=l.split("-")[0],x=0;x<s.length;x++)if(parseInt(v)==s[x]){v=t[x];break}postdate=v+" "+u+" "+w,q="summary"in c[r]&&d.snippetLength>0?c[r].summary.$t.replace(/<br ?\/?>/g," ").replace(/<.*?>/g,"").replace(/[<>]/g,"").substring(0,d.snippetLength)+"…":"";for(var y=0,z=c[r].link.length;y<z;y++)m="alternate"==c[r].link[y].rel?c[r].link[y].href:"#";1==e?f+='<li><a href="'+m+'" '+g+">"+o+"</a></li>":2==e?f+='<li><a href="'+m+'" '+g+'><div class="related-title">'+o+'</div></a><div class="related-snippets">'+q+"</div></li>":3==e?f+='<li class="related-post-item" style="'+i+'"><a href="'+m+'" '+g+'><img alt="" class="related-thumb-large" src="'+p+'" style="'+j+'"><div class="related-title">'+o+'</div></a><div class="related-snippets">'+q+"</div></li>":4==e?f+='<li class="related-post-item" style="'+i+'"><a href="'+m+'" '+g+'><img alt="" class="related-thumb-large" src="'+p+'" style="'+j+'"><div class="related-title">'+o+'</div></a><div class="related-date">'+postdate+"</div></li>":5==e?f+='<li class="related-post-item" style="'+i+'"><a href="'+m+'" '+g+'><img alt="" class="related-thumb-large" src="'+p+'" style="'+j+'"><div class="related-title">'+o+"</div></a></li>":6==e?f+='<li class="related-post-item"><a href="'+m+'" '+g+'><img alt="" class="related-thumb-large" src="'+p+'" style="'+j+'"><div class="related-wrapper" style="'+j+'"><div class="related-wrapper-inner"><div class="related-title">'+o+"</div></div></div></a></li>":7==e?f+='<li class="related-post-item"><a href="'+m+'" '+g+'><img alt="" class="related-thumb-large" src="'+p+'" style="'+j+'"></a></li>':8==e?f+='<li class="related-post-item"><a class="related-post-item-wrapper" href="'+m+'" '+g+'><img alt="" class="related-thumb" src="'+p+'" style="'+j+'"><div class="related-title">'+o+'</div></a><div class="related-date">'+postdate+"</div></li>":9==e&&(f+='<li><a href="'+m+'" '+g+'><img alt="" class="related-thumb" src="'+p+'" style="'+j+'"><div class="related-title">'+o+'</div></a><div class="related-snippets">'+q+"</div></li>")}b.innerHTML=f+="</ul>"+k,d.callBack()}};randomRelatedIndex=j,startRelated=k,f(d.blogURL.replace(/\/$/,"")+"/feeds/posts/summary"+i+"?alt=json-in-script&orderby=updated&max-results=0&callback=randomRelatedIndex")}(window,document,document.getElementsByTagName("head")[0]);
//]]>
</script>
</b:if>

Untuk melakukan tampilan related post yang sesuai dengan keinginan, sobat dapat melakukan perubahan pada kode diatas, perhatikan kode (script) dibawah ini:

relatedHeading:"<h4><span>Related Posts</span></h4>",  // untuk merubah judul atau title
relatedPosts:4,  // banyaknya artikel yang dimunculkan
relatedStyle:4,   // style atau model related post yang diinginkan (*)
thumbnailSize:"w300-h200-p-nu",    // besarnya thumbnail yang di-inginkan
roundThumbs:false,  // apakah ingin membuat thumbnail round atau tidak
titleLength:"auto",    //  panjang karakter pada judul
snippetLength:45,    //  panjang snippet
centerText:false,      //  membuat text di tengah
openNewTab:false   // apakah akan dibuka ke tab baru atau tidak

Di Related Post Blogger ini, sobat juga dapat mencoba menggunakan relatedStyle sesuai dengan tampilan yang disukai, seperti contoh gambar di bawah ini, tampilan dengan relatedStyle: 1

Blogger Related Posts

Beberapa nomor relatedStyle yang ada:
  1. Simple related posts style, hanya menampilkan judul
  2. Menampilkan judul dan snippet
  3. Menampilkan thumbnail, judul dan snippet
  4. Akan tampil thumbnail, judul dan tanggal
  5. Thumbnail dan judul
  6. Judul didalam thumbnail
  7. Menampilkan hanya thumbnail
  8. Thumbnail kecil dengan judul dan tanggal di sebelah kanan
  9. Thumbnail kecil dengan judul dan excerpt di kanan
Demikianlah tulisan membuat related posts pada Blogger yang dapat disampaikan.
Terima kasih dan selamat mencoba.

Fix Admin Dashboard WordPress Multisite Error

Dalam kesempatan ini penulis akan berbagi pengalaman memperbaiki menu admin top bar dan sidebar wordpress yang hilang atau tidak bisa di akses setelah melakukan upgrade ke WP versi 4.7.2 ataupun 4.7.3,  kebetulan wordpress pada web server berjalan sebagai multisite, karena itu penulis memberi judul artike ini, Fix Admin Dashboard WordPress Multisite Error.

Error ini diketahui setelah dilakukan proses upgrade wordpress multisite dari versi 4.7.1 ke 4.7.2, proses upgrade memang tidak berjalan seperti biasanya, jadi ketika klik tombol upgrade pada admin dashboard proses upgrade berjalan sebentar, melakukan proses download dari situs aslinya, dan langsung redirect ke admin dashboard yang langsung kehilangan topbar dan sidebar, terlihat seperti gambar berikut:

Admin Dashboard WrdPress Error

Perhatikan pada gambar diatas, hanya terlihat dashboard dan profile pada menu sidebar, sementara menu seperti Plugins, Appereance, Themes, Setting dan lainnya hilang, begitu juga menu topbar.

Jika dilihat dari log error, disebutkan bahwa ada kegagalan dalam menampilkan menu pada sidebar, banyak juga artikel lain di internet yang menyebutkan bahwa menun admin dengan tampilan seperti diatas terjadi karena tidak cocoknya theme atau template yang digunakan, semua hal tersebut sudah dilakukan oleh penulis namun tidak satupun yang berhasil, begitu juga dengan membuat setting "Debug menjadi False" pada wp-config, untuk menampilkan pesan error di layar.

Setelah beberapa hari melakukan selancar (ya.. hehehe.., error wordpress admin dashboard resolve, setelah dua hari penulis mencari solusinya dari internet) dan mampir pada tulisan pada link berikut: 

https://neutrondev.com/fix-wordpress-admin-panel-inaccessible-wp-upgrade/ 

Setelah membaca artikel diatas, penulis melakukan langkah dibawah untuk memperbaiki error yang terjadi:
  1. Login menggunakan SSH ke server 
  2. Masuk ke direktori  /website/wp-content/
  3. Rename direktori plugins menjadi plugins-bak
  4. Login ke WordPress menggunakan admin dan semua menu kembali normal.
Setelah semua menu normal, lakukan proses upgrade yang belum selesai, karena ini adalah multisite, penulis mengetikkan alamat http://mywebsite.xxx/wp-admin/upgrade.php dilanjutkan dengan http://mywebsite.xxx/wp-admin/network dan proses upgrade berjalan lancar, atau bisa juga sobat mengkikuti pesan yang ada pada dashboard untuk proses upgrade.

Tetapi sobat sekalian akan melihat pesan error yang menyebutkan bahwa tidak ada plugins yang aktif, sudah tentu ya karena tadi dilakukan rename pada direktori tersebut, nah, untuk memperbaikinya ubah kembali direktori menjadi plugins dan aktifkan plugins satu persatu.

kenapa aktifkan plugin satu persatu ?

Karena penyebab admin wordpress kehilangan menu pada left sidebar dan topbar adalah salah satu plugin aktif yang ada di dalamnya, dalam kasus penulis adalah plugin yuzo related posts. Setelah ketahuan WordPress Multisite kembali berjalan normal.

Terima kasih dan selamat mencoba.

August 22, 2016

Intallasi PostgreSQL Error Wrong Number of Index Expressions

Pada tulisan ini penulis akan berbagi tips untuk memperbaiki error "Wrong Number of Index Expressions" saat sedang melakukan installasi postgreSQL database versi 8.1.23 pada sistem operasi Ubuntu Linux 14.04.1 LTS  64 bit.

Installasi dilakukan seperti biasa, atau untuk anda yang belum pernah melakukan installasi databases ini sebelumnya dapat membaca cara install postgreSQL database server pada tulisan sebelumnya, kebetulan disini dilakukan installasi dari source yang berbentuk tar.gz.

Setelah langkah terakhir untuk membuat direktori data dilakukan, maka kita wajib menjalankan perintah initdb (/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data) untuk membuat file konfigurasi dan database default yang diperlukan oleh postgreSQL, masalah error muncul ketika melakukannya, seperti terlihat dibawah ini (perhatikan tulisan warna merah):

creating directory pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
default shared_buffers/max_fsm_pages ... 24MB/153600
creating configuration files ... ok
creating template1 database in pgsql/data/base/1 ... ok
initializing ... FATAL:  wrong number of index expressions
STATEMENT:CREATE TRIGGER pg_sync_pg_databaseAFTER ...   

pg_database ... flatfile_update_trigger();

child process exited with exit code 1
initdb: removing data directory "pgsql/data"

Selidik punya selidik ternyata error tersebut disebabkan oleh gcc-4.8 atau kompiler yang ada pada bawaan distro Ubuntu Linux 14.04 tidak mengenal ekspresi postgreSQL versi lama yang dipanggil saat installasi akhir, jadi, bawaan versi postgreSQL yang ada pada Ubuntu 14.04 adalah 9.3, sementara yang akan di install adalah postgreSQL versi 8.1.23.

Untuk mengatasinya diperlukan gcc yang dapat mengenal syntax ekspresi pada postgreSQL 8.1.23, dan solusi yang dapat dilakukan adalah dengan melakukan installasi gcc-4.7.

sudo apt-get install gcc-4.7

Setelah selesai melakukan installasi, sobat harus melakukan pengulangan pada saat melakukan proses konfigurasi di awal installasi dengan menjalankan perintah berikut:

./configure CC='gcc-4.7 -m64'

Setelah itu jalankan langkah installasi sampai selesai, error tersebut hilang dan postgreSQL 8.1.23 dapat terinstall pada Ubuntu Linux 14.04.1 LTS.

Terima kasih sudah menyimak, jangan ragu untuk meninggalkan komentar jika ada pertanyaan yang ingin disampaikan, salam ...

referensi : https://brunomgalmeida.wordpress.com/2014/07/03/postgres-fails-with-fatal-wrong-number-of-index-expressions/

December 9, 2015

Memperbanyak Kunjungan Blog Melalui Social Media

perbanyak kunjungan melalui social media bookmark
Banyak cara yang bisa dilakukan untuk memperbanyak kunjungan pada sebuah blog atau website, diantaranya adalah membuat backlink, rss submission, serta social bookmarking, tetapi yang paling utama adalah tetap tulisan yang terindeks pada mesin pencari (search engine). Pada tulisan ini salah satu cara yang akan dibahas adalah melalui Social Media Bookmarking.

Social Media Bookmarking adalah menaruh atau share link yang berasal dari sebuah website ataupun blog yang sobat punya kedalam situs social media seperti Google plus, Facebook, Twitter dan sebagainya. Jadi dengan banyaknya pemakai social media saat ini, diharapkan link yang di share akan dapat menarik pengunjung yang merupakan member dari situs social media, apalagi jika tulisan sobat dapat berguna bagi mereka.

Jika pengguna diatas tertarik, kita bisa melihatnya dari tombol like yang mereka tinggalkan atau kunjungan langsung dari domain yang bersangkutan, bahkan ada juga yang melakukan share kembali (reshare) ke pengguna lain yang mempunyai hubungan dengannya.

Beberapa situs social media yang mempunyai banyak pengguna dan ranking yang bagus sangat cocok untuk kita menaruh link dengan harapan untuk mendapat banyak kunjungan balik yang akan terjadi, berikut ini adalah social media yang diurut berdarakan page rank Google:

|----------------------------|----|
|         Website            | PR |
|----------------------------------
| http://twitter.com         | 10 |
| http://www.facebook.com    |  9 |
| http://plus.google.com     |  9 |
| http://www.pinterest.com   |  9 |
| http://www.linkedin.com    |  9 |
| http://www.reddit.com      |  8 |
| http://delicious.com       |  8 |
| http://www.stumbleupon.com |  8 |
| http://www.tumblr.com      |  8 |
| http://citeulike.org       |  8 |
| http://www.fark.com        |  7 |
| http://www.scoop.it        |  7 |
| http://slashdot.org        |  7 |
| http://www.bibsonomy.org   |  7 |
| http://www.diigo.com       |  7 |
| http://www.newsvine.com    |  7 |
| http://digg.com            |  7 |
| http://google.com/bookmarks|  7 |
| http://plurk.com           |  7 |
| http://linkarena.com       |  7 |
| http://actweb-sport.com    |  6 |
| http://www.dzone.com       |  6 |
| http://www.folkd.com       |  6 |
| http://metafilter.com      |  6 |
| http://www.savenkeep.com   |  6 |
| http://www.bizsugar.com    |  5 |
|----------------------------|----|

Beberapa situs social media diatas selain dapat meningkatkan kunjungan ke website atau blog sobat, mereka  juga memberikan sebuah link balik, jadi bisa dikatakan kita mendapatkan dua buah hal yang menguntungkan, kunjungan dan backlink, nah terserah sobat sekalian deh mau pilih yang mana.

Tapi harap di-ingat social media bookmarking tidak menjamin situs ataupun blog sobat dapat mempunyai halaman ranking yang baik di search engine, konten yang bagus dan berguna untuk orang lain merupakan hal paling utama yang akan di indeks oleh mesin pencari,

Demikianlah tulisan ini dibuat dan silahkan tambah pada kolom komentar jika sobat mengetahui situs Social Bookmarking yang terlewati oleh penulis dan mempunyai PR antara 5 sampai dengan 10.

Terima kasih dan selamat mencoba.

December 4, 2015

Ubah Owner Tabel PostgreSQL Secara Keseluruhan (Bulk)

mengganti owner semua tabel database postgresql
Tulisan ini dibuat ketika penulis mengalami kesulitan saat akan melakukan perubahan untuk kepemilikan (owner) semua tabel database postgreSQL secara keseluruhan dalam satu skema database, karena tabelnya cukup banyak selain capek juga terlihat tidak simpel kalau harus diganti satu persatu.

Seperti kita ketahui, sebetulnya untuk merubah owner (kepemilikan) tabel pada database postgreSQL secara manual (satu-persatu) dapat dilakukan dengan perintah Alter Table, untuk merubah skema Alter Schema, contoh pengunaan:

ALTER TABLE <nama-schema>.<nama-tabel> OWNER TO <owner-baru);

Nah untuk itulah dimulai pencarian bagaimana cara merubah owner tabel database postgreSQL secara keseluruhan menggunakan search engine kesayangan yaitu Google, hehehehe ...

Akhirnya menemukan sebuah halaman website bernama stackoverflow dan salah satu membernya (alex soto) menyatakan bahwa sejak postgreSQL versi 8.2 perintah yang digunakan menjadi lebih mudah (tidak satu persatu) dan dilakukan melalui user postgres, dikatakannya juga jika merubah tabel owner, kita juga berbicara tentang perubahan sequences dan views, perintahnya adalah:

Tabel:
for tbl in `psql -qAt -c "select tablename from pg_tables where schemaname = 'public';" YOUR_DB` ; do  psql -c "alter table \"$tbl\" owner to NEW_OWNER" YOUR_DB ; done

Sequences:
for tbl in `psql -qAt -c "select sequence_name from information_schema.sequences where sequence_schema = 'public';" YOUR_DB` ; do  psql -c "alter table \"$tbl\" owner to NEW_OWNER" YOUR_DB ; done

Views
for tbl in `psql -qAt -c "select table_name from information_schema.views where table_schema = 'public';" YOUR_DB` ; do  psql -c "alter table \"$tbl\" owner to NEW_OWNER" YOUR_DB ; done


Perhatikan: YOUR_DB = nama database sobat, NEW_OWNER = user database yang ingin diberikan status kepemilikan yang baru, selain itu jika sobat menggunakan skema lebih dari satu, jalankan perintah diatas untuk tiap-tiap skema, karena perintah diatas adalah perintah dasar untuk mengganti owner tabel, sequences, dan views pada skema public (schemaname = 'public').

Penulis sendiri menjalankan perintah tersebut pada postgreSQl versi 8.1, diskusi lengkap tentang sintaks diatas dapat sobat baca pada referensi link berikut: http://stackoverflow.com/questions/1348126/modify-owner-on-all-tables-simultaneously-in-postgresql/2686185#2686185

Dalam perkembangannya, diskusi pada halaman referensi diatas juga digunakan sebagai acuan bagi yang lain untuk membuat skrip sederhana untuk mengganti owner semua tabel dalam database postgreSQL, mereka adalah:

gingerlime dengan linknya : https://gist.github.com/gingerlime/2482969

jirutka github link: https://gist.github.com/jirutka/afa3ce62b1430abf7572#file-pg_change_db_owner-sh

Demikianlah, sobat bisa menggunakan perintah yang ada pada artikel ini, atau salah satu dari tiga link referensi diatas, mudah-mudahan dapat bermanfaat.

Terima kasih atas kunjungannya.