BREAKING NEWS

Download

Thursday, May 31, 2007

Adsense Section Targeting - sebuah pelajaran

Apa itu section targeting?
Nih informasi resmi dari Adsense Help Center:

Section targeting allows you to suggest sections of your text and HTML content that you'd like Adsense to emphasize or downplay when matching ads to your site's content. To implement section targeting, you'll need to add a set of special HTML comment tags to your code. These tags will mark the beginning and end of whichever section(s) you'd like to emphasize or de-emphasize for ad targeting.

The HTML tags to emphasize a page section take the following format:


<!-- google_ad_section_start -->
Page Content
<!-- google_ad_section_end --></span>


Sekarang, bagaimana caranya narok di Blogger baru ? Saran gua sih gunain kode diatas dibawah sama diatas judul postingan dan isi postingan biar dapet iklan yang nyambung. Elu mesti nambahin kode ini sebelum dan sesudah tag judul atopun isi pos. Lihat caranya dibawah ini dan tambahin perintah yang tercetak merah:


Tarok di sekitar judul


<b:includable id='post' var='post'>
<div class='post uncustomized-post-template'>
<a expr:name='data:post.id'/>
<b:if cond='data:post.title'>
<h3 class='post-title'>
<b:if cond='data:post.link'>
<a expr:href='data:post.link'><!-- google_ad_section_start --><data:post.title/><!-- google_ad_section_end --></a>
<b:else/>
<b:if cond='data:post.url'>
<a expr:href='data:post.url'><!-- google_ad_section_start --><data:post.title/><!-- google_ad_section_end --></a>
<b:else/>
<!-- google_ad_section_start --><data:post.title/><!-- google_ad_section_end -->
</b:if>
</b:if>
</h3>
</b:if>



Di sekitar postingan



<div class='post-body'>
<p><!-- google_ad_section_start --><data:post.body/><!-- google_ad_section_end --></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>

Ingat, Google Ansense crawler bot (robot yang digunain AdSense buat nentuin iklan apa yang akan tampil di blog kita) akan mengenali kode diatas sekitar dua minggu semenjak kode itu kita pasang di blog kita. Kalo setelah dua minggu masih ngaco saja iklanya, atau malah keluar PSA (Public Service Ads /Iklan Layanan Masyarakat) itu tandanya isi blog elu memang harus diganti yang ramah iklan.....


This tweak is courtesy of iMessengR, translated to Indonesian by Bikinblogger

Monday, May 28, 2007

Narok Adsense di tengah postingan !

Buanyak sekali penggemar bikinblogger yang bertanya-tanya, bagaimana sih bisa narok Adsense di body artikel, setelah judul atau di akhir artikel atau malah di labels ? Padahal caranya gampang sekali sodara, begini : Pernah gak lu narok code Google Adsense langsung ke Blogger XML Template elu dan dapet pesan eror lkayak gini ?

Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly. XML error message: The processing instruction target matching "[xX][mM][lL]" is not allowed.

Jadi, elu lantas putusin narok kode Adsense di blogger widget ya ? Tapi kalo begitu iklan Adsense elu gak bisa tampil di tiap artikel doms ? tempat terbaik elu bisa narok iklan lho. Jangan cemas sodarra, selalu ada cara di dunia ini, termasuk memasukkan kode Adsense langsung ke template XML elu.

Semenjak Blogger mulai nggunain XML segalanya mulai strict dan tersatandar. Eror diatas secara sederhananya boleh diartiken sebagai kode Adsense elu tidak cocok dengan XML , dan pemecahanya yaitu kita musti mengubah semua karakter html seperti '<' dengan '&gt;' '"' dengan '&quot;'. Contohnya ini nih :

<script type="text/javascript"><!--
google_ad_client = "pub-XXXXXXXXXXXXXXX";
google_ad_width = 336;
google_ad_height = 280;
google_ad_format = "336x280_as";
google_ad_type = "text_image";
google_ad_channel = "";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "000000";
google_color_text = "000000";
google_color_url = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

Akan tampak seperti ini :


&lt;script type=&quot;text/javascript&quot;><!--
google_ad_client = "pub-XXXXXXXXXXXXXXX";
google_ad_width = 336;
google_ad_height = 280;
google_ad_format = "336x280_as&quot;;
google_ad_type = "text_image";
google_ad_channel = "";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "000000";
google_color_text = "000000";
google_color_url = "000000";
//--></script&gt;
<script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script&gt;

Elu bisa aja sih nggunain text editor buat mengganti semua HTML, tapi kenapa capek2 kalo ada disini.

Lha sekarang ini tips buat narok code HTML elu yang udah elu ubah jadi XML. Normal text tetep tinggal elu ganti huruf yang tebel ajah:

1. Di samping post


<div style="float:left;">
<!--parsed Adsense code-->
</div>

<div class='post-body'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>


2)Setelah Postingan sebelum Credits



<div class='post-body'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>

<div><!--parsed Adsense code--></div>

<div class='post-footer'>
<p class='post-footer-line post-footer-line-1'>
<span class='post-author'>
<b:if cond='data:top.showAuthor'>
<data:top.authorLabel/> <data:post.author/>

3)Setelah Credits



<p class='post-footer-line post-footer-line-3'/>

<div><!--parsed Adsense code--></div>
</div>
</div>
</b:includable>
</b:widget>
</b:section>

Gimana, gampang kan ?

Wednesday, May 23, 2007

TabView Widget - Bagian 2

This hack is courtesy of Hoctro, translated to Indonesian by Bikinblogger.

Kawan-kawan, langkah gua selanjutnya adalah menyempurnakan the TabView widget dengan nambahin dua tab default yang gunanya buat nunjukin komentar maupun tulisan terbaru dari sebuah blog. Gua juga udah memodifikasi kode tertentu jadi elu ntar bisa punya berbagai blog yang muncul dengan view yang berbeda-beda. Kalo elu udah nginstal widget ini seblon hari Sabtu, 19 Mei 2007, coba elu instal lagi tiga langkah terdahulu.


Multiple TabView....


Tapi tunggu dulu anak muda, ada sebuah keterangan sedikit tentang hal yang menyangkut "commenting out" dari sebuah template Blogger.

Kalo elu pengen ngeluarin sejumlah kode yang berada diantara <script> and </script>, elu bisa nggunain // buat kode tunggal, atau /* */ buat kode multiple.

Untuk kode template diluar Javascript seperti html tags, gunain ini nih <!-- -->

Nha sekarang, buat ngeliat hasil dari multiple tab views, di langkah nomer 3 dari tutorial "TabView Widget - Pengantar" tutorial, tinggal elu ilangin <!-- in front of and -->

setelah kode yang tercetak tebel dibawah sehingga kodenya akan berbentuk seperti ini



<div>
<h2>Hoctro's Place</h2>
<div class='yui-navset' id='multiTab1'/>
</div>


<div>
<h2>Hackosphere</h2>
<div class='yui-navset' id='multiTab2'/>
</div>





dan jangan lupa di deket bagian paling bawah elu ilangin /* in front of and dan */
setelah kode tebel dibawah sehingga segmennya akan terlihat seperti ini:



// Preferred Labels
for (var i=0; i &lt; labels1.length; i++)
if (labels1[i]) cb.searchLabel(blog1, labels1[i], 'listTab1');


var blog2 = "hackosphere.blogspot.com";
var tabView2 = new YAHOO.widget.TabView('multiTab2');
var labels2 = ['Neo','Widgets', "Blogger Power"];
function listTab2(json) {
listOneTab(json, tabView2, "", false);
}
function listLatestPostsTab2(json) {
listOneTab(json, tabView2, "Latest Posts", true);
}
function listLatestCommentsTab2(json) {
listOneTab(json, tabView2, "Latest Comments", false);
}
// Activating calls!
// Latest Posts
cb.search( blog2, "posts", 1, 25, 'listLatestPostsTab2');

// Latest Comments
cb.search( blog2, "comments", 1, 25, 'listLatestCommentsTab2');

// Preferred Labels
for (var i=0; i &lt; labels2.length; i++)
if (labels2[i]) cb.searchLabel("hackosphere.blogspot.com", labels2[i], 'listTab2');

</script>

</b:includable>
</b:widget>

Sekarang elu bakalan ngelihat penampakan tab view yang lain, yang memperlihatkan Post2,komentar2 terakhir si Hackosphere dan sejumlah watch list dari label-label yang menarik.



Penampakan tab view yang laen....


Seperti yang elu bisa lihat, Gua sengaja bikin ini agak mudah buat elu untuk nambahin tab view yang baru, dengan cara ngilangin comments. Tapi proses buat nambahin view yang baru dari program memang agak ruwet, jadi elu musti agak konsentrasi biar jadinya bener. Gua sih percaya, kalo elu tertarik baca artikel ini,pasti elu udah gape buat bikin. (Gua sih pengennya nggunain penyelesaian yang paling manteb, yaitu dengan nulis sebuah pseudocope class, tapi sayangnya gua masih kurang pengalaman buat ngoprek json dan array menjadi sebuah parameter by reference. Jadi hadapilah kenyataan dengan pemecahan masalah yang agak konvensiaonal macem gini.)

Nambahin sebuah tab view baru ke dalam widget adalah sebuah proses tiga tahap, dan gua bakalin ngajarin elu secara bertahap.

Langkah 1.

Kalo elu belum pernah nginstal TabView widget, tolong diinstal dulu.

Sekarang kita coba nambahin view ketiga dari blog lain dengan tujuan untuk melacak perkembangan terbaru dari blognya si Hans' Beautiful Beta blog, dan ini bakalan banyak melibatkan buanyak cut-and-paste, modifikasi dan juga logika eluh. MAri kita namain id dari "div" yang bakal kita bikin ini sebagai multiTab3.

Langkah 2: Nambahin kode HTML buat nampung/ngandangin judul dan tabview

Di bagian ini memungkinkan elu untuk menyususn tampilan dari tab views, baik itu vertikal, atau seperti tabel 2 kolom, ato apapun yang elu pengenin.

Di kode pada langkah nomer 3 di bagian 1, cut dan paste kode dibawah ini tepat di sebelahnya.



<div>
<h2>Hoctro's Place</h2>
<div class='yui-navset' id='multiTab1'/>
</div>


<div>
<h2>Hackosphere</h2>
<div class='yui-navset' id='multiTab2'/>
</div>



lalu gantiin isi h2 dan id-nya menjadi (yang ditebelin):



<div>
<h2>Beautiful Beta</h2>
<div class='yui-navset' id='multiTab3'/>
</div>

Langkah 3: Tambahin kode Javascrip buat bikin view baru
Di langkah kode nomer 3 di bagian 1, cut dan paste kode dibawah tepat setelahnya.


var blog1 = "hoctro.blogspot.com";
var tabView1 = new YAHOO.widget.TabView('multiTab1');
var labels1 = ['JSON Hacks', 'Label Hacks','Free Templates'];
function listTab1(json) {
listOneTab(json, tabView1, "", false);
}
function listLatestPostsTab1(json) {
listOneTab(json, tabView1, "Latest Posts", true);
}
function listLatestCommentsTab1(json) {
listOneTab(json, tabView1, "Latest Comments", false);
}

// Activating calls!

// Latest Posts
cb.search( blog1, "posts", 1, 25, 'listLatestPostsTab1');

// Latest Comments
cb.search( blog1, "comments", 1, 25, 'listLatestCommentsTab1');

// Preferred Labels
for (var i=0; i &lt; labels1.length; i++)
if (labels1[i]) cb.searchLabel(blog1, labels1[i], 'listTab1');

Lha yang bakal kita kerjain sekarang ini kerjaan kuli nih, karena kita pengen menggandakan apapun dari "1" ke "3", atau merubah nama blog, seperti

blog1 -> blog3
hoctro.blogspot.com -> beautifulbeta.blogspot.com
tabView1 -> tabView3
multiTab1 -> multiTab3
labels1 -> labels3

dan seterusnya.

Tapi tenang dulu jangan panik, di bawah ini gua udah nemuin solusinya biar gak jadi kuli, dengan ngganti semua yang tercetak tebal dibawah:


var blog3 = "beautifulbeta.blogspot.com";
var tabView3 = new YAHOO.widget.TabView('multiTab3');
var labels3 = ['hacks', 'tutorials','widgets', 'gadgets']; // These are Hans' labels.
function listTab3(json) {
listOneTab(json, tabView3, "", false);
}
function listLatestPostsTab3(json) {
listOneTab(json, tabView3, "Latest Posts", true);
}
function listLatestCommentsTab3(json) {
listOneTab(json, tabView3, "Latest Comments", false);
}

// Activating calls!

// Latest Posts
cb.search( blog3, "posts", 1, 25, 'listLatestPostsTab3');

// Latest Comments
cb.search( blog3, "comments", 1, 25, 'listLatestCommentsTab3');

// Preferred Labels
for (var i=0; i &lt; labels3.length; i++)
if (labels3[i]) cb.searchLabel(blog3, labels3[i], 'listTab3');

Gua juga nyadarin kalo kode html di langkah nomer 2 bisa elu tarok dimanapun, jadi gua baru aja mindahin tab view hoctro.blogspot.com gua ke depan widget blog, dan berhasil dengan mantabhnya.

Gitu aja men! Cobain deh !

Selamat mencoba.



Tuesday, May 22, 2007

TabView Widget - Pengantar

This hack is courtesy of Hoctro, translated to Indonesian by Bikinblogger

Hallo boss,

Sekarang gua punya maenan baru nih, yakni tab widget - nggunain labels sebage tabs, mirip kayak Yahoo! widget ini.


Yahoo! widget....


Dengan pertolongan oom Yahoo! TabView widget, maka kita bisa menghemat waktu ngulik.

elu bisa tengok di blog gua noh :



punya gua ,keren kan ?


Kalo elu pengen masang ginian di blog elu, ikutilah petunjuk berikut.

Langkah 1: Nginstal the core Javacript library object

Pertama,ikutin instruksi2 dari tulisan ini: Bagaimana memodifikasi blogger template, khusus di bagian C.2 (untuk langkah nomer 1 & 2) dan B.4 (untuk langkah nomer 3).

Berikutnya, installin the Javacsript Core Library versi yang terbaru.

Langkah 2: Menginstall Yahoo! Tab View requirements

Cut dan paste kode dibawah tepat setelah langkah pembikinan kode di nomer 1 tadi (jadi kode-kode ini masih ada sebelum tag penutup
</head>.). Coba lihat instruksi di sini kalo lu masih binun.


<link href='http://yui.yahooapis.com/2.2.2/build/tabview/assets/tabview.css' rel='stylesheet' type='text/css'/>

<script src='http://yui.yahooapis.com/2.2.2/build/yahoo-dom-event/yahoo-dom-event.js' type='text/javascript'/>
<script src='http://yui.yahooapis.com/2.2.2/build/element/element-beta-min.js' type='text/javascript'/>
<script src='http://yui.yahooapis.com/2.2.2/build/tabview/tabview-min.js' type='text/javascript'/>



<style type='text/css'>

.yui-content {
padding:1em; /* pad content container */
}

.yui-navset .yui-content {
border:1px solid #ccc;
}
.yui-navset .yui-nav .selected a, .yui-navset .yui-nav a:hover {
background-color:#fff;
}

.yui-navset .yui-nav li a {
background:#e5e5e5 url(http://developer.yahoo.com/yui/examples/tabview/img/round_4px_trans_gray.gif) no-repeat;
}
.yui-navset .yui-nav li a em {
background:transparent url(http://developer.yahoo.com/yui/examples/tabview/img/round_4px_trans_gray.gif) no-repeat top right;
padding:0.5em;
}

/* top oriented */

.yui-navset-top .yui-nav { margin-bottom:-1px; } /* for overlap, based on content border-width */
.yui-navset-top .yui-nav li a {
border-bottom:1px solid #ccc;
}

.yui-navset-top .yui-nav .selected a { border-bottom:0; }
.yui-navset-top .yui-nav .selected a em { padding-bottom:0.6em; } /* adjust height */
</style>




Langkah 3: Nginstal widget

Tambahin kode dibawah ini diantara dua tag "b:widget", save template elu, ya udah elu hampir selesai.



<b:widget id='HTML102' locked='false' title='MultiTab Widget' type='HTML'>
<b:includable id='main'>
<div class='widget-content'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<h2 class='title'
></h2>
</b:if>
<div id='doc'>
<div>
<h2>Hoctro's Place</h2>
<div class='yui-navset' id='multiTab1'/>
</div>

<!--
<div>
<h2>Hackosphere</h2>
<div class='yui-navset' id='multiTab2'/>
</div>
-->

</div>
<div id='103'/>
</div>

<script type='text/javascript'>
// Developed by Hoctro - All rights reserved 2007
// This credit must be included in all your derived usages.
var p1 = document.createElement('h6');
document.getElementById('103').appendChild(p1);
p1.innerHTML = cb.txt('TabView');

function listOneTab(json, tabView, title, act) {
var label = '';
var text = '';
var nPost = 10;

if (title == "")
label += cb.getLabelFromURL(json);
else
label += title;

text += "<div id='" + label + "'><ul>";

var numberPost = (json.feed.entry.length &lt;= nPost) ?
json.feed.entry.length : nPost;

for (var i = 0; i &lt; numberPost; i++) {
var entry = json.feed.entry[i];
text += "<li>" + "&lt;a href='" + cb.getLink(entry, "alternate")
+ "'>" + cb.getTitle(entry) + "</li>";
}

text += '</ul></div>';

tabView.addTab( new YAHOO.widget.Tab({
label: label,
content: text,
active : act
}));


}

var blog1 = "hoctro.blogspot.com";
var tabView1 = new YAHOO.widget.TabView('multiTab1');
var labels1 = ['JSON Hacks', 'Label Hacks','Free Templates'];
function listTab1(json) {
listOneTab(json, tabView1, "", false);
}
function listLatestPostsTab1(json) {
listOneTab(json, tabView1, "Latest Posts", true);
}
function listLatestCommentsTab1(json) {
listOneTab(json, tabView1, "Latest Comments", false);
}

// Activating calls!

// Latest Posts
cb.search( blog1, "posts", 1, 25, 'listLatestPostsTab1');

// Latest Comments
cb.search( blog1, "comments", 1, 25, 'listLatestCommentsTab1');

// Preferred Labels
for (var i=0; i &lt; labels1.length; i++)
if (labels1[i]) cb.searchLabel(blog1, labels1[i], 'listTab1');

/*
var blog2 = "hackosphere.blogspot.com";
var tabView2 = new YAHOO.widget.TabView('multiTab2');
var labels2 = ['Neo','Widgets', "Blogger Power"];
function listTab2(json) {
listOneTab(json, tabView2, "", false);
}
function listLatestPostsTab2(json) {
listOneTab(json, tabView2, "Latest Posts", true);
}
function listLatestCommentsTab2(json) {
listOneTab(json, tabView2, "Latest Comments", false);
}
// Activating calls!
// Latest Posts
cb.search( blog2, "posts", 1, 25, 'listLatestPostsTab2');

// Latest Comments
cb.search( blog2, "comments", 1, 25, 'listLatestCommentsTab2');

// Preferred Labels
for (var i=0; i &lt; labels2.length; i++)
if (labels2[i]) cb.searchLabel("hackosphere.blogspot.com", labels2[i], 'listTab2');

*/
</script>
</b:includable>
</b:widget>




Setelah elu nginstal sesuai tiga langkah diatas, elu tinggal ngubah hal-hal dibawah ini seperti yang bisa elu temuin kodenya di langkah nomer 3' :

a. Buat mengganti judulnya, lihat perintah ini:

<h2>Hoctro's Place</h2>



b. Lu ganti deh label tabs biar cocok ama blog elu:

var labels1 = ["JSON Hacks", "Label Hacks",
"Free Templates", "Notable Hacks"
];

c. Ganti nilai angka dibawah dari angka 10 ke berapapun nilai yang elu pengenin, ini bakal bikin berapa banyak judul tulisan elu per tab

var nPost = 10;

d. kemudian ganti deh nama blog gua dengan nama blog elu

blog1 = "hoctro.blogspot.com";

Gua udah nggunain blog dibawah ini buat testing, disitu elu bisa lihat judul2 artikel tepat diatas area artikel utama:

http://hoctro-multipletabs.blogspot.com/

Buat bloggers tingkat lanjut yang mau ngulik CSS, "Langkah 2" berisi informasi bagaimana caranya. Kalo bisa sih berkonsultasilah dengan the Yahoo! TabView widget tutorials serta contoh2nya buat variasi lain.


Catatan temping:
Gua barusan bikin update temping, untuk memasukkan artikel dan komentar terbaru dari blog manapun yang elu pinginin secara otomatis, serta memungkinkan elu untuk narok sebanyak mungkin tab views. Coba dilihat bagian nomer 2 dari tutorial TabView di bagian tentang bagaimana menambahkan view baru. Jika elu sukses nambahin TabView sebelum hari Sabtu tanggal 19 Mei 07, coba elu ulangin lagi tiga langkah itu sekali lagi.

Untuk menambahkan tabview yang laen seperti widget di gambar bawah ini, coba elu lihat di tutorial bagian 2.


multi viewtab....


Bagaimana ? Asyik kan ?

Monday, May 21, 2007

Bagaimana memodifikasi blogger template ?

This hack is courtesy of Hoctro, translated to Indonesian by Bikinblogger

Tulisan kali ini akan menerangkan bagaimana membikin modifikasi New Blogger template elu, dan bagaimana 'mengandangkan' Javascript JSON library code versi terakhir. Ini akan mempermudah elu pada buat ngutak-ngatik template eluh karena ini biangnya !

  1. Langkah2 penginstalan
A. Mengakses tab template
1. Kalo elu lagi di blog elu, dan sudah masuk ke dasbor, tinggal klik aja "Costumize"




Customize Tab....


2. Jika elu dari salah satu blog elu, dan elu pingin beralih ke template blog yang lain, klik ajah "Dashboard"


Dashboard....


3. Kalo elu udah di "Dashboard", klik ajah "Layout"

Layout....


4. Kalo elu udah ada di halaman Setting, klik ajah tab "Template"

Template....


B. Mengubah halaman "Edit HTML"



Edit HTML....


Keterangan :

1) Sebelum lu nekat ngobrak-abrik template eluh, simpan dulu satu copy di hardisk elu, biar gak nyesel kalo ntar ada yang salah.

2) Ntar, elu bisa aja nimpe template baru yang lebih yahud daripada yang sekarang lu pake.

3) Ini adalah toggle yang membedakan antara "collapsed" dan mode "explanded widget templates" .

4) Buat bikin widget baru, masukin kode tepat diantara pasangan kode ini "b:section", dengan id='sidebar', dimanapun asal diantara dua baris "b:widget" tunggal. Ntar jugak, kalo kode lu ditrima, guampang banget buat nggeret widget dari satu tempat ke tempat lain, di bagian "Page Element".

C. Buat nambahin CSS atau kode JavaScript :

1) Tempat paling mantebh buat nambahin kode CSS itu adalah tepat di depan tag penutup b:skin

2) Tempat paling mantebh buat nambahin kode JavaScript adalah tepat diantara tag penutup b:skin dan tag penutup head .




CSS dan Javascript....


Ingat, kalo hack ada judulnya sebagai "JSON Hack",maka pastikan bahwa feed setting elu adalah "short" atau "full", bukan "None". Gua jelasin nih:

a. Pastikan settingan feed elu kayak di bawah ini:




Settingan feed....


b. jangan kayak gini:



None....


Dan ingat juga, pastikan "Settings"->"Archiving", "Enable Post Pages?" elu set ke "Yes"


Yes....


II. Menginstal the core Javacript library object

Ini satu-satunya tempat dimana the Core Library bakalan dibuat. Alasan gua kenapa gua bikin ginian dan enggak bikin link keluar ke external js file karena gua enggak pingin users gua gondok ato malah bingung dengan js. Gua pingin elu yang ngontrol kalo elu misalnya mau ng-update versi library lu yang sekarang dengan kode terbaru.

Elu cumak narok kode di bawah ini sekali aja di template eluh,karena kode ini bakal dibagi beberapa widgets seperti TabView, Unlimited Posts, dan Unlimited Comments.

Cut dan paste kode dibawah dan paste diantara tag penutup

</b:skin>

dan tag penutup

</head>

:


<script type='text/javascript'>
// Developed by Hoctro - All rights reserved 2007
// This credit must be included in all your derived usages.

// "cb" is intended to be a common library, where different widgets would
// utitlize the shared operations such as getTitle, getLink, etc. from a json object.
var cb = {

// search function requires these parameters:
// 1. query: a blogger address, such as "hoctro.blogspot.com",
// 2. type: type of return data, either "comments" or "posts",
// 3. start: the start-index parameter (where to start extracting data)
// 4. increment: the number of elements the json will get back. (the smaller value, the faster time to travel back)
// 5. func: the returned function the json object will feed.

search: function(query, type, start, increment, func) {
var script = document.createElement('script');
script.setAttribute('src', 'http://' + query + '/feeds/' + type + '/default?alt=json-in-script&amp;start-index='
+ start + '&amp;max-results=' + increment + '&amp;callback=' + func + '&orderby=published');
script.setAttribute('type', 'text/javascript');
document.documentElement.firstChild.appendChild(script);
},

// searchLabel function return a result of posts w/ a label query
// it requires these parameters:
// 1. query: a blogger address, such as "hoctro.blogspot.com",
// 2. an array of labels
// 3. func: the returned function the json object will feed.
searchLabel: function(query, label, func) {
var script = document.createElement('script');
script.setAttribute('src', 'http://' + query + '/feeds/posts/default/-/' + encodeURIComponent(label) +
'?alt=json-in-script&amp;callback=' + func + '&orderby=published');
script.setAttribute('type', 'text/javascript');
document.documentElement.firstChild.appendChild(script);
},

// getTotalResults needs the json object, and it'll return the total number of comments (or posts) of the blog.
getTotalResults: function(json) {
return json.feed.openSearch$totalResults.$t;
},

// getStartIndex gets the start index of a search inside an json object.
getStartIndex: function(json) {
return json.feed.openSearch$startIndex.$t;
},

// getLink return a href link if "name" matches the content inside "a" tags) of the link
getLink: function(entry, name) {
var alturl;

for (var k = 0; k &lt; entry.link.length; k++) {
if (entry.link[k].rel == name)
alturl = entry.link[k].href;
}
return alturl;
},

// getTitle gets the title of the title of an entry of a json object.
getTitle: function(entry) {
return entry.title.$t;
},

// getContent gets the content inside an entry of a json object.
getContent: function(entry) {
return entry.content.$t;
},

// getCommentAuthor: gets the commenter name inside an entry of a json object.
getCommentAuthor: function(entry) {
return entry.author[0].name.$t;
},

// Given a json label search, this function return the decoded label.
getLabelFromURL: function(json) {
for (var l = 0; l &lt; json.feed.link.length; l++) {
if (json.feed.link[l].rel == 'alternate') {
var raw = json.feed.link[l].href;
// The next two lines are borrowed from Ramani's Neo Template
// code. Thanks Ramani!
var label = raw.substr(raw.lastIndexOf('/')+1);
return decodeURIComponent(label);
}
}
},
txt : function (s) {
return s + " Widget by &lt;a href='http://hoctro.blogspot.com" + "'&gt;Hoctro</a>";
}
};
</script>




Ok, Selamat mengulik !!




Tuesday, May 15, 2007

Kerja gajian itu hanya buat orang goblog !

Seperti biasa, buat manas2in elu pade biar nyesel setengah anjing maka gua colongin lagi dari mas steve pavlina yang memang dahsyat ini.....

Ini dia beberapa alesan kenapa elu musti ngerahin semua daya upaya elu biar kagak kerja jadi buruh lagi !

  1. Gaji hanya buat orang goblog !

Dapet kerja dan menukar semua waktu buat gaji kelihatanya sebuah ide cemerlang. Cumak ada satu hal yang mengganggu bener. elu GOBLOG! Kerja ke orang lain hanyalah cara tergoblog untuk dapat pendapatan! Itu hanya buat orang-orang goblog saja.

Kenapa dapet kerjaan kok malah elu bilang goblog sih ? Karena elu cumak dibayar kalo elu bekerja, iya kan ? Masih belon liat masalahnya ? ato elu memang sudah diracuni dengan pemikiran bahwa mendapatkan pemasukan dari bekerja itu memang cara yang intelek dan bijaksana? Apakah elu belum pernah berpikir bahwa akan lebih baik kalo kita dibayar juga walopun kita enggak kerja? Siapa sih yang ngajarin elu pade kalo cara dapetin duit itu cumak dengan kerja doang? Temen sesama buruh nista yang teracuni otaknya mungkin?

Pernah gak sih elu berpikir bahwa hidup ini akan lebih gampang dan enak kalo elu tetep dibayar selagi elu makan, tidur, dan bermaen bersama anak-anak elu? Kenapa enggak kita digaji 24/7? Dibayar pas kerja ato pas tidak kerja. Apakah taneman elu bakal mati meskipun enggak pernah elu rawat? Enggak kan ? Nah kalo begitu kenapa juga elu gak mikir nanem buat rekening bank elu ? biarin 'tumbuh' sendiri walopun kita gak pernah ngisi. Sedaaaaap !

Sekarang ini siapa sih yang meduliin berapa jam dalam sehari elu bekerja? Hanya itungan jari aja orang di dunia ini yang meduliin jam kerja elu. Kebanyakan sih gak peduli meskipun elu kerja 6 jam seminggu ato malah 60 jam. Tapi kalo elu punya sesuatu yang berharga buat orang lain, banyak dari kita yang bersedia membayar untuk itu. Kita gak peduli sama waktu elu — kita cumak peduli sama apa yang kita udah bayar. Apakah elu peduli berapa lama gua nulis artikel ini? Apakah elu mau bayarin dobel kalo misalkan gua nulis enem jam daripada 3 jam?

Kaum bukan-Goblog sering memulai mendapatkan pendapatan cara tradisional dengan cara goblog. Jadi jangan merasa bersalah dulu kalo sekarang elu menyadarin bahwa elu itu goblog selama ini. KAum bukan-goblog akhirnya akan sadar bahwa menukar waktu dengan uang itu bener-bener goblog dan pasti ada jalan yang lebih baik buat cari duit. Kuncinya cumak memisahkan 'nilai' elu dengan waktu elu.

Orang pinter membangun sistem yang menghasilkan pendapatan 24/7, terutama pendapatan pasif. Ini termasuk membangun sebuah bisnis, bikin website, menjadi investor, ato menghasilkan royalty dari kerja kreatif. Sistem itu bikin nilai tak terputus buat orang untuk menghasilkan uang , dan sekali sistem ini bergerak, bakalan melaju terus menerus nggak peduli elu sengajain ato enggak. Mulai dari situ, makin buanyaaak waktu elu yang bisa diinvestasikan buat nambahin pendapatan elu (dengan memperbaik sistem elu atau malah bikin yang baru lagi) daripada cumak ngurusin pendapatan tunggal elu.

Situs ini adalah contoh sistem yang gua bilang tadi. Waktu gua nulis tulisan ini (tahun 2006), ini aja udah menghasilkan sekitar US $9000 sebulan buat gua (update: US $40,000 sebulan pas tanggal 31 Oktober 2006), dan ini bukanlah satu-satunya sumber pendapatan aing ! Gua nulis setiap artikel hanya sekali (investasi fixed time), dan orang bisa menyerap saripati nilai yang berguna dari tulisan gua bahkan setelah bertahun-tahun kemudian. Server web ngirim 'nilai', dan sistem lain (yang kebanyakan gua malah belon bikin dan malah gak ngerti sama sekali) ngumpulin penghasilan dan nabungin otomatis ke rekening bank gua. Ini nggak bener-bener pasif sih tapi gua emang suka banget nulis dan lagian gratis ini. Tapi tentu saja elu ngeluarin duit banyak sekali buat ngluncurin bisnis ini kan? Ehm ya, $9 adalah nilai yang cepethe hare gene (buat daptarin nama domain). Setelah semua itu cumak ada satu, untung untung dan untung !

Tentu saja butuh waktu yang agak panjang dan usaha untuk mendesain dan menerapkan sistem-sumber-penghasilan elu ini. Tapi setidaknya elu gak usah mencoba menemukan kembali teknologi 'roda' — elu tinggal make sistem yang ada sekarang seperti jaringan iklan dan program afiliasi. Sekali elu udah lakuin dan berjalan, elu gak perlu lagi kerja berjam-jam buat cari duit. Tidakkah indah kita makan malam di luar bareng pasangan kita, dan tahu selagi kita seneng-seneng duit tetep ngalir ke kantong kita? Tapi kalo elu memang seneng bekerja sebagai buruh dalam jam kerja yang panjang karena emang elu menikmatinya, ya terusin ajah. Jika elu juga cumak duduk bengong godain bencong, gak papa juga. Asal sistem elu bisa memberi sesuatu yang berguna buat orang lain, elu tetep dibayar apakah elu kerja ato enggak.

Toko buku di sekitar elu penuh dengan buku yang berisi sistem yang terbukti berhasil dan sudah diuji, didesain, di di-debugged. Nggak ada yang lair ceprot di dunia ini terus langsung tahu bagaimana memulai bisnis ato menghasilkan pendapatan dari investasi, tapi elu bisa belajar dengan mudah. Berapa lama waktu yang elu perlukan buat mempelajarinya sebenarnya juga gak penting amat, karena toch waktu juga bakal berlalu kan ? Mungkin saja elu nanti bakalan jadi raja sistem penghasil-pemasukan di masa depan yang gilang-gemilang sebagai kebalikan dari budak gaji selama hidup elu. Ini bukan satu permainan, semua ato tidak sama sekali. Jika sistem elu cumak menghasilkan ratusan dollar sebulan, itu aja sudah sebuah langkah penting menuju arah yang tepat.

2. Pengalaman yang terbatas.

Elu mungkin berpikir dapet kerja dulu buat dapet pengalaman. Tapi seperti pepatah bilang elu musti maen golf buat dapet pengalaman bermaen golf. elu sudah dapet pengalaman dari hidup, nggak peduli apakah elu bekerja ato nganggur. Sebuah kerjaan hanya memberi elu pengalaman di kerjaan itu ajah, tapi elu dapet ”pengalaman” dari mengerjakan hampir semuanya, jadi nggak ada keuntungan nyata sama sekali pun. Dudak-duduk tanpa kerja apapun selama tahunan, dan elu masih berani nyebut elu sebagai ahli meditasi berpengalaman, filsuf, atau politisi ?

Masalah dari dapat pengalaman dalam pekerjaan adalah elu biasanya mengulang sesuatu pengalaman terbatas yang sama berulang-ulang. Elu banyak belajar di awal dan kemudian malah mandeg. Ini menghilangkan kesempatan elu buat dapet pengalaman yang lain yang lebih berharga. Dan jika pengalaman elu yang terbatas itu jadi nggak berguna lagi, maka pengalaman elu jadi nggak penting lagi. Bahkan, tanya diri elu sendiri deh apa yang bakalan elu dapet dari pengalaman elu selama ini dalam 20-30 tahun ke depan. Jangan-jangan apakah elu masih bekerja ato nggak aja lu gak ngerti ?

Pikirin ini deh. Pengalaman yang mana yang elu lebih suka dapet? Pengetahuan bagaimana melakukan pekerjaan khusus dengan sangat baik —satu kerjaan yang elu hanya bisa jadiin duit dengan menukar waktu elu dengan uang-– atau pengetahuan bagaimana menikmati kelimpah-ruahan uang selama sisa umur elu dengan tanpa butuh kerjaan kantoran sama sekali? Sekarang sih gua enggak tahu elu, tapi gua lebih suka pengalaman yang terakhir deh. Kelihatanya sih lebih berguna di dunia nyata, ya nggak?

3. Jadi hewan ternak selama hidup.

Dapet kerjaan itu kayak nglamar di program peternakan manusia. Elu belajar bagaimana jadi hewan piaraan yang jinak.

Tengok lah sekeliling eluh. LIAT BENERAN DODOL ! Apa yang elu lihat? Apakah di sekitar elu itu seorang manusia merdeka? Atau elu salah satu makhluk hidup yang dikurung di sebuah kerangkeng untuk hewan yang bego longa-longo? Pernahkah kamu jatuh cinta dengan warna ungu?

Bagaimana latihan kepatuhan elu selama ini? Apakah majikan elu ngasih hadiah kalo elu bertabiat baik? Apakah elu dihukum kalo elu enggak patuh sama majikan elu pade?

Apakah ada secercah 'kemerdekaan pribadi' akan hilang dalem diri elu? Atau apakah keadaan yang membuat elu menjadi ternak selama hidup?

Manusia enggak ditakdirkan hidup dalam kerangkeng. Kesian deh lu…

4. Kebanyakan tanggungan.

Gaji karyawan adalah penghasilan yang paling banyak dipotong pajek. Di Amrik elu bisa pastiin kalo setengah gaji elu bakal kepotong pajek. Sistem pajak direncanain sedemikian rupa untuk menyamarkan berapa banyak sebenernya yang elu kasih ke negara karena sebagian dari pajak itu udah dibayarin ama majikan elu, dan sebagian ditanggung dari gaji elu. Tapi berani tarohan, dari kacamata majikan elu, semua pajek yang dibayarkan ke negara dianggep bagian dari gaji elu, selain kompensasi yang lain seperti tunjangan - tunjangan. Bahkan uang sewa kantor elu aja itu pasti udah dimasukin di komponen gaji elu, jadi elu kudu bisa ngasilin lebih buat nutupin biaya itu. Mungkin elu merasa dibantu dengan lingkungan perusahaan dimana elu bekerja, tapi mulai sekarang mulailah berpikir kalo ELU ADALAH ORANG YANG MEMBAYARNYA !

Aliran dana dari penghasilan elu sebagian besar lari ke pemilik dan penanam modal. Bener-bener banyak ya tanggungan elu kan ? Wuih...

Enggak susah sih buat ngerti kenapa karyawan lebih banyak pajek daripada gaji mereka. Lagian siapa sih yang lebih bisa mengontrol sistem pajek? Pemilik perusahaan dan penanam modal ataukah para karyawan?

...keberanian untuk mengubah status dari hewan ternak menjadi cowboy yang bebas merdeka dankaya..
Elu cumak diupah sebagian kecil dari nilai yang elu hasilin. Gaji elu sebenernya mestinya tiga kali lipat dari yang elu trima sekarang inih, tapi kebanyakan uang itu nggak bakal elu lihat wujudnya. Langsung masuk kantong orang laen.

Bener-bener dermawan lu!

5. Terlalu takut resiko.

Banyak karyawan yang mempercayai bahwa bekerja sebagai karyawan itu adalah cara yang palign aman untuk hidup.

Dasar orang-orang DONGO!

Pengkodisian sosial memang hebat. Begitu hebatnya sampe bikin orang percaya kenyataan sebaliknya.

Apakah menempatkan diri elu di posisi yang bisa bikin orang lain menghentikan penghasilan elu hanya dengan dua kata (”Anda dipecat”) bisa elu anggep sebagai situasi aman? Apakah mempunyai hanya satu sumber penghasilan bener-bener bikin aman daripada punya sepuluh?

Jadi hewan ternak*....


Ide bahwa kerja kantoran itu adalah cara paling aman untuk mendapatkan penghasilan adalah keterlaluan. Bagaimana bisa aman kalo elu nggak bisa ngontrol, dan majikan punya kontrol paling menentukan lebih daripada siapapun. Jika elu adalah karyawan, maka pekerjaan elu harusnya layak disebut sebagai penjudi profesional.

6. Miara tuan kebo jahat.

Ketika elu berubah jadi orang dongo di dunia wiraswasta, elu bisa gelengin kepala kanan kiri tanpa peduli orang lain. Ketika elu jadi orang dongo di dunia kerja, elu musti tengok kanan kiri dan kadang perlu membungkuk dan bilang dengan sopannya, “Maaf boss.”

Tahu nggak luh kalo kata-kata boss itu berasal dari bahasa Belanda baas, yang menurut sejarah berarti 'nDoro Toewan' ? Arti lain dari boss adalah “seekor sapi atau kebo.” Dan dibanyak video game, boss itu adalah tokoh jahat yang harus elu bunuh di akhir permainan.

Nah jika boss elu aja 'nDoro Toewan' kebo yang jahat, elu apa doms? Tiada laen adalah si bego thola-tholo dongo bin dogol.

Sapa sih bokap elu?

7. Butuh bener uang.

Ketika elu pengen naekin pengasilan, apakah elu perlu jilat pantat dan membungkuk-2-kan badan sampe jidat elu nyentuh tanah dulu untuk minta naek gaji? Apakah rasanya bahagia kalo elu dilempar tulang ekstra sama tuan elu sekarang dan nanti?

Ooh atokah elu bebas mutusin berapa banyak elu dibayar tanpa butuh ijin seseorang kecuali diri elu sendiri?

Jika elu punya usaha dan salah seorang pelanggan elu bilang “nggak” sama elu, dengan gampangnya elu kan bakal bilang “yak, yang lain silahkan.”

8. Kehidupan sosial yang sama dan sebangun.

Banyak orang yang memberlakukan pekerjaan mereka sebagai dagangan sosial utama mereka. Mereka bergaul dengan orang yang sama dan bekerja di bidang yang sama pulak. Hubungan incest kayak gini adalah jalan buntu sosial. Yang dinamain sebagai hari-hari menyenangkan itu adalah perihal perubahan nama perusahaan dari Bikinblogger menjadi Bikinwordpress, ditundanya peluncuran sistem operasi Microsoft terkini, dan kiriman tak teruda dari pulpen merek Bic yang sudah ada segudang di lemari juga. Coba bayangin akan seperti apakah kalo kita pergi keluar dan berbicara ke orang asing. Ooooh… menakutkan! Lebih baik tetap didalam biar aman sentosa.

Jika salah satu dari temen sesama budak dijual ke tuan yang lain, apakah elu merasa kehilangan? Jika elu bekerja di lingkungan yang didominasi lelaki, apakah itu juga berarti elu enggak pernah ngobrol sama cewek selain resepsionis? Kenapa elu enggak mutusin sendiri dengan siapa elu berteman daripada membiarkan tuan elu yang mutusin buat eluh ? Percaya ato nggak, ada beberapa tempat di planet ini dimana orang-orang merdeka kumpul dan gaul. Cumak hati-hati sama pra pengangguran itu — mereka itu sekumpulan orang gila!

9. Hilang kebebasan.

Butuh banyak usaha untuk menjinakkan seorang manusia menjadi seorang karyawan. Hal pertama yang mesti lu lakuin adalah menghancurkan 'kehendak bebas' dari si manusia itu. Cara bagus untuk diterapkan adalah memberikan mereka kebijakan penggajian manual dengan aturan yang enggak masuk diakal. Ini bakal bikin karyawan baru tersebut lebih patuh, ketakutan bahwa dia bisa dihukum setiap saat untuk sesuatu yang enggak dipahaminya. Jadi, si karyawan ini lebih suka mutusin bahwa lebih gampang dan aman untuk 'manut' saja sama sang perintah majikan tanpa banyak cing cong. Tinggal aduk-aduk aja ke dalam ramuan politik kantor dengan takaran yang pas,dan kita bisa mendapatkan otak budak segar berasa menthol !

Sebagai bagian dari pelatihan kepatuhan mereka, para pekerja ini mesti diajarin bagaimana cara berpakaian, bicara, bergerak, dan lain sebagainya. Kita enggak bisa membiarkan para karyawan berpikir buat kepentingan mereka sendiri, ya kan? Soalnya itu bakal menghancurkan semuanya.

Tuhan melarang elu nanem pohon diatas meja elu kalo itu bertentangan dengan kebijakan perusahaan. Oh tidak, udah kiamat nih! Haitu Si Erni kok punya taneman di atas mejanya! Panggil satpam! Kirim si Erny ke kelas untuk belajar lagi beberapa jam pelatihan sterilisasi!

Manusia merdeka berpikir bahwa aturan dan undang-undang seperti itu menggelikan tentunya. Satu-satunya kebijakan yang diperlukan adalah: “Pintarlah. Berbaik hatilah. Kerjakan apa yang elu senengin. Bergembiralah.”

10. Menjadi seorang pengecut.

Pernahkah elu pikirin bahwa manusia pekerja itu mempunyai kapasitas yang hampir tak terbatas untuk mengeluh tentang masalah yang terjadi di perusahaan dimana mereka bekerja? Tapi mereka juga sebenernya enggak terlalu pengen pemecahannya – mereka hanya pengen mengeluh dan curhat dan bikin alasan yang ujung-ujungnya pasti menyalahkan orang lain. Ini kayak dapet kerja buat ngeringin semua pohon yang akan mengeluarkan orang dari dalamnya dan mengubah mereka menjadi pengecut sejati. Jika elu enggak mampu bilang boss elu sebagai seorang bangsat sekarang ini tanpa rasa takut dipecat, berarti elu udah nggak bebas lagi. Elu udah jadi hak milik tuan elu.

Ketika elu bekerja di sekitar para pengecut sepanjang hari, apakah elu kaga pernah mikir kalo lama-lama elu juga akan seperti mereka? Tentu saja itu pasti akan terjadi. Hanya masalah waktu sebelum elu mengorbankan bagian termulia dari kemanusiaan elu buat jadi persembahan di altar ketakutan: pertama-tama keberanian… lantas kejujuran… lantas kehormatan dan integritas… dan terakhir kehendak bebas elu. Elu jual kemanusiaan elu dengan percuma kecuali hanya bayangan semu saja. Dan sekarang ketakutan terbesar elu adalah menemukan kebenaran dari apa yang seharusnya elu bisa dapetin sejak lama.

Gua enggak peduli seberapa parah elu sudah dihajar. Nggak pernah ada kata terlambat untuk meraih kembali keberanian elu. NGGAK PERNAH!

Jadi masih pingin ngelamar kerja?

Jika sekarang ini elu dalam kondisi gaji bagus, seorang pekerja yang berkelakuan mulia, maka elu bakal bereaksi defensif sama tulisan ini. Itu hanya sebagian dari pengkondisian. Tapi pertimbangin ini deh, jika hal yang gua tulis diatas enggak bener sama sekali, elu nggak bakalan se-emosionil seperti sekarang kan ? Ini hanya sebagai pengingat akan hal yang sebenernya elu sudah tahu kok. Elu bisa aja menolak kenyataan bahwa elu sedang dalam sangkar sesuka elu,tapi tetep saja sebenernya elu masih dalam kurungan. Mungkin saking biasanya sampe elu enggak menyadari bahwa sebetulnya elu itu hidup dalam kerangkeng… seperti seekor lobster yang menikmati mandi aer panas.

Jika salah satu tulisan diatas bikin elu ngamuk, itu langkah bagus untuk menuju arah yang benar. Marah adalah tingkat kesadaran yang lebih tinggi dari cuek, jadi jauh lebih baik daripada bego sepanjang waktu. Apapun bentuk emosinya — bahkan bingung — masih lebih baek daripada cuek bebek. Jika elu bekerja berdasarkan perasaan elu daripada menekan perasaan elu, lu bakalan cepet menemukan pintu keberanian. Dan apa yang akan terjadi kemudian adalah elu bakal punya kemauan untuk memulai sesuatu yang nyata dan mulai hidup seperti manusia yang kuat seperti seharusnya daripada menjadi hewan piaraan seperti selama ini

Pengangguran girang

Jadi apa dong jalan lain buat dapet kerja? Alternativnya yaitu tetep nganggur tapi girang Romadhon selamanya dan menghasilkan pendapatan dengan alat-alat yang lain. Menyadari bahwa elu mendapatkan penghasilan dengan menyediakan 'nilai' — bukan waktu – jadi temukanlah cara untuk menyediakan 'nilai' terbaik elu ke orang lain, dan tentu saja, tagihlah dengan harga yang pantas untuk itu. Salah satu cara paling sederhana dan gampang dicapai adalah mulai bisnis sendiri. Apapun pekerjaan yang bakal elu lakuin, kerjakan sesuatu yang memberi nilai terbaik ke orang lain. Dibutuhkan sedikit waktu untuk memulainya, tapi kebebasan yang bakal elu dapet senilai dengan investasi waktu dan tenaga lu ini. Kalo sudah begitu elu bisa beli tulang lu sendiri buat gantinya.

Dan tentu saja semua yang telah elu pelajarin selama ini bisa lu bagi dengan sesama untuk mendapatkan nilai lebih lagi. Bahkan kesalahan pun bisa menghasilkan uang.

Nih ada sumber gratis buat mulai:

* The Courage To Live Consciously (article on how to transition to more meaningful work)
* Podcast #006 - How to Make Money Without a Job (audio)
* Podcast #009 - Kick-start Your Own Business (audio)
* Podcast #014 - Embracing Your Passion (audio)
* 10 Stupid Mistakes Made by the Newly Self-Employed (article)
* How to Build a High-Traffic Web Site (or Blog) (article)
* Bagaimana mendapatkan uang dari blog eluh (article)

Salah satu dari ketakutan terbesar yang bakal lu adepin adalah lu mungkin saja enggak punya 'nilai' nyata bagi orang lain. Menjadi seorang karyawan dan digaji adalah hal terbaek yang bisa lu lakuin. Mungkin elu sebentulnya enggak begitu berharga. Cara berpikir seperti itu hanyalah bagian dari pengkondisian. Tapi sebenarnya kalo elu sudah berhasil membuang pikiran hasil cuci otak itu, elu bakal segera menyadari bahwa elu tuh sebenernya punya kemampuan untuk memberi nilai-nilai luar biasa bagi orang lain dan orang lain itu dengan seneng hati membayar untuk nilai itu. Hanya satu hal yang menghalangi elu untuk melihat kebenaran — rasa takut.

Yang elu butuhin tuh sebenernya cumak menjadi diri elu sendiri. Nilai asli elu berakar di siapa elu sebenernya, bukan dari yang elu lakuin. Hal yang elu harus lakuin sebenernya hanya mengekspresikan diri elu yang asli kepada dunia. Selama ini elu telah diceramahin kebohongan dan elu gak bisa ngapa-ngapain. Tapi elu kaga pernah akan tahu kebahagiaan sejati dan rasa terpenuhi semua kebutuhan sampe elu sendiri berhasil mengumpulkan keberanian elu untuk mulai mengerjakannya.

Jadi lain kali kalo ada orang yang bilang ke elu, “Cari kerja dong,” Gua saranin elu menjawab seperti yang dilakuin si Fulan tempo hari: ”Ngga, jangan lu bilang lagi… ! Elu boleh nyaranin apapun tapi jangan suruh gua ngelamar kerjaan!” Kemudian segera tonjok tepat di dua matanya.

Sekarang elu udah tahu bahwa ngelamar kerjaan buat jadi karyawan bukanlah sesuatu yang sebenernya elu pinginin. Jadi jangan biarkan siapapun mencoba untuk ngomong yang sebaliknya. Belajarlah untuk mempercayai hati nurani elu, bahkan jika seluruh orang di dunia ini bilang kalo elu salah dan goblog. Bertahun-tahun kemudian dari sekarang elu bakalan mengingat-ingat ke masa lalu dan menyadari bahwa hal ini merupakan salah satu keputusan terbaik di dalam hidup elu....



Diambil dari sini

Monday, May 14, 2007

Calendar Archive Widget - Cara bikin

Seperti biasa, saya colongin satu ulikan blogger yang cukup mantab dan sudah diujicoba oleh Bikinblogger. Kali ini kita pake arsip yang berbentuk kalender, top markotop kan ? Dan jelas, mesti nyolong lagi kite, kali ini kita colong dari punyaannya bung purple moggy yang tampan lagi baek hati !

Coba aja tengok di seblah kanan tuh, ada gambar kalender, dan tanggal yang terselubung warna hijau menunjukkan tanggal postingan di bulan itu, dan postingannya otomatis ada di bawah kalendar. Pokoke manteb abis !

Ha tus carane piye ? Tenang bang jangan panik, segera ikuti langkah di bawah ini



PETUNJUK !
Langsung saja pergi ke bagian Template -> Edit HTML dan tambahin kode berikut diantara tag

<head>




<script type="text/javascript" src="http://yui.yahooapis.com/2.2.0/build/yahoo-dom-event/yahoo-dom-event.js"></script>
<script type="text/javascript" src="http://yui.yahooapis.com/2.2.0/build/calendar/calendar-min.js"></script>
<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.2.0/build/calendar/assets/calendar.css"/>





Nha sekarang tambahin kode dibawah ini diantara tag tags

<head>

(tepat dibawah yang udah lu tambahin tadi diatas)


<script type="text/javascript">
//<![CDATA[
/*
Created by: PurpleMoggy
http://purplemoggy.blogspot.com
dicolong oleh: Bikinblogger
http://bikinblogger.blogspot.com
*/

var _yourBlogUrl = "http://bikinblogger.blogspot.com"; //edit this
var _yourBlogTimeZone = "+07:00"; //edit this

_yourBlogTimeZone = encodeURIComponent(_yourBlogTimeZone);

var _dayTitles = new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");

YAHOO.namespace("example.calendar");

function cal1Init() {
YAHOO.example.calendar.cal1 = new YAHOO.widget.Calendar("cal1","cal1Container");
YAHOO.example.calendar.cal1.addMonthRenderer(1, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(2, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(3, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(4, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(5, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(6, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(7, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(8, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(9, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(10, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(11, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.addMonthRenderer(12, YAHOO.example.calendar.cal1.renderBodyCellRestricted);
YAHOO.example.calendar.cal1.selectEvent.subscribe(mySelectHandler, YAHOO.example.calendar.cal1, true);
YAHOO.example.calendar.cal1.changePageEvent.subscribe(myChangePageHandler, YAHOO.example.calendar.cal1, true);
YAHOO.example.calendar.cal1.renderEvent.subscribe(syncMonthYear);
YAHOO.example.calendar.cal1.render();
myChangePageHandler();
};


var myChangePageHandler = function(type,args,obj) {
var month = YAHOO.example.calendar.cal1.cfg.getProperty("pagedate").getMonth() + 1;
if (month.toString().length == 1) {
month = "0" + month;
}
var year = YAHOO.example.calendar.cal1.cfg.getProperty("pagedate").getFullYear();

document.getElementById("cal1Titles").innerHTML = "";
_dayTitles = new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");

checkPostsForMonth(month, year);
};

function checkPostsForMonth(month,year) {
document.getElementById("cal1loadimg").style.display = "block";

var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
var theUrl = _yourBlogUrl +"/feeds/posts/summary?alt=json-in-script&callback=checkPostsCallback&published-min=" + year + "-" + month + "-01T00%3A00%3A00" + _yourBlogTimeZone + "&published-max=" + year + "-" + month + "-31T23%3A59%3A59" + _yourBlogTimeZone + "&max-results=100";
script.setAttribute("src", theUrl);
document.documentElement.firstChild.appendChild(script);
};

function checkPostsCallback(json) {

if (json.feed.entry) {
for(i = 0; i < json.feed.entry.length; i++) {
var month = json.feed.entry[i].published.$t.substr(5,2);
var year = json.feed.entry[i].published.$t.substr(0,4);
var day = json.feed.entry[i].published.$t.substr(8,2);
var date = month + "/" + day + "/" + year;
var href = json.feed.entry[i].link[0].href;
var title = json.feed.entry[i].title.$t;

if (day.substr(0,1) == "0") {
day = day.substr(1);
}

document.getElementById("cal1Titles").innerHTML += "<li><a href='" + href + "'>" + title + "</a>";
_dayTitles[day] += "<li><a href='" + href + "'>" + title + "</a>";

YAHOO.example.calendar.cal1.addRenderer(date, myCustomRenderer);

}
YAHOO.example.calendar.cal1.render();
}

document.getElementById("cal1loadimg").style.display = "none";

};


function showDayTitles(day) {
document.getElementById("cal1Titles").innerHTML = _dayTitles[day];
}


var myCustomRenderer = function(workingDate, cell) {

var day = workingDate.toString().substr(8,2);
if (day.substr(0,1) == "0") {
day = day.substr(1);
}


cell.innerHTML = '<div onmouseover="showDayTitles(' + day + ');"><a href="javascript:void(null);" >' + YAHOO.example.calendar.cal1.buildDayLabel(workingDate) + "</a></div>";
YAHOO.util.Dom.addClass(cell, YAHOO.example.calendar.cal1.Style.CSS_CELL_SELECTABLE);
YAHOO.util.Dom.addClass(cell, YAHOO.example.calendar.cal1.Style.CSS_CELL_HIGHLIGHT1);
return YAHOO.widget.Calendar.STOP_RENDER;


}

var mySelectHandler = function(type,args,obj) {
var dates = args[0];
var date = dates[0];
var year = date[0];
var month = date[1];
if (month.toString().length == 1) {
month = "0" + month;
}
var day = date[2];

var element = YAHOO.util.Dom.getElementsByClassName("d" + day, "td", "cal1Container")[0];

if (day.toString().length == 1) {
day = "0" + day;
}

if (element.className.indexOf("highlight1") != -1) {
window.location = _yourBlogUrl + "/search?updated-min=" + year + "-" + month + "-" + day + "T00%3A00%3A00" + _yourBlogTimeZone + "&updated-max=" + year + "-" + month + "-" + day + "T23%3A59%3A59" + _yourBlogTimeZone;
}

};

var changeDate = function() {
YAHOO.example.calendar.cal1.setMonth(parseInt(YAHOO.util.Dom.get("cal1monthselect").value));
YAHOO.example.calendar.cal1.setYear(parseInt(YAHOO.util.Dom.get("cal1yearselect").value));
YAHOO.example.calendar.cal1.render();
myChangePageHandler();
}

var syncMonthYear = function(type) {
YAHOO.util.Dom.get("cal1monthselect").value = parseInt(YAHOO.example.calendar.cal1.cfg.getProperty("pagedate").getMonth());

var fullYear = parseInt(YAHOO.example.calendar.cal1.cfg.getProperty("pagedate").getFullYear());

var isYearFound = false;
var i = 0;
while(i < document.getElementById("cal1yearselect").options.length && !isYearFound) {
if (document.getElementById("cal1yearselect").options[i].value == fullYear) {
isYearFound = true;
}
i++;
}
if (!isYearFound) {
var option = document.createElement("option");
option.setAttribute("value", fullYear);
var text = document.createTextNode(fullYear);
option.appendChild(text);
document.getElementById("cal1yearselect").appendChild(option);
}

YAHOO.util.Dom.get("cal1yearselect").value = fullYear;
};

YAHOO.util.Event.addListener(window, "load", cal1Init);
YAHOO.util.Event.addListener("cal1dateselect", "click", changeDate);
//]]>
</script>




Akhirnya , buka menu Template -> Page Elements dan tambahin sebuah kode HTML/Javascript element baru seperti dibawah ini


<div id="cal1wrapper">

<div id="cal1select">

<select name="cal1monthselect" id="cal1monthselect">
<option value="0">January</option>
<option value="1">February</option>
<option value="2">March</option>
<option value="3">April</option>
<option value="4">May</option>
<option value="5">June</option>
<option value="6">July</option>
<option value="7">August</option>
<option value="8">September</option>
<option value="9">October</option>
<option value="10">November</option>
<option value="11">December</option>
</select>
<select name="cal1yearselect" id="cal1yearselect">
<option value="1995">1995</option>
<option value="1996">1996</option>
<option value="1997">1997</option>
<option value="1998">1998</option>
<option value="1999">1999</option>
<option value="2000">2000</option>
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
<option value="2005">2005</option>
<option value="2006">2006</option>
<option value="2007">2007</option>
<option value="2008">2008</option>
<option value="2009">2009</option>
<option value="2010">2010</option>
<option value="2011">2011</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
</select>
<input type="button" value="-->" id="cal1dateselect"/>

</div>

<div id="cal1Container"><img src="http://img239.imageshack.us/img239/9057/40lf8.gif" style="vertical-align:middle;"/> Loading...</div>
<div style="clear:both;"></div>

<div id="calbackloadimg">
<pre id="cal1loadimg" style="display:none;"><img src="http://img239.imageshack.us/img239/9057/40lf8.gif" style="vertical-align:middle;"/> Loading...</pre>
<pre id="cal1Titles"></pre>
</div>

</div>




Yang elu bisa utak-utik
Di kotak kode kedua diatas, elu musti ngedit dua variabel berikut

_yourBlogUrl mesti lu ganti jadi URL blog elu (jangan ditambahin garis miring dibelakangnya lho ya ?)
http://bikinblogger.blogspot.com <-- BENER http://bikinblogger.blogspot.com/ <-- SALAH NJING! _yourBlogTimeZone mesti lu ubah di daerah waktu elu Kalo daerah waktu elu UTC-08:00 maka masukin -08:00 disini Kalo daerah waktu elu UTC-07:00 maka masukin -07:00, begitu seterusnya. Elu bisa ngecek setting daerah waktu elu di sini Settings -> Formatting -> Time Zone



Bagaimana ? Penasaran kan ? COBA AJAH !

Thursday, May 3, 2007

Ijo royo-royo

Cah angon-cah angon, penekno blimbing kuwi , tak IJO ROYO-ROYO tak sengguh temanten anyar ! Lagu warisan dari njeng Sunan Kalijogo memang enak, ijo, selamanya menjadi warna favorit saya. Dan kembang ijo tambah bikin 'kepenak' mata yang memandang. Maka hari ini kita keluarkan blogger template 'BUNGA IJO', yang bentuknya akan seperti gambar dibawah ini.

tak ijo royo-royo tak sengguh blogger sing anyar....


Sedangkan elu bisa melihat 'live demo' di sini, gimana tunggu apalagi ? Segera meluncur ke TKP dong !

Ini dia codenya,tinggal select all, copy deh di dasbor lu !

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'>

<head>
<meta content='3o6+1+37O/1PUQTGFrhmTCMpS5EzP3TjbUSfR501LYA=' name='verify-v1'/>

<b:include data='blog' name='all-head-content'/>

<title><data:blog.pageTitle/></title>

<b:skin><![CDATA[



body {

background: #fff url(http://img164.imageshack.us/img164/4910/bodybackxk8.jpg) top center no-repeat;

margin: 0;

padding: 0px;

font: x-small "Trebuchet MS", "Lucida Grande", "Bitstream Vera Sans", Arial, Helvetica, sans-serif;

text-align: center;

color: #555;

font-size/* */:/**/small;

font-size: /**/small;

}



/********** REMOVE THIS WHOLE BLOCK TO SHOW THE BLOGGER NAVBAR ************

** **

**/ #navbar-iframe {height:0px;visibility:hidden;display:none} /**

** **

***************************************************************************





body {background-position: center 34px;}

**/



a:link {

color: #0a0;

}

a:visited {

color: #080;

}

a img {

border-width: 0;

}



#outer-wrapper {

font: ;

}



/* Header

----------------------------------------------- */

#header-wrapper {

margin:0;

padding: 0;

text-align: right;

}



#header {

margin: 0 auto;

color: #686e24;

padding: 0 40px 0 130px;

}



h1.title {

font-size: 150%;

margin:0;

padding: 0;

letter-spacing: -1px;

font-weight: bold;

}



h1.title a {

color: #686e24;

text-decoration: none;

}



#header .description {

margin:0;

padding: 0;

font-size: 90%;

}



/* Content

----------------------------------------------- */



.clear {

clear: both;

}



#content-wrapper {

width: 780px;

margin: 0 auto;

padding: 0;

text-align: left;

font-size: 90%;

}

#main-wrapper {

background: url(http://img74.imageshack.us/img74/8782/maincontentxt3.png) top no-repeat;

margin-top: 74px;

padding: 40px 0 15px;

width: 462px;

float: left;

word-wrap: break-word; /* fix for long text breaking sidebar float in IE */

overflow: hidden; /* fix for long non-text content breaking IE sidebar float */

}

#main {

padding: 0 30px;

}

#sidebar-wrapper {

background: url(http://img74.imageshack.us/img74/5787/subcontentlz5.png) top no-repeat;

margin-top: 74px;

width: 316px;

float: right;

word-wrap: break-word; /* fix for long text breaking sidebar float in IE */

overflow: hidden; /* fix for long non-text content breaking IE sidebar float */

}



#sidebar {

padding: 10px 40px 0 20px;

}



/* Headings

----------------------------------------------- */

h2, h3 {

margin: 0;

}



/* Posts

----------------------------------------------- */

.date-header {

margin: 1.5em 0 0;

font-weight: normal;

color: #000;

font-size: 100%;

}

.post {

margin: 0 0 1.5em;

padding-bottom: 1.5em;

}

.post-title {

margin: 0;

padding: 0;

font-size: 125%;

font-weight: bold;

line-height: 1.1em;

}

.post-title a, .post-title a:visited, .post-title strong {

text-decoration: none;

color: #040;

font-weight: bold;

}

.post div {

margin: 0 0 .75em;

line-height: 1.3em;

}

p.post-footer {

margin: -.25em 0 0;

color: #cdc;

font-size: 83%;

}



.post-footer .span {

margin-right: .3em;

}

.comment-link {

margin-left: .3em;

}

.post img {

padding: 4px;

}

.post blockquote {

margin: 1em 20px;

}

.post blockquote p {

margin: .75em 0;

}



/* Comments

----------------------------------------------- */

#comments h4 {

margin: 1em 0;

color: #555;

font-size: 120%;

}

#comments h4 strong {

font-size: 110%;

}

#comments-block {

margin: 1em 0 1.5em;

line-height: 1.3em;

}

#comments-block dt {

margin: .5em 0;

}

#comments-block dd {

margin: .25em 0 0;

}

#comments-block dd.comment-footer {

margin: -.25em 0 2em;

line-height: 1.4em;

font-size: 78%;

}

#comments-block dd p {

margin: 0 0 .75em;

}



.deleted-comment {

font-style:italic;

color:gray;

}



.feed-links {

clear: both;

line-height: 2.5em;

}



#blog-pager-newer-link {

float: left;

}



#blog-pager-older-link {

float: right;

}



#blog-pager {

text-align: center;

}



/* Sidebar Content

----------------------------------------------- */

.sidebar h2 {

margin: 1.6em 0 .5em;

padding: 4px 5px;

font-size: 120%;

color: #686e24;

}



.sidebar ul {

margin: 0;

padding: 0;

list-style: none;

}

.sidebar li {

margin: 0;

padding: 0 0 .5em;

}

.sidebar {

color: #000;

line-height:1.3em;

}

.sidebar .widget {

margin-bottom: 1em;

}



.sidebar .widget-content {

margin: 0 5px;

}



/* Footer

----------------------------------------------- */

#footer-wrapper {

clear: both;

text-align: center;

color: #999;

font-size: 85%;

margin-bottom: 10px;

}



#footer-wrapper a {

color: #777;

text-decoration: none;

}



#footer .widget {

margin:.5em;

padding-top: 20px;

font-size: 85%;

line-height: 1.5em;

text-align: left;

}

]]></b:skin>

</head>



<body>
<div id='outer-wrapper'><div id='wrap2'>





<div id='content-wrapper'>



<div id='crosscol-wrapper' style='text-align:center'>

<b:section class='crosscol' id='crosscol' showaddelement='no'/>

</div>



<div id='main-wrapper'>



<div id='header-wrapper'>

<b:section class='header' id='header' maxwidgets='1' showaddelement='no'>
<b:widget id='Header1' locked='true' title='Flowers (Header)' type='Header'>
<b:includable id='main'>

<b:if cond='data:useImage'>
<b:if cond='data:imagePlacement == "REPLACE"'>
<!--Show just the image, no text-->
<div id='header-inner'>
<a expr:href='data:blog.homepageUrl' style='display: block'>
<img expr:alt='data:title' expr:height='data:height' expr:id='data:widget.instanceId + "_headerimg"' expr:src='data:sourceUrl' expr:width='data:width' style='display: block'/>
</a>
</div>
<b:else/>
<!--Show image as background to text-->
<div expr:style='"background-image: url(\"" + data:sourceUrl + "\"); " + "background-repeat: no-repeat; " + "width: " + data:width + "px; " + "height: " + data:height + "px;"' id='header-inner'>
<div class='titlewrapper' style='background: transparent'>
<h1 class='title' style='background: transparent; border-width: 0px'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<data:title/>
<b:else/>
<a expr:href='data:blog.homepageUrl'><data:title/></a>
</b:if>
</h1>
</div>
<div class='descriptionwrapper'>
<p class='description'><span><data:description/></span></p>
</div>
</div>
</b:if>
<b:else/>
<!--No header image -->
<div id='header-inner'>
<div class='titlewrapper'>
<h1 class='title'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<data:title/>
<b:else/>
<a expr:href='data:blog.homepageUrl'><data:title/></a>
</b:if>
</h1>
</div>
<div class='descriptionwrapper'>
<p class='description'><span><data:description/></span></p>
</div>
</div>
</b:if>
</b:includable>
</b:widget>
</b:section>

</div>



<b:section class='main' id='main' showaddelement='no'>
<b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'>
<b:includable id='comments' var='post'>
<div class='comments' id='comments'>
<a name='comments'/>
<b:if cond='data:post.allowComments'>
<h4>
<b:if cond='data:post.numComments == 1'>
1 <data:commentLabel/>:
<b:else/>
<data:post.numComments/> <data:commentLabelPlural/>:
</b:if>
</h4>

<dl id='comments-block'>
<b:loop values='data:post.comments' var='comment'>
<dt class='comment-author' expr:id='"comment-" + data:comment.id'>
<a expr:name='"comment-" + data:comment.id'/>
<b:if cond='data:comment.authorUrl'>
<a expr:href='data:comment.authorUrl' rel='nofollow'><data:comment.author/></a>
<b:else/>
<data:comment.author/>
</b:if>
<data:commentPostedByMsg/>
</dt>
<dd class='comment-body'>
<b:if cond='data:comment.isDeleted'>
<span class='deleted-comment'><data:comment.body/></span>
<b:else/>
<p><data:comment.body/></p>
</b:if>
</dd>
<dd class='comment-footer'>
<span class='comment-timestamp'>
<a expr:href='"#comment-" + data:comment.id' title='comment permalink'>
<data:comment.timestamp/>
</a>
<b:include data='comment' name='commentDeleteIcon'/>
</span>
</dd>
</b:loop>
</dl>

<p class='comment-footer'>
<a expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><data:postCommentMsg/></a>
</p>
</b:if>

<div id='backlinks-container'>
<div expr:id='data:widget.instanceId + "_backlinks-container"'>
<b:if cond='data:post.showBacklinks'>
<b:include data='post' name='backlinks'/>
</b:if>
</div>
</div>
</div>
</b:includable>
<b:includable id='postQuickEdit' var='post'>
<b:if cond='data:post.editUrl'>
<span expr:class='"item-control " + data:post.adminClass'>
<a expr:href='data:post.editUrl' expr:title='data:top.editPostMsg'>
<span class='quick-edit-icon'>&#160;</span>
</a>
</span>
</b:if>
</b:includable>
<b:includable id='main' var='top'>
<!-- posts -->
<div class='blog-posts'>

<b:include data='top' name='status-message'/>

<data:adStart/>
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.dateHeader'>
<h2 class='date-header'><data:post.dateHeader/></h2>
</b:if>
<b:include data='post' name='post'/>
<b:if cond='data:blog.pageType == "item"'>
<b:include data='post' name='comments'/>
</b:if>
</b:loop>
<data:adEnd/>
</div>

<!-- navigation -->
<b:include name='nextprev'/>

<!-- feed links -->
<b:include name='feedLinks'/>
</b:includable>
<b:includable id='backlinkDeleteIcon' var='backlink'>
<span expr:class='"item-control " + data:backlink.adminClass'>
<a expr:href='data:backlink.deleteUrl' expr:title='data:top.deleteBacklinkMsg'>
<span class='delete-comment-icon'>&#160;</span>
</a>
</span>
</b:includable>
<b:includable id='feedLinksBody' var='links'>
<div class='feed-links'>
<data:feedLinksMsg/>
<b:loop values='data:links' var='f'>
<a class='feed-link' expr:href='data:f.url' expr:type='data:f.mimeType' target='_blank'><data:f.name/> (<data:f.feedType/>)</a>
</b:loop>
</div>
</b:includable>
<b:includable id='backlinks' var='post'>
<a name='links'/><h4><data:post.backlinksLabel/></h4>
<b:if cond='data:post.numBacklinks != 0'>
<dl class='comments-block' id='comments-block'>
<b:loop values='data:post.backlinks' var='backlink'>
<div class='collapsed-backlink backlink-control'>
<dt class='comment-title'>
<span class='backlink-toggle-zippy'>&#160;</span>
<a expr:href='data:backlink.url' rel='nofollow'><data:backlink.title/></a>
<b:include data='backlink' name='backlinkDeleteIcon'/>
</dt>
<dd class='comment-body collapseable'>
<data:backlink.snippet/>
</dd>
<dd class='comment-footer collapseable'>
<span class='comment-author'><data:post.authorLabel/> <data:backlink.author/></span>
<span class='comment-timestamp'><data:post.timestampLabel/> <data:backlink.timestamp/></span>
</dd>
</div>
</b:loop>
</dl>
</b:if>
<p class='comment-footer'>
<a class='comment-link' expr:href='data:post.createLinkUrl' expr:id='data:widget.instanceId + "_backlinks-create-link"' target='_blank'><data:post.createLinkLabel/></a>
</p>
</b:includable>
<b:includable id='status-message'>
<b:if cond='data:navMessage'>
<div class='status-msg-wrap'>
<div class='status-msg-body'>
<data:navMessage/>
</div>
<div class='status-msg-border'>
<div class='status-msg-bg'>
<div class='status-msg-hidden'><data:navMessage/></div>
</div>
</div>
</div>
<div style='clear: both;'/>
</b:if>
</b:includable>
<b:includable id='feedLinks'>
<b:if cond='data:blog.pageType != "item"'> <!-- Blog feed links -->
<b:if cond='data:feedLinks'>
<div class='blog-feeds'>
<b:include data='feedLinks' name='feedLinksBody'/>
</div>
</b:if>

<b:else/> <!--Post feed links -->
<div class='post-feeds'>
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.allowComments'>
<b:if cond='data:post.feedLinks'>
<b:include data='post.feedLinks' name='feedLinksBody'/>
</b:if>
</b:if>
</b:loop>
</div>
</b:if>
</b:includable>
<b:includable id='nextprev'>
<div class='blog-pager' id='blog-pager'>
<b:if cond='data:newerPageUrl'>
<span id='blog-pager-newer-link'>
<a class='blog-pager-newer-link' expr:href='data:newerPageUrl' expr:id='data:widget.instanceId + "_blog-pager-newer-link"' expr:title='data:newerPageTitle'><data:newerPageTitle/></a>
</span>
</b:if>

<b:if cond='data:olderPageUrl'>
<span id='blog-pager-older-link'>
<a class='blog-pager-older-link' expr:href='data:olderPageUrl' expr:id='data:widget.instanceId + "_blog-pager-older-link"' expr:title='data:olderPageTitle'><data:olderPageTitle/></a>
</span>
</b:if>

<b:if cond='data:blog.homepageUrl != data:blog.url'>
<a class='home-link' expr:href='data:blog.homepageUrl'><data:homeMsg/></a>
<b:else/>
<b:if cond='data:newerPageUrl'>
<a class='home-link' expr:href='data:blog.homepageUrl'><data:homeMsg/></a>
</b:if>
</b:if>

</div>
<div class='clear'/>
</b:includable>
<b:includable id='commentDeleteIcon' var='comment'>
<span expr:class='"item-control " + data:comment.adminClass'>
<a expr:href='data:comment.deleteUrl' expr:title='data:top.deleteCommentMsg'>
<span class='delete-comment-icon'>&#160;</span>
</a>
</span>
</b:includable>
<b:includable id='post' var='post'>
<div class='post uncustomized-post-template'>
<a expr:name='data:post.id'/>
<b:if cond='data:post.title'>
<h3 class='post-title'>
<b:if cond='data:post.link'>
<a expr:href='data:post.link'><data:post.title/></a>
<b:else/>
<b:if cond='data:post.url'>
<a expr:href='data:post.url'><data:post.title/></a>
<b:else/>
<data:post.title/>
</b:if>
</b:if>
</h3>
</b:if>

<div class='post-header-line-1'/>
<div style='float:left;'>
&lt;script type=&quot;text/javascript&quot;><!--
google_ad_client = "pub-4627435952845482";
google_alternate_color = "FFFFFF";
google_ad_width = 468;
google_ad_height = 15;
google_ad_format = "468x15_0ads_al&quot;;
//2007-04-29: bungaijo.blogspot.com
google_ad_channel = &quot;4753450780";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "2BA94F";
google_color_text = "99FFCC";
google_color_url = "CCFFFF";
//-->
</script&gt;
<script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script&gt;
</div>


<div class='post-body'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>
<div class='post-footer'>
<p class='post-footer-line post-footer-line-1'>
<span class='post-author'>
<b:if cond='data:top.showAuthor'>
<data:top.authorLabel/> <data:post.author/>
</b:if>
</span>

<span class='post-timestamp'>
<b:if cond='data:top.showTimestamp'>
<data:top.timestampLabel/>
<b:if cond='data:post.url'>
<a class='timestamp-link' expr:href='data:post.url' title='permanent link'><data:post.timestamp/></a>
</b:if>
</b:if>
</span>

<span class='post-comment-link'>
<b:if cond='data:blog.pageType != "item"'>

<b:if cond='data:post.allowComments'>
<a class='comment-link' expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><b:if cond='data:post.numComments == 1'>1 <data:top.commentLabel/><b:else/><data:post.numComments/> <data:top.commentLabelPlural/></b:if></a>
</b:if>
</b:if>
</span>

<!-- backlinks -->
<span class='post-backlinks post-comment-link'>
<b:if cond='data:blog.pageType != "item"'>
<b:if cond='data:post.showBacklinks'>
<a class='comment-link' expr:href='data:post.url + "#links"'><data:top.backlinkLabel/></a>
</b:if>
</b:if>
</span>

<span class='post-icons'>
<!-- email post links -->
<b:if cond='data:post.emailPostUrl'>
<span class='item-action'>
<a expr:href='data:post.emailPostUrl' expr:title='data:top.emailPostMsg'>
<span class='email-post-icon'>&#160;</span>
</a>
</span>
</b:if>

<!-- quickedit pencil -->
<b:include data='post' name='postQuickEdit'/>
</span>
</p>

<p class='post-footer-line post-footer-line-2'>
<span class='post-labels'>
<b:if cond='data:post.labels'>
<data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a><b:if cond='data:label.isLast != "true"'>,</b:if>
</b:loop>
</b:if>
<a expr:href='"http://digg.com/submit?phase=2&amp;url=" + data:post.url + "&amp;title=" + data:post.title' target='_blank'>DiggIt!</a>
<a expr:href='"http://del.icio.us/post?url=" + data:post.url + "&amp;title=" + data:post.title' target='_blank'>Del.icio.us it!</a>
</span>
</p>

<p class='post-footer-line post-footer-line-3'/>
<div>&lt;script type=&quot;text/javascript&quot;><!--
google_ad_client = "pub-4627435952845482";
google_ad_output = "textlink";
google_ad_format = "ref_text";
google_cpa_choice = "CAAQyaP2_gEaCBPE4hoUEk7kKLGsuIEBMAA&quot;;
google_ad_channel = "4602336516";
//-->
</script&gt;
<script type=&quot;text/javascript&quot; src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script&gt;
<p>
<script type=&quot;text/javascript&quot;><!--
google_ad_client = "pub-4627435952845482";
google_ad_output = "textlink";
google_ad_format = "ref_text";
google_cpa_choice = "CAAQidTQgAIaCEapPfRcsfp6KN2uuIEBMAA&quot;;
google_ad_channel = "4602336516";
//-->
</script&gt;
<script type=&quot;text/javascript&quot; src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script&gt;
<p>
<script type=&quot;text/javascript&quot;><!--
google_ad_client = "pub-4627435952845482";
google_ad_output = "textlink";
google_ad_format = "ref_text";
google_cpa_choice = "CAAQhOSQ_QEaCF-OxeqEMuv-KKjntoQBMAA&quot;;
google_ad_channel = "4602336516";
//-->
</script&gt;
<script type=&quot;text/javascript&quot; src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script&gt;</div>
</div>
</div>
</b:includable>
</b:widget>
<b:widget id='Blog2' locked='false' title='Blog Posts' type='Blog'>
<b:includable id='comments' var='post'>
</b:includable>
<b:includable id='postQuickEdit' var='post'>
</b:includable>
<b:includable id='main'>
<!-- *****************http://hoctro.blogspot.com*****Jan,2007****************** -->
<!-- *****************Related Articles by Labels - Take Two****************** -->
<!--<b:if cond='data:blog.pageType == "item"'>-->
<div class='widget-content'>
<h2>Related Articles by Labels</h2>
<div id='data2007'/><br/><br/>
<div id='hoctro'>Widget by <u><a href='http://hoctro.blogspot.com'>Hoctro</a>
</u></div>
<div id='bikinblogger'>diconto oleh <u><a href='http://bikinblogger.blogspot.com'>Bikinblogger</a>
</u></div>
<script type='text/javascript'>

var homeUrl3 = &quot;bungaijo.blogspot.com&quot;;
var maxNumberOfPostsPerLabel = 4;
var maxNumberOfLabels = 10;

<b:if cond='data:blog.pageType == "item"'>
maxNumberOfPostsPerLabel = 100;
</b:if>
<b:if cond='data:blog.pageType == "item"'>
maxNumberOfLabels = 3;
</b:if>

function listEntries10(json) {
var ul = document.createElement(&#39;ul');
var maxPosts = (json.feed.entry.length &lt;= maxNumberOfPostsPerLabel) ?
json.feed.entry.length : maxNumberOfPostsPerLabel;
for (var i = 0; i &lt; maxPosts; i++) {
var entry = json.feed.entry[i];
var alturl;

for (var k = 0; k &lt; entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
alturl = entry.link[k].href;
break;
}
}
var li = document.createElement('li');
var a = document.createElement('a');
a.href = alturl;

var txt = document.createTextNode(entry.title.$t);
a.appendChild(txt);
li.appendChild(a);
ul.appendChild(li);
}

for (var l = 0; l < json.feed.link.length; l++) {
if (json.feed.link[l].rel == &#39;alternate') {
var raw = json.feed.link[l].href;
var label = raw.substr(homeUrl3.length+21);
var k;
for (k=0; k&lt;20; k++)
label = label.replace("%20", " ");
var txt = document.createTextNode(label);
var h = document.createElement('h4');
h.appendChild(txt);
var div1 = document.createElement('div');
div1.appendChild(h);
div1.appendChild(ul);
document.getElementById('data2007').appendChild(div1);
}
}
}

function search10(query, label) {

var script = document.createElement(&#39;script&#39;);
script.setAttribute(&#39;src&#39;, 'http://' + query + '/feeds/posts/default/-/&#39;
+ label +
'?alt=json-in-script&amp;callback=listEntries10&#39;);
script.setAttribute(&#39;type', 'text/javascript&#39;);
document.documentElement.firstChild.appendChild(script);
}

var labelArray = new Array();
var numLabel = 0;

<b:loop values='data:posts' var='post'>
<b:loop values='data:post.labels' var='label'>
textLabel = &quot;<data:label.name/>&quot;;

var test = 0;
for (var i = 0; i &lt; labelArray.length; i++)
if (labelArray[i] == textLabel) test = 1;
if (test == 0) {
labelArray.push(textLabel);
var maxLabels = (labelArray.length &lt;= maxNumberOfLabels) ?
labelArray.length : maxNumberOfLabels;

if (numLabel &lt; maxLabels) {
search10(homeUrl3, textLabel);
numLabel++;
}
}
</b:loop>
</b:loop>
</script>
</div>
<!--</b:if>-->
</b:includable>
<b:includable id='backlinkDeleteIcon' var='backlink'>
</b:includable>
<b:includable id='feedLinksBody' var='links'>
</b:includable>
<b:includable id='backlinks' var='post'>
</b:includable>
<b:includable id='status-message'>
</b:includable>
<b:includable id='feedLinks'>
</b:includable>
<b:includable id='nextprev'>
</b:includable>
<b:includable id='commentDeleteIcon' var='comment'>
</b:includable>
<b:includable id='post' var='post'>
</b:includable>
</b:widget>
</b:section>

</div>



<div id='sidebar-wrapper'>



<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='Profile1' locked='false' title='About Me' type='Profile'>
<b:includable id='main'>
<b:if cond='data:title != ""'>
<h2><data:title/></h2>
</b:if>
<div class='widget-content'>
<b:if cond='data:team == "true"'> <!-- team blog profile -->
<ul>
<b:loop values='data:authors' var='i'>
<li><a expr:href='data:i.userUrl'><data:i.display-name/></a></li>
</b:loop>
</ul>

<b:else/> <!-- normal blog profile -->

<b:if cond='data:photo.url != ""'>
<a expr:href='data:userUrl'><img class='profile-img' expr:alt='data:photo.alt' expr:height='data:photo.height' expr:src='data:photo.url' expr:width='data:photo.width'/></a>
</b:if>

<dl class='profile-datablock'>
<dt class='profile-data'><data:displayname/></dt>

<b:if cond='data:showlocation == "true"'>
<dd class='profile-data'><data:location/></dd>
</b:if>

<b:if cond='data:aboutme != ""'><dd class='profile-textblock'><data:aboutme/></dd></b:if>
</dl>
<a class='profile-link' expr:href='data:userUrl'><data:viewProfileMsg/></a>
</b:if>

<b:include name='quickedit'/>
</div>
</b:includable>
</b:widget>
<b:widget id='BlogArchive1' locked='false' title='Blog Archive' type='BlogArchive'>
<b:includable id='main'>
<b:if cond='data:title'>
<h2><data:title/></h2>
</b:if>
<div class='widget-content'>
<div id='ArchiveList'>
<div expr:id='data:widget.instanceId + "_ArchiveList"'>
<b:if cond='data:style == "HIERARCHY"'>
<b:include data='data' name='interval'/>
</b:if>
<b:if cond='data:style == "FLAT"'>
<b:include data='data' name='flat'/>
</b:if>
<b:if cond='data:style == "MENU"'>
<b:include data='data' name='menu'/>
</b:if>
</div>
</div>
<b:include name='quickedit'/>
</div>
</b:includable>
<b:includable id='flat' var='data'>
<ul>
<b:loop values='data:data' var='i'>
<li class='archivedate'>
<a expr:href='data:i.url'><data:i.name/></a> (<data:i.post-count/>)
</li>
</b:loop>
</ul>
</b:includable>
<b:includable id='menu' var='data'>
<select expr:id='data:widget.instanceId + "_ArchiveMenu"'>
<option value=''><data:title/></option>
<b:loop values='data:data' var='i'>
<option expr:value='data:i.url'><data:i.name/> (<data:i.post-count/>)</option>
</b:loop>
</select>
</b:includable>
<b:includable id='interval' var='intervalData'>
<b:loop values='data:intervalData' var='i'>
<ul>
<li expr:class='"archivedate " + data:i.expclass'>
<b:include data='i' name='toggle'/>
<a class='post-count-link' expr:href='data:i.url'><data:i.name/></a>
(<span class='post-count'><data:i.post-count/></span>)
<b:if cond='data:i.data'>
<b:include data='i.data' name='interval'/>
</b:if>
<b:if cond='data:i.posts'>
<b:include data='i.posts' name='posts'/>
</b:if>
</li>
</ul>
</b:loop>
</b:includable>
<b:includable id='toggle' var='interval'>
<b:if cond='data:interval.toggleId'>
<b:if cond='data:interval.expclass == "expanded"'>
<a class='toggle' expr:href='data:widget.actionUrl + "&amp;action=toggle" + "&dir=close&amp;amp;amp;toggle=" + data:interval.toggleId + "&toggleopen=" + data:toggleopen'>
<span class='zippy toggle-open'>&#9660; </span>
</a>
<b:else/>
<a class='toggle' expr:href='data:widget.actionUrl + "&amp;action=toggle" + "&dir=open&toggle=" + data:interval.toggleId + "&toggleopen=" + data:toggleopen'>
<span class='zippy'>&#9658; </span>
</a>
</b:if>
</b:if>
</b:includable>
<b:includable id='posts' var='posts'>
<ul class='posts'>
<b:loop values='data:posts' var='i'>
<li><a expr:href='data:i.url'><data:i.title/></a></li>
</b:loop>
</ul>
</b:includable>
</b:widget>
</b:section>

</div>



<!-- spacer for skins that want sidebar and main to be the same height-->

<div class='clear'>&#160;</div>



</div> <!-- end content-wrapper -->



<div id='footer-wrapper'>

Original design by <a href='http://johnoxton.co.uk/'>John Oxton</a> :: Adapted by <a href='http://blogger-templates.blogspot.com'>Blogger Templates</a>:: Terbikin oleh <a href='http://bikinblogger.blogspot.com'>Bikinblogger</a>



</div>



</div></div> <!-- end outer-wrapper -->

</body>

</html>





..lir ilir
lir ilir tandure wis sumilir tak ijo royo-royo tak sengguh temanten anyar...

Langganan

Suka dengan postingan diatas ? Langganan aja lewat email, gak perlu buka internet bisa baca artikel terbaru di bikinblogger deh...caranya gimana ? Ya tinggal klik di sini
 
Copyright © 2014 Bikin Blogger Share on Blogger Template Free Download.