Thứ Sáu, 30 tháng 3, 2012

Membuat Static Page pada Template Magazine

Postingan kali ini saya tulis khusus untuk pengguna template blogger magazine buatan saya dan mungkin bisa juga dipakai untuk template lain yang tampilannya magazine. Banyak sekali yang bertanya lewat kotak komentar maupun email tentang bagaimana menambahkan halaman statis (static page) pada template tersebut. Mohon maaf karena kesibukan di dunia nyata saya tidak sempat bereksperimen untuk menambahkan fitur static page, baru sekarang saya mengutak-atik template dan menambahkan statc page pada template-template magazine tersebut.

Tutorial membuat static page pada template blogger style magazine ini sudah saya coba dan terapkan disini, dan yang jelas pasti akan saya bagikan penemuan saya ini kepada para teman-teman blogger pengguna template magazine. Oke langsung saja pada cara pembuatannya :
  1. Langkah awal login ke blogger dengan Akun anda.
  2. Masuk ke Template kemudian klik Edit HTML
  3. Jangan lupa untuk mencentang kotak expand widget templates, dan untuk berjaga-jaga backup dulu template Anda.
  4. Kemudian cari kode seperti dibawah ini, letaknya dibawah ]]></b:skin> :
    <style type='text/css'>
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    #main-wrapper {width: 370px;padding-left:10px;}
    h2.date-header, .post-timestamp, .post-body, .post-footer, .feed-links {display:none}
    .post h3 {background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzV7xEzp4uLw-3ZlpjQ4yq9w5D_u_F7JzZ5NFxvieJWCML7MHwfosBkc3KpzcjQc21pYn9jqRHSHXvSLmADMtvD8ZYn9svwayiVUH6FdXxwS3bWKnQ7zDFNTtXZpPNXtfcJ5hBSwIlxRE/s1600/arrowList_2.gif) no-repeat 0px 3px;font:normal 12px Arial;margin:0 0 0 2px;padding:4px 6px 4px 15px;line-height:1.3em;position:relative;}
    .post h3 a, .post h3 a:visited, .post h3 strong {font-weight:normal}
    .post h3 strong, .post h3 a:hover {color:#FF8000;}
    .post {border:none}
    .post {border-bottom:1px dotted silver;margin:0px;padding:0px;}
    #blog-pager {font:normal 11px Arial;text-align:left;margin:6px 0 1px 0;padding:7px 0px 7px 0px;}
    </b:if>
    </style>
  5. Yang harus Anda perhatikan adalah kode diatas yang berwarna merah, kode lain (yang berwarna hitam) berbeda-beda tiap template. Ganti kode warna merah dengan kode berikut :
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    <style type='text/css'>

    ...................................
    ...................................
    ...................................
    </style>
    </b:if></b:if>
    Sehingga susunannya akan seperti ini :
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    <style type='text/css'>
    #main-wrapper {width: 370px;padding-left:10px;}
    h2.date-header, .post-timestamp, .post-body, .post-footer, .feed-links {display:none}
    .post h3 {background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzV7xEzp4uLw-3ZlpjQ4yq9w5D_u_F7JzZ5NFxvieJWCML7MHwfosBkc3KpzcjQc21pYn9jqRHSHXvSLmADMtvD8ZYn9svwayiVUH6FdXxwS3bWKnQ7zDFNTtXZpPNXtfcJ5hBSwIlxRE/s1600/arrowList_2.gif) no-repeat 0px 3px;font:normal 12px Arial;margin:0 0 0 2px;padding:4px 6px 4px 15px;line-height:1.3em;position:relative;}
    .post h3 a, .post h3 a:visited, .post h3 strong {font-weight:normal}
    .post h3 strong, .post h3 a:hover {color:#FF8000;}
    .post {border:none}
    .post {border-bottom:1px dotted silver;margin:0px;padding:0px;}
    #blog-pager {font:normal 11px Arial;text-align:left;margin:6px 0 1px 0;padding:7px 0px 7px 0px;}
    </style>
    </b:if></b:if>
  6. Masih pada posisi Edit HTML, scroll jauh ke bawah temukan kode berikut ini :
        <div class='post-body entry-content' expr:id='&quot;post-body-&quot; + data:post.id'>
    <div id='artikel'>
          <data:post.body/>
    </div>
          <div style='clear: both;'/> <!-- clear for photos floats -->
        </div>
  7. Kode yang saya cetak tebal diatas, tiap template berbeda-beda, setelah ketemu ganti dengan kode di bawah ini :
        <div class='post-body entry-content' expr:id='&quot;post-body-&quot; + data:post.id'>
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
    <div expr:id='&quot;summary&quot; + data:post.id'><data:post.body/></div>
    <script type='text/javascript'>createSummaryAndThumb(&quot;summary<data:post.id/>&quot;);</script>
    </b:if>
    </b:if>
    <b:if cond='data:blog.pageType == &quot;item&quot;'><data:post.body/></b:if>
    <b:if cond='data:blog.pageType == &quot;static_page&quot;'><data:post.body/></b:if>
          <div style='clear: both;'/> <!-- clear for photos floats -->
        </div>
  8. Terakhir Save Templates, langkah membuat static page selesai.
Sebenarnya sampai pada langkah ini static page (halaman statis) pada template Anda sudah muncul. Tapi biasanya widget yang ada di tengah atau disebelah postingan terbaru akan nampak pada halaman statis. Untuk menghilangkan widget tersebut dari halaman statis ikuti langkah di bawah ini :
  1. Pada posisi Edit HTML (centang expand widget templates) cari dulu ID widget yang ikut muncul pada halaman statis. Di bawah ini adalah contoh dari ID widget (perhatikan kode yang dicetak tebal)
    <b:section class='sidebarleft' id='sidebarleft' preferred='yes'>
    Sebagai contoh saya ambil dari template Johny Simple Magazine 2, widget Adsense dan World News mempunyai ID : sidebarleft
  2. Setelah itu cari kode <div id='sidebarleft-wrapper'>, kemudian tambahkan kode berikut ini diatasnya :
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
  3. Scroll ke bawah sampai Anda menemukan kode </div> penutup dari <div id='sidebarleft-wrapper'>. Kemudian letakkan kode </b:if> di bawahnya sebagai penutup. Susunannya seperti ini :
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
          <div id='sidebarleft-wrapper'>
    ........................................................
    ........................................................
    ........................................................
        </div>
    </b:if>
  4. Jika Anda ingin format timestamp tidak tampak pada halaman statis, cari kode di bawah ini :
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    <span class='post-timestamp'><data:post.timestamp/></span>
    </b:if>
  5. Ganti dengan kode berikut :
    <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
    <b:if cond='data:blog.pageType != &quot;item&quot;'>
    <span class='post-timestamp'><data:post.timestamp/></span>
    </b:if>
    </b:if>
  6. Terakhir Save Templates, langkah membuat statis page untuk template magazine sudah selesai dan lihat hasilnya.
Langkah-langkah diatas saya khususkan bagi para pengguna template magazine buatan saya, seperti Johny Simple Magazine 2, Johny Magazine, Johny Magazine 2 Light, Johny Portal dan Johny Portal 2, Mas Paper Template, Johny Papers Magazine. Silahkan Anda coba dulu jika masih ada kesulitan bisa ditanyakan lewat kotak komentar yang ada di bawah. Demikian tutorial singkat kali ini, selamat mencoba dan semoga bermanfaat.

Thứ Tư, 28 tháng 3, 2012

Membuat Related Post Thumbnail dan Kotak Feedburner

Artikel ini menjawab pertanyaan beberapa teman blogger yang ingin membuat fitur Related Post Thumbnail sekaligus dengan kotak Feedburner. Fitur related post thumbnail dan kotak feedburner ini menjadi satu bagian utuh dan letaknya biasanya di bawah postingan. Sebelumnya saya juga pernah membahasnya pada tutorial menambah dua kolom di bawah postingan, tapi hasilnya terlalu sederhana dan mungkin kurang menarik bagi minat pengunjung untuk berlama-lama di blog, apalagi perkembangan blogger sekarang ini, banyak sekali tutorial baru dengan menggunakan jQuery sehingga blogger menjadi salah satu CMS yang tidak bisa dipandang sebelah mata.

related post feedburner

Sebenarnya saya masih pengin berlama-lama ngobrol ngalor ngidul, tapi karena nanti malam ada pertandingan bola antara Barcelona versus AC Milan mesti cepet-cepet tidur biar bisa bangun nanti malem. Oke langsung saja, saya akan berikan tutorial untuk membuatnya, contohnya seperti gambar diatas demonya bisa dilihat disini di bawah postingan :
  1. Pertama Anda mesti login ke blogger dulu
  2. Kemudian klik Template > pilih Edit HTML centang expand widget templates
  3. Jangan lupa backup dulu templatenya, untuk berjaga-jaga jika nanti ada kesalahan dalam pengeditan.
  4. Setelah itu, letakkan kode berikut di atas kode ]]></b:skin>
    #related{background:#222; border:1px solid #000; border-bottom:1px solid #444; border-right:1px solid #444;text-shadow:0 1px 0 #000;margin:0 0 5px;padding:10px}
    ul#related-posts{font:bold 11px Arial;list-style:none;text-transform:none;margin:10px 0;padding:0}
    #related .related-posts{font-weight:400;width:50%;float:right}
    #related .related-posts p{margin:0}
    ul#related-posts li{float:left;height:auto;list-style-type:none;margin:0 5px;padding:2px 1px}
    *html ul.rp#related-posts li{margin:0 13px}
    ul#related-posts li a{-moz-box-shadow:0 1px 2px rgba(0,0,0,0.15);border:2px solid #333;display:block;height:72px;position:relative;width:72px;color:#eaeaea;text-decoration:none;text-shadow:0 1px 0 #000}
    ul#related-posts li .overlay{height:66px;line-height:16px;position:absolute;width:66px;z-index:10;padding:6px 0 0 6px}
    ul#related-posts li a:hover .overlay{background:#000;display:block!important;opacity:0.7}
    ul#related-posts li img{bottom:0;padding:0!important}
    ul#related-posts li a:hover{-moz-box-shadow:0 1px 3px rgba(0,0,0,0.25)}
    #related .subscribe{width:43%;float:left;color:#bdbdbd;}
    #related .subscribe p.intro{font-weight:400}
    #related .subscribe p.feed{margin-bottom:10px;font-weight:700;padding-left:21px;background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifXhzoN0XWz8CjD61jNf7KrbOd84Xye5aRLj1NlebIysTmAJMQhIzeXY64SPlrgEhp9BSwbQI6PwLsJ_qlPxs5P0kB3kR6zCi7R48q0blji9sryXu0YPXk96uq420xRdWlwsZhqm8fSQE/) 0 50% no-repeat;vertical-align:middle}
    .clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden}
    .clearfix{display:inline-block}
  5. Masih pada posisi Edit HTML, letakkan kode di bawah ini setelah <data:post.body/> (jika ada 2 atau 3 pilih kode yang terakhir)
    <b:if cond='data:blog.pageType == &quot;item&quot;'>
    <div class='clearfix' id='related'>
    <div class='related-posts'>
    <p>Related Articles</p>
    <script type='text/javascript'>
    var defaultnoimage=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgO6wG1xPQyXQ74IvGt0NIFy7WmjQP6di8_6iZxDqBTmD-0DFTPsVjdVxSE7MDJtPLb-b916EkfuVfgahyZRNsvTqTDBt6JKOBj-XNLxpIw5sXC-qxPg03C-cXeh4CKSGkLjPZIZoqnajA/s1600/no+image.jpg&quot;;
    var maxresults=6;
    </script>
    <script src='http://yourjavascript.com/1198561349/relatedimg.js' type='text/javascript'/>
    <b:loop values='data:post.labels' var='label'>
    <b:if cond='data:label.isLast != &quot;true&quot;'>
    </b:if>
    <script expr:src='&quot;/feeds/posts/default/-/&quot; + data:label.name + &quot;?alt=json-in-script&amp;callback=related_results_labels_thumbs&amp;max-results=6&quot;' type='text/javascript'/>
    </b:loop>

    <script type='text/javascript'>
    removeRelatedDuplicates_thumbs();
    printRelatedLabels_thumbs(&quot;<data:post.url/>&quot;);
    </script>                
    </div>

    <div class='subscribe'>
    <p class='intro'>If you enjoyed this article just <a href='http://feeds.feedburner.com/JohnyTemplate' target='_blank' title='feedburner'>
    <b>click here</b></a>, or subscribe to receive more great content just like it.</p>
    <p class='feed'><a href='http://johnytemplate.blogspot.com/feeds/posts/default'>Subscribe via RSS Feed</a></p>
    <form action='http://feedburner.google.com/fb/a/mailverify' method='post' onsubmit='window.open(&apos;http://feedburner.google.com/fb/a/mailverify?uri=JohnyTemplate&apos;, &apos;popupwindow&apos;, &apos;scrollbars=yes,width=550,height=520&apos;);return true' target='popupwindow'>
    <input name='uri' type='hidden' value='JohnyTemplate'/>
    <input name='loc' type='hidden' value='en_US'/>
    <input id='botsub' name='email' onblur='if (this.value == &quot;&quot;) {this.value = &quot;Enter your email&quot;;}' onfocus='if (this.value == &quot;Enter your email&quot;) {this.value = &quot;&quot;;}' type='text' value='Enter your email....'/>
    <input id='botsubbutton' type='submit' value='Submit'/><br/>
    <small>Your information will not be shared. Ever.</small><br/>
    <a href='http://feeds.feedburner.com/JohnyTemplate'><img alt='' height='26' src='http://feeds.feedburner.com/~fc/JohnyTemplate?bg=ceaa6c&amp;fg=444444&amp;anim=1' style='border:0' width='88'/></a>
    </form>
    </div>
    </div>
    </b:if>
    Keterangan :
    Warna biru : ganti dengan alamat feed anda.
    Warna merah : ganti dengan URL anda.
  6. Terakhir Save Templates, dan lihat hasilnya di bawah postingan Anda.
Tutorial membuat fitur related post thumbnail dengan feedburner diatas cocok untuk blog yang mempunyai warna background atau latar hitam. Tapi jika blog Anda mempunyai warna latar putih atau warna cerah anda tinggal modifikasi pada kode CSS nomer 4 diatas. Demikian tutorial kali ini selamat mencoba dan semoga bermanfaat.

Thứ Hai, 26 tháng 3, 2012

Cara Daftar di Technorati

Pertama jangan kasih komentar untuk artikel ini ya, ini hanya artikel agar diterima di Technorati dengan menyertakan claim token dari situs itu dan kalau sudah keterima lagi paling juga saya hapus post ini. Daripada nanti isinya cuma kode claim token aja mending saya repost tulisan ini. Dulu waktu blog ini beralamat http://www.maskolis.co.cc sudah keterima di Technorati, sekarang setelah domain co.cc didepak saya kembalikan blog ini ke blogspot, jadi Technoratinya juga ikut ilang.

Ngomong-ngomong apa Anda sudah mengenal tentang Technorati ? Bagi yang belum mengenalnya, saya akan kasih penjelasan singkat tentang Technorati, Technorati adalah sebuah direktori terbesar saat ini dan memiliki fasilitas/fungsi yang cukup besar yaitu sebagai BlogSearch, Tags Aggregator dan Online Bookmarks. Dengan mendaftar di Technorati, akan meningkatkan traffic pengunjung ke blog kita, dan blog/website yang kita kelola lebih dapat dikenal oleh blogger lain, dan ini pun bisa disebut sebagai salah satu strategi SEO untuk blog/website kita.

Dengan mendaftarkan blog kita di Technorati, kita juga bisa mengetahui situs atau blog mana saja yang memasang link ke blog kita. Untuk mempersingkat waktu, ikuti langkah-langkah di bawah ini untuk mendaftar di Technorati :
  • Masuklah ke alamat Technorati.com
  • lalu Klik menu Join (seperti gambar dibawah ini :
3S6YXY4VKCDR
  • Isilah data secara lengkap lalu klik join
  • Setelah itu, akan muncul sebuah confirmation code. Lalu cek email anda yang telah didaftarkan di technorati tadi, lalu klik link yang telah diberikan melalui email anda.
  • Setelah itu masukan url blog Anda (seperti gambar dibawah ini), dan kemudian klik Begin Claim.
3S6YXY4VKCDR
  • Setelah itu, Anda tinggal menunggu Proses Claim, dan lakukan Complete Claim seperti gambar dibawah ini :
  • Anda akan dihadapkan pada Form seperti ini :
3S6YXY4VKCDR
  • Salin kode berikut dan publikasikannya dalam sebuah posting di blog Anda. Technorati harus dapat menemukan kode klaim dalam blog Anda via feed (RSS atau Atom). Caranya adalah dengan menerbitkan posting baru dan menyisipkan kode klaim di dalamnya.
  • Untuk Kode Klaim Blog/Website ini adalah : 3S6YXY4VKCDR
  • Dan sesudah itu, Anda tinggal klik Complete Claim
  • Berikutnya, Anda tinggal menunggu Kode Klaim yang sudah di masukkan dalam Postingan Anda di periksa oleh Technorati, untuk memastikan bahwa memang benar alamat URL yang diberikan, benar-benar milik Anda.
  • Dan yang terakhir (karena blog inipun belum terdaftar di Technorati), anda buat satu link dengan kode seperti dibawah ini, dan tampilkan di blog anda.
<a href=”http://technorati.com/faves?sub=addfavbtn&add=http://url blog anda”><img alt=”3S6YXY4VKCDR” src=”http://static.technorati.com/pix/fave/btn-fave2.png”/></a>
”3S6YXY4VKCDR”
  • Gantilah kode url blog anda diatas dengan kode URL anda.
Itu tadi sedikit informasi mengenai Cara Mendaftar di Technorati, semoga bermanfaat bagi Anda semua. Terimakasih.

Masalah Threaded Comment Pada Template Blogger Lama

Berawal dari pertanyaan teman blogger dari Malaysia Haz Issac tentang Threaded Comments yang ada pada salah satu template buatan saya (Mas paper), yang menanyakan bagaimana caranya agar Threaded Comments pada template bisa berfungsi? Setelah mengganti beberapa kode script yang ada, tampilan komentar sudah ada fungsi reply dan delete, tapi permasalahan yang terjadi kemudian fitur reply tidak berfungsi normal, atau ketika diklik hanya ada tulisan javascript pada bagian bawah browser.

threaded comments

Terus terang kebanyakan dari template yang saya buat masih menggunakan fitur blogger lama, sehingga secara default belum dilengkapi fungsi reply atau Threaded Comments yang sudah dikembangkan oleh Blogger baru-baru ini. Kali ini saya akan mencoba memberikan satu tutorial bagi para pengguna template blogger lama (bukan klasik), bagaimana cara mengatasi permasalahan Threaded Comment khususnya bagi mereka yang sudah mengganti kode dengan menambahkan Threaded Comments tapi fitur reply tidak berfungsi normal.

Langkah Pertama

Cara atau metode pertama ini harus Anda lakukan agar Threaded Coments pada blog Anda berfungsi.
  1. Login ke blogger dengan akun Anda
  2. Pada dashboard pilih blog yang akan diberikan Threaded Comments (blogger new interface)
  3. Setelah itu masuk ke Settings >> Posts and Comments
  4. Kemudian pilih Comment Location setting pada posisi Embedded.
  5. Kembali lagi ke Setting, kali ini klik Other, pada Allow blog post pada baris pertama pilih posisi Full.
  6. Terakhir Save, kemudian lihat hasilnya apakah Threaded Comments sudah ada pada blog Anda. Jika belum ikuti langkah kedua di bawah ini.
Langkah Kedua
  1. Masuk ke Template kemudian pilih Edit HTML.
  2. Jangan lupa untuk centang Expand Widget Templates. Untuk berjaga-jaga agar tidak terjadi kesalahan dalam pengeditan nantinya, lebih baik backup dulu template Anda.
  3. Kemudian cari kode di bawah ini :
            <b:if cond='data:blog.pageType == &quot;static_page&quot;'>
    <b:include data='post' name='comments'/>
    </b:if>
    <b:if cond='data:blog.pageType == &quot;item&quot;'>
    <b:include data='post' name='comments'/>
    </b:if>
  4. Setelah ketemu ganti dengan kode berikut :
            <b:if cond='data:blog.pageType == &quot;static_page&quot;'>
    <b:if cond='data:post.showThreadedComments'>
    <b:include data='post' name='threaded_comments'/>
    <b:else/>
    <b:include data='post' name='comments'/>
    </b:if>
    </b:if>
    <b:if cond='data:blog.pageType == &quot;item&quot;'>
    <b:if cond='data:post.showThreadedComments'>
    <b:include data='post' name='threaded_comments'/>
    <b:else/>
    <b:include data='post' name='comments'/>
    </b:if>
    </b:if>
  5. Terakhir Save template, lihat dulu hasilnya.
Biasanya setelah Anda melakukan langkah kedua ini, Threaded Comments sudah ada pada blog Anda, tapi harus dicek satu persatu fungsinya. Permasalahan yang sering muncul adalah banyak sekali template yang masih menggunakan script blogger classic sehingga fitur reply (balas) tidak berfungsi normal. Jika fungsi Reply tidak berjalan, ikuti langkah ketiga berikut ini :

Langkah Ketiga

Langkah ini hanya dilakukan jika fungsi Reply tidak berjalan atau biasanya hanya keluar tulisan javascript pada browser bawah. Jika pada langkah kedua Threaded Comments sudah berfungsi normal langkah ini tinggalkan saja.
  1. Masih pada posisi Edit HTML (centang Expand Widget Templates), cari kode di bawah ini :
    <script type='text/javascript'>
    (function() {
    var items = <data:post.commentJso/>;
    var msgs = <data:post.commentMsgs/>;
    var postId = &#39;<data:post.id/>&#39;;
    var feed = &#39;<data:post.commentFeed/>&#39;;
    var authorName = &#39;<data:post.author/>&#39;;
    var authorUrl = &#39;<data:post.authorUrl/>&#39;;
    var blogId = &#39;<data:top.id/>&#39;;
    var baseUri = &#39;<data:post.commentBase/>&#39;;

    // <![CDATA[
    feed += '?alt=json&v=2&orderby=published&reverse=false&max-results=50';
    var cursor = null;
    if (items && items.length > 0) {
    cursor = parseInt(items[items.length - 1].timestamp) + 1;
    }

    var bodyFromEntry = function(entry) {
    if (entry.gd$extendedProperty) {
    for (var k in entry.gd$extendedProperty) {
    if (entry.gd$extendedProperty[k].name == 'blogger.contentRemoved') {
    return '<span class="deleted-comment">' + entry.content.$t + '</span>';
    }
    }
    }
    return entry.content.$t;
    }

    var parse = function(data) {
    cursor = null;
    var comments = [];
    if (data && data.feed && data.feed.entry) {
    for (var i = 0, entry; entry = data.feed.entry[i]; i++) {
    var comment = {};
    // comment ID, parsed out of the original id format
    var id = /blog-(\d+).post-(\d+)/.exec(entry.id.$t);
    comment.id = id ? id[2] : null;
    comment.body = bodyFromEntry(entry);
    comment.timestamp = Date.parse(entry.published.$t) + '';
    if (entry.author && entry.author.constructor === Array) {
    var auth = entry.author[0];
    if (auth) {
    comment.author = {
    name: (auth.name ? auth.name.$t : undefined),
    profileUrl: (auth.uri ? auth.uri.$t : undefined),
    avatarUrl: (auth.gd$image ? auth.gd$image.src : undefined)
    };
    }
    }
    if (entry.link) {
    if (entry.link[2]) {
    comment.link = comment.permalink = entry.link[2].href;
    }
    if (entry.link[3]) {
    var pid = /.*comments\/default\/(\d+)\?.*/.exec(entry.link[3].href);
    if (pid && pid[1]) {
    comment.parentId = pid[1];
    }
    }
    }
    comment.deleteclass = 'item-control blog-admin';
    if (entry.gd$extendedProperty) {
    for (var k in entry.gd$extendedProperty) {
    console.log(entry.gd$extendedProperty[k].name + ' - ' + entry.gd$extendedProperty[k].value);
    if (entry.gd$extendedProperty[k].name == 'blogger.itemClass') {
    comment.deleteclass += ' ' + entry.gd$extendedProperty[k].value;
    }
    }
    }
    comments.push(comment);
    }
    }
    return comments;
    };

    var paginator = function(callback) {
    if (hasMore()) {
    var url = feed;
    if (cursor) {
    url += '&published-min=' + new Date(cursor).toISOString();
    }
    window.bloggercomments = function(data) {
    var parsed = parse(data);
    cursor = parsed.length < 50 ? null
    : parseInt(parsed[parsed.length - 1].timestamp) + 1
    callback(parsed);
    window.bloggercomments = null;
    }
    url += '&callback=bloggercomments';
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    document.getElementsByTagName('head')[0].appendChild(script);
    }
    };
    var hasMore = function() {
    return !!cursor;
    };
    var getMeta = function(key, comment) {
    if ('iswriter' == key) {
    var matches = !!comment.author
    && comment.author.name == authorName
    && comment.author.profileUrl == authorUrl;
    return matches ? 'true' : '';
    } else if ('deletelink' == key) {
    return baseUri + '/delete-comment.g?blogID=' + blogId + '&postID=' + comment.id;
    } else if ('deleteclass' == key) {
    return comment.deleteclass;
    }
    return '';
    };

    var replybox = null;
    var replyUrlParts = null;
    var replyParent = undefined;

    var onReply = function(commentId, domId) {
    if (replybox == null) {
    // lazily cache replybox, and adjust to suit this style:
    replybox = document.getElementById('comment-editor');
    if (replybox != null) {
    replybox.height = '250px';
    replybox.style.display = 'block';
    replyUrlParts = replybox.src.split('#');
    }
    }
    if (replybox && (commentId !== replyParent)) {
    document.getElementById(domId).insertBefore(replybox, null);
    replybox.src = replyUrlParts[0]
    + (commentId ? '&parentID=' + commentId : '')
    + '#' + replyUrlParts[1];
    replyParent = commentId;
    }
    };

    var tok = 'comment-form_';
    var hash = window.location.hash || '';
    var startThread = hash.indexOf(tok) == 1 ? hash.substring(tok.length + 1) : undefined;

    // Configure commenting API:
    var configJso = {
    'maxDepth': 2
    };
    var provider = {
    'id': postId,
    'data': items,
    'loadNext': paginator,
    'hasMore': hasMore,
    'getMeta': getMeta,
    'onReply': onReply,
    'rendered': true,
    'initReplyThread': startThread,
    'config': configJso,
    'messages': msgs
    };

    var render = function() {
    if (window.goog && window.goog.comments) {
    var holder = document.getElementById('comment-holder');
    window.goog.comments.render(holder, provider);
    }
    };

    // render now, or queue to render when library loads:
    if (window.goog && window.goog.comments) {
    render();
    } else {
    window.goog = window.goog || {};
    window.goog.comments = window.goog.comments || {};
    window.goog.comments.loadQueue = window.goog.comments.loadQueue || [];
    window.goog.comments.loadQueue.push(render);
    }
    })();
    // ]]>
    </script>
  2. Setelah ketemu ganti dengan kode berikut :
    <script type='text/javascript'>
    (function() {
    var items = <data:post.commentJso/>;
    var msgs = <data:post.commentMsgs/>;
    var config = <data:post.commentConfig/>;

    // <![CDATA[
    var cursor = null;
    if (items && items.length > 0) {
    cursor = parseInt(items[items.length - 1].timestamp) + 1;
    }

    var bodyFromEntry = function(entry) {
    if (entry.gd$extendedProperty) {
    for (var k in entry.gd$extendedProperty) {
    if (entry.gd$extendedProperty[k].name == 'blogger.contentRemoved') {
    return '<span class="deleted-comment">' + entry.content.$t + '</span>';
    }
    }
    }
    return entry.content.$t;
    }

    var parse = function(data) {
    cursor = null;
    var comments = [];
    if (data && data.feed && data.feed.entry) {
    for (var i = 0, entry; entry = data.feed.entry[i]; i++) {
    var comment = {};
    // comment ID, parsed out of the original id format
    var id = /blog-(\d+).post-(\d+)/.exec(entry.id.$t);
    comment.id = id ? id[2] : null;
    comment.body = bodyFromEntry(entry);
    comment.timestamp = Date.parse(entry.published.$t) + '';
    if (entry.author && entry.author.constructor === Array) {
    var auth = entry.author[0];
    if (auth) {
    comment.author = {
    name: (auth.name ? auth.name.$t : undefined),
    profileUrl: (auth.uri ? auth.uri.$t : undefined),
    avatarUrl: (auth.gd$image ? auth.gd$image.src : undefined)
    };
    }
    }
    if (entry.link) {
    if (entry.link[2]) {
    comment.link = comment.permalink = entry.link[2].href;
    }
    if (entry.link[3]) {
    var pid = /.*comments\/default\/(\d+)\?.*/.exec(entry.link[3].href);
    if (pid && pid[1]) {
    comment.parentId = pid[1];
    }
    }
    }
    comment.deleteclass = 'item-control blog-admin';
    if (entry.gd$extendedProperty) {
    for (var k in entry.gd$extendedProperty) {
    if (entry.gd$extendedProperty[k].name == 'blogger.itemClass') {
    comment.deleteclass += ' ' + entry.gd$extendedProperty[k].value;
    }
    }
    }
    comments.push(comment);
    }
    }
    return comments;
    };

    var paginator = function(callback) {
    if (hasMore()) {
    var url = config.feed + '?alt=json&v=2&orderby=published&reverse=false&max-results=50';
    if (cursor) {
    url += '&published-min=' + new Date(cursor).toISOString();
    }
    window.bloggercomments = function(data) {
    var parsed = parse(data);
    cursor = parsed.length < 50 ? null
    : parseInt(parsed[parsed.length - 1].timestamp) + 1
    callback(parsed);
    window.bloggercomments = null;
    }
    url += '&callback=bloggercomments';
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    document.getElementsByTagName('head')[0].appendChild(script);
    }
    };
    var hasMore = function() {
    return !!cursor;
    };
    var getMeta = function(key, comment) {
    if ('iswriter' == key) {
    var matches = !!comment.author
    && comment.author.name == config.authorName
    && comment.author.profileUrl == config.authorUrl;
    return matches ? 'true' : '';
    } else if ('deletelink' == key) {
    return config.baseUri + '/delete-comment.g?blogID='
    + config.blogId + '&postID=' + comment.id;
    } else if ('deleteclass' == key) {
    return comment.deleteclass;
    }
    return '';
    };

    var replybox = null;
    var replyUrlParts = null;
    var replyParent = undefined;

    var onReply = function(commentId, domId) {
    if (replybox == null) {
    // lazily cache replybox, and adjust to suit this style:
    replybox = document.getElementById('comment-editor');
    if (replybox != null) {
    replybox.height = '250px';
    replybox.style.display = 'block';
    replyUrlParts = replybox.src.split('#');
    }
    }
    if (replybox && (commentId !== replyParent)) {
    document.getElementById(domId).insertBefore(replybox, null);
    replybox.src = replyUrlParts[0]
    + (commentId ? '&parentID=' + commentId : '')
    + '#' + replyUrlParts[1];
    replyParent = commentId;
    }
    };

    var hash = (window.location.hash || '#').substring(1);
    var startThread, targetComment;
    if (/^comment-form_/.test(hash)) {
    startThread = hash.substring('comment-form_'.length);
    } else if (/^c[0-9]+$/.test(hash)) {
    targetComment = hash.substring(1);
    }

    // Configure commenting API:
    var configJso = {
    'maxDepth': config.maxThreadDepth
    };
    var provider = {
    'id': config.postId,
    'data': items,
    'loadNext': paginator,
    'hasMore': hasMore,
    'getMeta': getMeta,
    'onReply': onReply,
    'rendered': true,
    'initComment': targetComment,
    'initReplyThread': startThread,
    'config': configJso,
    'messages': msgs
    };

    var render = function() {
    if (window.goog && window.goog.comments) {
    var holder = document.getElementById('comment-holder');
    window.goog.comments.render(holder, provider);
    }
    };

    // render now, or queue to render when library loads:
    if (window.goog && window.goog.comments) {
    render();
    } else {
    window.goog = window.goog || {};
    window.goog.comments = window.goog.comments || {};
    window.goog.comments.loadQueue = window.goog.comments.loadQueue || [];
    window.goog.comments.loadQueue.push(render);
    }
    })();
    // ]]>
    </script>
  3. Setelah itu save templates.
Langkah ketiga ini dibuat oleh http://modification-blog.blogspot.com. Setelah Anda melakukan langkah ini fungsi Reply bisa berjalan normal, tapi permasalahan yang saya dapat kemudian (setelah Anda melakukan langkah ini) jika Anda masih memakai browser internet lama terkadang akan susah untuk membuka postingan yang ada pada blog.

Threaded Comment di blog Anda sekarang sudah ada, sekarang anda tinggal modifikasi sendiri bentuk dari kotak komentar. Jika Anda menginginkan kotak komentar Admin berbeda, ikuti langkah sederhana berikut ini (contohnya seperti gambar diatas) :
  1. Pada posisi Edit HTML letakkan kode berikut ini persis diatas kode </body> :
    <script src='http://code.jquery.com/jquery-latest.js'/>
    <script>
    $(function() {
    function highlight(){
    $('.user.blog-author,.ssyby').closest('.comment-block')
    .css('border', '1px solid #e1e1e1')
    .css('background','#f1f1f1 url("https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjktxheQz8CjfJDz-1N63azQtk8Mfpdkfeit3n1hNWoTUCa3rADBt7j61FiOGvSGjeuWCOEnYwdufzyqQMc-lJ7WR_Nrwaa3vsczW-Gk-qHI34ICqk7F10uzPyr9uCEzhFeD9bRmYtF7dw/s1600/admin2.png") no-repeat bottom right')
    .css('padding', '10px');
    }
    $(document).bind('ready scroll click', highlight);
    });
    </script>
  2. Kemudian save templates.
Demikian tadi tutorial singkat untuk mengatasi masalah yang sering muncul dalam membuat Threaded Comments pada template blogger classic. Jika masih ada yang kurang jelas silahkan tinggalkan komentar Anda di bawah. Selamat mencoba dan semoga bermanfaat.

Ghét, thích, yêu, cưới (phần 1)

Lá thư trong tuần: Giọt nước mắt rơi muộn
Có khi nào em thấy mệt mỏi vì quá nhiều những câu chuyện buồn, những con người như chẳng bao giờ tìm thấy niềm vui. Cuộc sống mà, đâu phải chỉ có những niềm vui, nhưng cũng không có nghĩa là chỉ toàn nỗi buồn em nhỉ? Nhưng nếu có ai đó mang theo quá nhiều nỗi buồn, em cũng đừng vội nghĩ rằng họ không biết tìm đến niềm vui, biết đâu đấy, có thể số phận đã thực sự trêu đùa họ thì sao? Như chuyện về con thằn lằn nhỏ hôm nay anh kể…



Con thằn lằn nhỏ sinh ra từ bao giờ nó cũng chẳng biết nữa, tới khi nó có nhận thức về sự tồn tại của mình trong cuộc đời này thì nó cũng nhận ra mình chỉ có một mình, lạc lõng và cô độc. Cuộc sống chỉ là những ngày tháng mệt mỏi tìm kiếm thức ăn để tồn tại, để đủ sức lẩn trốn và bỏ chạy khi kẻ thù săn đuổi, để gắng gượng liếm những vết thương trên cơ thể cho mau lành, để những giọt nước mắt còn có thể lăn xuống cho nhẹ bớt nỗi buồn mỗi khi nó nghĩ về cuộc sống.

Thời gian cứ thế trôi đi. Một ngày nọ, thằn lằn mệt mỏi lê cơ thể với cái cổ họng đang khát cháy ra vũng nước, còn chưa kịp uống thì đã thấy bóng diều hâu đang lao đến thật gần. Cái vũng nước vốn là một cái ao nay đã cạn nằm trơ trọi giữa một khu đất trống chẳng có gì để lẩn trốn. Hoảng hốt, thằn lằn lao mình xuống mép nước nơi toàn những bùn đặc quánh, gắng nín thở chờ cho diều hâu bay qua. Rồi thì bóng con diều hâu cũng khuất dạng, thằn lằn lao lên bờ nằm vật ra thở lấy thở để.

“Mình cứ phải sống như thế này đến khi nào? Chẳng phải sớm muộn thì rồi mình cũng bị một con chồn hay một con diều hâu ăn thịt hay sao? Thế tại sao cứ phải kéo dài những ngày tháng và những vết thương đau nhức này chứ? Mình sẽ không chạy trốn nữa. Mình sẽ nằm ở đây chờ con diều hâu quay lại”

Nghĩ vậy thằn lằn chẳng bò đi đâu nữa, cứ nằm đó mặc cho mặt trời ở trên cao thiêu đốt. Nó nằm đó, chờ mãi, chờ mãi. hết buổi sáng rồi buổi trưa. Rồi tới chiều muộn mới thấy từ đằng xa một con chồn đang lững thững đi tới. Chắc nó ra uống nước, thằn lằn thầm nghĩ. vậy là cuộc đời ta sẽ chấm dứt ở đây, trong bụng một con chồn. Con chồn đến gần lắm, gần lắm rồi mà hình như vẫn không nhận thấy sự có mặt của con thằn lằn. Toàn thân co rúm lại, mắt không dám mở ra, con thằn lằn chờ đợi con chồn đi tới. Nó hé mở mắt ra, con chồn đã ở ngay cạnh nó. Thằn lằn bật dậy hét lên:

- Này chồn, ăn thịt tao đi chứ!

Trái với chờ đợi của con thằn lằn, con chồn sợ hãi nhìn nó rồi bỏ chạy thục mạng. Ngẩn ngơ nhìn theo con chồn, thằn lằn chẳng hiểu chuyện gì đã xảy ra. Chán nản, nó bò lại vũng nước

- Ơ kìa!

Nó giật mình nhảy lùi trở lại, rồi lại mon men bước tới mép nước. Dưới nước, nó thấy một con vật kì quái đang nhìn nó. Nó giơ hai chân trước lên, rồi ngoái đầu nhìn lại lưng mình. Hóa ra lớp bùn bám vào đã khô giờ biến nó thành một con vật trông thật kì quái. Nghĩ lại vẻ mặt con chồn lúc hốt hoảng bỏ chạy nó bật cười:

- Vậy là từ giờ ta sẽ không phải sợ lũ chồn nữa.

Từ ngày vô tình phát hiện ra lớp vỏ bọc, cuộc sống của thằn lằn đã dễ chịu hơn trước. Nhưng rồi thời gian đó cũng chẳng kéo dài được bao lâu. Sự đói khát luôn khiến lũ thú và diều hâu trở nên liều lĩnh và đáng sợ, chẳng mấy chốc thằn lằn lại phải bỏ chạy thục mạng, trên người mang theo không ít vết thương để bỏ trốn. Mỗi lần như thế, nó lại tìm tới vũng bùn,lăn người qua đó. Nó ngày càng to lớn và gớm ghiếc. Và từ đó dù vết thương có đau đớn thế nào, nỗi buồn dày vò nó đến đâu nó cũng không bao giờ dám khóc. Nó sợ nước mắt sẽ làm bong lớp bùn kia đi mất..

Ngày tháng cứ thế đi qua, giờ đây nó đã trở thành một con vật to lớn mà chẳng mấy loài dám động tới. Những tưởng cuộc sống nó rồi cứ thế trôi qua thì một sáng đang nằm phơi nắng nó thấy từ đằng xa một con thằn lằn khác đang bị một con chồn đuổi chạy lại phía nó. Trái tim nó bỗng nhiên như loạn nhịp. Nó chết sững cả người trong khi con thằn lằn nhỏ kia nằm trốn dưới bụng, còn con chồn  thì  lảng ngay đi khi nhìn thấy nó. Từ khi sinh ra đến giờ đây là lần đầu tiên nó trông thấy đồng loại của mình, một cảm giác vui sướng và xúc động khó tả ùa tới vây lấy nó. Phải một lát khi cơn xúc động tạm lắng nó mới cất được tiếng nói
- Chào bạn!
Con thằn lằn mới đến giật bắn người, nó hoảng sợ nhìn con vật gớm giếc mà vừa mới trước đó thôi nó vẫn tưởng là một đống đất cất lời chào nó. Sợ đến lặng người, nó chẳng nhúc nhích nổi để bỏ chạy chỉ biết giương đôi mắt mở to nhìn con vật đó
- Bạn đừng sợ, tớ không làm hại bạn đâu!
Có bỏ chạy cũng chẳng nổi với đôi chân như nhũn ra vì khiếp sợ, con thằn lằn mới đến chỉ còn biết lắp bắp trả lời nó:
- Bạn không ăn thịt tớ thật chứ?
-  Ừ, tớ sẽ không làm đau bạn đâu, đừng sợ!
-  Thế giờ tớ bỏ chạy bạn sẽ không đuổi theo tớ chứ?
-  Ừ!
-  Thật nhé!
-  Ừ mà!
Con thằn lằn mới đến như chỉ chờ có thế, cắm đầu chạy thục mạng. Nhìn bóng con thằn lằn mới đến xa dần, con thằn lằn như chợt tỉnh, nó muốn đuổi theo quá, nó đâu muốn con thằn lằn kia bỏ nó đi như thế. Nhưng giờ có đuổi theo cũng chẳng kịp nữa rồi, bóng con thằn lằn mới đến đã biến mất sau một bụi cây xa tít. Nó gục đầu xuống buồn bã…
-  Này!
-  Ơ, sao bạn không chạy nữa. À, ý tớ là sao bạn lại quay trở lại?
Nó ngỡ ngàng và vui mừng khi thấy con thằn lằn mới đến đã trở lại, đang ở trước mặt nó từ lúc nào.
- Ừ, tại con chồn, nó vẫn đứng rình tớ ở đằng kia kìa, sau mấy cái bụi cây.
Con thằn lằn mới đến vừa nói, miệng vừa nở một nụ cười tinh quái. Thật ra con chồn đã đi rồi, chỉ là nó thấy con vật kì quái này có gì đó là lạ và khiến nó cảm thấy thích thú.
-  Vậy thì cứ ở đây với tớ, lúc nào muốn đi tớ sẽ đi cùng bạn, bọn chồn và diều hâu sẽ không dám làm gì bạn đâu!
Và câu chuyện về tình yêu của hai con thằn lằn đã bắt đầu như thế.

Chúng đã có những ngày thật hạnh phúc bên nhau. Con thằn lằn nhỏ bé ngày càng nhận ra dưới lớp vỏ xấu xí, gớm ghiếc của con thằn lằn to lớn kia là một trái tim hết mực yêu thương, lo lắng cho nó. Luôn hết mình và chẳng ngại ngần xả thân để bảo vệ nó. Vì thế mà nó cũng dành hết yêu thương của mình cho con thằn lằn kia mà chẳng hề bận tâm đến vẻ ngoài xấu xí.
Từ khi sinh ra vốn cảm thấy cuộc sống chỉ toàn những nỗi đau, nỗi cô đơn hành hạ nên từ ngày con thằn lằn nhỏ xuất hiện cuộc sống của con thằn lằn xấu xí đã thay đổi hoàn toàn. Lần đầu tiên nó biết yêu thương. Nó hạnh phúc lắm, hạnh phúc tới mức chẳng biết dùng lời nói nào để nói được cho con thằn lằn kia biết. Tất cả những gì nó có, nó làm đều vì con thằn lằn kia mà thôi, nó yêu con thằn lằn kia hơn chính cả bản thân nó mất rồi…
Nhưng càng yêu thương nó lại càng cảm thấy đau khổ mỗi khi nghĩ tới hình dạng gớm ghiếc của mình. Nó lo sợ một ngày nào đó con thằn lằn kia sẽ chán ghét nó vì cái hình hài gớm ghiếc nó phải mang. Đã rất nhiều lần nó muốn vứt bỏ cái vỏ bọc để lại trở về là một con thằn lằn nhỏ bé như ngày nào nhưng một tiếng nói khác lại vang lên trong đầu ngăn nó lại: “Không còn cái vỏ bọc thì làm sao mày bảo vệ được cho cô ấy, đến bản thân mày còn chẳng bảo vệ nổi thì cô ấy cũng sẽ rời bỏ mày mà thôi”.
Những dằn vặt đau khổ ngày càng chiếm hết tâm trí nó, làm mờ mắt khiến nó không nhận ra những yêu thương mà con thằn lằn kia vẫn ngày ngày dành cho nó. Rồi đến một ngày nó nghĩ rằng, con thằn lằn kia ở bên nó chỉ vì sự an toàn nó mang lại mà thôi. Ý nghĩ ngu ngốc đó xuất hiện trong đầu nó và không làm sao rời bỏ:
- Này, cậu có yêu tớ không? Hay cậu ở bên tớ chỉ vì tớ bảo vệ được cậu thôi, nếu đúng như vậy cậu hãy đi đi!
Câu nói như một lưỡi dao đâm thẳng vào trái tim con thằn lằn nhỏ bé. Nó cảm thấy một sự xúc phạm nặng nề, lời nói như một gáo nước lạnh hắt thẳng vào ngọn lửa yêu thương mà ngày ngày nó gìn giữ. Nó làm sao hiểu được rằng câu hỏi ngu ngốc đó vốn chỉ vì con thằn lằn xấu xí kia muốn nhận được một câu trả lời rằng: Không, nó yêu con thằn lằn đó thật lòng.
Lặng lẽ giấu hai giọt nước mắt vừa lăn xuống, nó quay lưng bỏ đi mặc con thằn lằn xấu xí đứng trơ như đá. Nó đi, đi mãi, chẳng còn biết đến xung quanh nữa, lòng tràn ngập dằn vặt và những câu hỏi tại sao. Từ trên cao, bóng con diều hâu mỗi lúc một rõ dần…
Trông thấy diều hâu, mọi giác quan của con thằn lằn xấu xí như sống lại. Không, trời ơi, bao ngày tháng qua con thằn lằn nhỏ đã quên mất cách chạy trốn mất rồi... nó lao về phía con thằn lằn nhỏ bước đi trước đó – cái ao, phía con diều hâu cũng đang lao tới thật nhanh…
Đã muộn mất rồi…  con diều hâu vội vã bay đi khi thấy nó, bỏ lại con thằn lằn đang hấp hối với thân thể nhỏ bé còn in hằn những móng vuốt và cái đuôi đã đứt lìa.
- Tớ sai rồi, hãy mở mắt ra đi. Là tại tớ tớ đã sai rồi. Hãy mở mắt ra đi, tớ sẽ không bao giờ xa cậu, không bao giờ làm cậu buồn, không bao giờ để cậu đi một mình nữa…
-  Không… là tại tớ… tớ sai rồi… tớ vừa nhớ ra, chưa bao giờ tớ nói yêu cậu cả
Con thằn lằn nhỏ gắng mở mắt nhìn con thằn lằn xấu xí lần cuối:
-  Tớ.. yêu… cậu!
Rồi đôi mắt nó từ từ khép lại, đánh rơi một giọt nước mắt nhỏ xíu, trong ngần
- Không!!!

Con thằn lằn xấu xí hét lên rồi lao xuống ao, nó bơi điên cuồng rồi tự cào cấu thân thể mình, khuôn mặt đầm đìa nước mắt. Nhưng chẳng được nữa rồi, cái vỏ bọc bao ngày tháng qua đã trở thành một phần cơ thể nó.
-  Không!!! Thượng đế ơi, hãy làm ơn trả lại tôi hình hài ngày trước, tôi xin người, hãy cho tôi lại được làm con thằn lằn nhỏ bé để tôi được một lần ôm người tôi yêu vào lòng thôi. Tôi xin người.. hãy làm ơn đi…
Cảm động trước nỗi đau của con thằn lằn thượng đế hiện ra, ngài lặng lẽ đứng bên cạnh, đưa ánh mắt hiền từ nhìn nó. Đôi mắt đẫm nước, con thằn lằn tội nghiệp ngước lên hỏi thượng đế:
- Tại sao? Tại sao cuộc đời con chỉ toàn những đau khổ thế này? Tại sao người lại bất công với con như thế?
-  Nếu cuộc đời không có những nỗi đau thì liệu có khi nào con  cảm thấy được niềm hạnh phúc?
-  Vậy tại sao người đã cho con hạnh phúc rồi lại lấy của con đi?
-  Ta không hề cho được hạnh phúc, nếu con dễ dàng đầu hàng số phận, đầu hàng những nỗi đau như cái ngày con nằm tại đây chờ chết thì liệu con có ngày tìm được hạnh phúc không? Ta cũng không thể lấy được hạnh phúc của con, là con tự tay mình đánh mất đấy chứ.
- Con sai rồi, con đã sai rồi…
Con thằn lằn xấu xí chỉ còn biết ôm mặt khóc nức nở.
-  Phải, con đã sai rồi. Trên đời này mọi sai lầm đều phải trả giá. Ta có thể làm ấm lại trái tim đã lạnh giá của con thằn lằn kia, nhưng ta không thể tạo ra hơi ấm đó, con có sẵn lòng đánh đổi trái tim ấm áp yêu thương của mình cho nó hay không. Hãy nhớ, nếu đổi con sẽ không bao giờ biết đến yêu thương hay đau khổ nữa.
- Con bằng lòng!
- Con nghĩ sao?  Con thằn lằn nhỏ bé kia có hạnh phúc không khi nó sống lại thì trái tim con đã khô cạn. Sự hi sinh của con liệu có giúp nó có những tháng ngày hạnh phúc hay chỉ thêm những dằn vặt khổ đau? Ta đã nói, mọi sai lầm đều phải trả giá và đôi khi cái giá là rất đắt.
Con thằn lằn xấu xí nhắm nghiền đôi mắt, trong đầu nó hiện lên hình ảnh con thằn lằn nhỏ bé từ ngày chúng mới gặp nhau. Những ngày tháng hạnh phúc lướt qua trong đầu nó… nó hiểu rằng nó phải ra đi.
-  Con chấp nhận sẽ rời xa nơi đây mãi mãi, dẫu chẳng thể yêu thương hay đau khổ nữa con vẫn xin người cho con còn biết khóc – điều đơn giản mà bao năm tháng qua con vẫn luôn ao ước, được không?
Thượng đế nhìn nó mỉm cười…
Con thằn lằn to lớn và xấu xí lặng lẽ đi vào rừng sâu, nơi chỉ toàn những đầm lầy mà chẳng bao giờ con thằn lằn nhỏ bé tìm tới được. Nó trở nên độc ác và xấu xa vì chẳng còn trái tim biết yêu thương nữa nhưng lạ là nó vẫn khóc. Người ta gọi nó là cá sấu và cho rằng đó là những giọt nước mắt dối trá mà chẳng mấy ai biết rằng đó đã từng là những giọt nước mắt của một trái tim biết yêu thương.
Con thằn lằn nhỏ bé sống lại đã đi tìm con thằn lằn xấu xí trong suốt một thời gian dài mà chẳng thấy, cuối cùng nó cũng chấp nhận được cuộc sống không còn con thằn lằn kia và tìm được hạnh phúc mới cho mình và cái đuôi của nó từ đó dù đã được thượng đế làm lành lại những thỉnh thoảng vẫn bị đứt ra những khi sợ hãi…
Em à, đừng bao giờ mệt mỏi vì những nỗi đau mà dừng lại, hạnh phúc luôn ở quanh ta và có thể xuất hiện bất cứ khi nào. Và xin em hãy nhớ, chẳng có hạnh phúc nào bỏ ta đi, chỉ có bàn tay ta không giữ lấy mà làm mất đi hạnh phúc thôi!
  • Gửi từ Facebook Người kể chuyện


  • Truyện ngắn:   Ghét, thích, yêu, cưới (Phần 1)
Mồng 2 Tết
Vừa đi chúc Tết cùng cả nhà về ba có vợ chồng bác ở cơ quan lên thăm. Thế là nó phải lăng xăng giúp mẹ pha trà, lấy bánh xong rồi lẻn xuống bếp. Lớn rồi, 20 tuổi đầu chả nhẽ ba mẹ tiếp khách lại lên đó ngồi hóng chuyện cùng. Rồi bỗng dưng nghe cô vợ của bác đó nói:
- Ôi nhà mình có con bé dễ thương quá nhỉ, sướng quá đi mất. Con bé bao nhiêu tuổi rồi?
Mẹ đáp:
- Nó sinh năm 92 đấy chị, vừa tròn 20.  Rồi mẹ gọi lớn: Vân ơi, lên đây mẹ bảo!
Vậy là tất tả chạy lên trình diện người lớn, mẹ hỏi nó:
- Thế con có biết ai đây không?
Nó cười cười bảo:
- Dạ con biết chứ, 2 bác khi xưa làm mai cho ba mẹ con, con cứ nghe mẹ con nhắc mãi…
Mọi người ôm bụng cười. Qua mấy câu hỏi học ở đâu, ngành gì rồi tự nhiên cô đó chốt lại:
- Thôi con làm dâu cô nhé, 2 nhà mình làm sui với nhau nhỉ. Chúng ta biết nhau quá rồi, khỏi cần tìm hiểu gì nữa, môn đăng hộ đối thế còn gì. Con trai cô đang học bên Mỹ, con về nhà cô rồi cô cho đi luôn. Vả lại con cô sinh năm 84, con thì 92, hợp với nhau quá còn gì.
Nó hết nhìn vợ chồng người bạn rồi lại nhìn ba mẹ nó mà cười cười. Nghĩ thầm rằng năm nào các cô các chú lên thăm nhà cũng đùa đùa mình về làm con dâu, nói vài ba câu thế rồi lại thôi, cái kiểu vô thưởng vô phạt đó riết hoài nó cũng không thích nữa. Thấy kiểu vồn vã của vợ chồng bác đó, nó cũng chỉ nghĩ rằng chắc đó chỉ là kiểu xã giao khéo léo của người lớn mà thôi. Nghĩ đó rồi lại thôi.
Mồng 3 Tết
Ba mẹ bảo phải xuống lại nhà cô chú hôm qua thăm lại cho phải phép. Vừa bước vào nhà cô chú thì cô chạy ra tay bắt mặt mừng, miệng gọi lớn: “Các con ơi, ra xem mặt em dâu này, bồng cả cu Tô ra cho nó xem mặt thím”. Nghe xong mấy câu đó làm nó đứng hình cả mấy giây, mặt đỏ bừng vì dị. Cô còn liên mồm bảo rằng: “Con cứ hỏi chị đó đi, về làm dâu nhà mẹ sướng lắm, mẹ coi như con gái”. Anh con trai lớn liền bảo: “Vậy phải ghi âm mấy lời mẹ nói lại mới đươc, để sau này khỏi phải chạy làng!”.
Cuộc nói chuyện không đầu không cuối rồi cũng phải kết thúc. Nó cũng không nghĩ được gì nhiều, cũng chỉ biết rằng Tết năm nào cũng được nghe mấy lời này, rồi thì thấy vui vui tí thôi. Ngồi trên xe, nó nghĩ rằng duyên phận của con cái, dù cha mẹ có định đoạt đến thế nào, thì cũng vẫn nằm trong tay con cái quyết định cả thôi.

1 năm sau,
Thời gian cứ thế mà trôi đi, cô cũng vẫn như vậy, chỉ có học hành và gia đình là hai thứ quan trọng với cô nhất lúc này. Hơn một năm trước, vì sự bồng bột của mình, cô đã lỡ làm chính mình đau, nên có lẽ bây giờ, thứ tình cảm yêu đương dường như xa xỉ hơn đối với cô. Cô chả có thời gian lẫn sự tự tin dành cho nó, khi đêm đến, cô buông mình trên chiếc giường êm ái với giấc ngủ ập đến ngay lập tức sau một ngày dài mệt mỏi, đến nỗi không có thời gian cho việc suy nghĩ vẩn vơ như cô thường làm khi xưa. Chắc có lẽ bây giờ cô đã trưởng thành hơn, đã biết tự bảo vệ mình, không làm mình đau bởi những suy nghĩ vẩn vơ, những kì vọng hão huyền.
Năm hết rồi Tết lại đến, mệt nhoài sau mấy ngày dọn dẹp nhà cửa trước Tết làm cô chỉ muốn nằm dài trong nhà “dưỡng sức”. Đang uể oải với tay lấy cái remote trên bàn chỉnh kênh tivi thì cô nghe ba chạy từ nhà bếp lên bảo:
- Tối nay vợ chồng chú ấy mời cả nhà mình sang ăn tối, coi như là tạo dịp gặp gỡ cho bé Vân và thằng con út bên đó. Tết năm ngoái cô cứ tha thiết đòi làm sui, năm nay thằng con út về ăn Tết nên muốn để 2 đứa gặp nhau luôn.
Nghe xong tự nhiên cô giật nảy mình, chuyện gì thế này, cả đời cô chưa bao giờ gặp kiểu “đi xem mặt” như thế này, vả lại chuyện bảo cô làm con dâu nhà đấy cả năm cô cứ tưởng nó đã được cho vào quên lãng rồi chứ.
Khá bối rối  với chuyện này, cô lật đật chạy lên nhà thay bộ đầm nhã nhặn ra kiểu thục nữ để đi cùng ba mẹ. Dẫu sao cô vẫn thuộc tuýp người luôn muốn người khác có ấn tượng tốt về mình dù chỉ gặp nhau có một lần.
Ba nhấn chuông gọi cửa nhà bác, chạy ra mở cổng là một người con trai mà Tết năm ngoái đến nhà cô đã không thấy, vậy chắc chắn là anh ta rồi – người mà suốt cả mùa Tết năm ngoái cô bị gán ghép. Cô nhìn anh bằng cái nhìn bẽn lẽn ngượng ngùng, khẽ chào. Anh đáp lại bằng cái gật đầu khe khẽ và cái nhìn không để lộ cho người đối diện đoán được những suy nghĩ trong đầu anh ta.
Ấn tượng đầu tiên của cô về anh ư, một con người khá ngạo mạn, cô đã chào anh ta trước, đáng ra một người lớn hơn cô nhiều tuổi, du học ở Mỹ về, cũng nên cười tươi mà nói câu: “Nice to meet you” cho ra dáng một tay playboy chứ mặc dù cô biết thừa đó chỉ là một câu xã giao thông thường.  Suốt trong buổi ăn tối, cô chỉ cười và trả lời những câu hỏi của người lớn, có lẽ cô và anh ta là 2 kẻ ít nói nhất trong bữa ăn. Cô cứ mãi đeo đuổi suy nghĩ của riêng mình về anh, và tưởng tượng miếng beefsteak trên đĩa là anh ta và cứ thế mà xẻo mà nhai như một kẻ tham ăn đích thực.
Đến lúc mọi người ngồi lại uống trà tán gẫu sau bữa ăn, mẹ anh ta có bảo rằng rất muốn hai đứa chủ động gặp nhau để tìm hiểu và đi lại. Cô nghĩ thầm rằng con người kia ngay từ đầu mình đã không có mấy thiện cảm cho lắm, và nhủ chắc rằng anh ta nếu gặp mình cũng là do muốn chiều ý gia đình mà thôi, chứ đến 29 tuổi đầu mà chưa có người yêu thì… vả lại đã là dân du học, mấy ai không mang tiếng lăng nhăng…

Lúc về đến nhà, mẹ bảo với cô rằng lúc nãy, cô Vân Anh có nói với mẹ rằng hiện tại cô đang bị bệnh cần phải được thoải mái đầu óc và dưỡng sức, cô muốn 2 đứa nhanh chóng làm quen nhau và tiến tới xa hơn được nữa thì cô càng mừng, điều đó khá tốt cho bệnh tình hiện nay của cô. Nghe mẹ nói xong, đầu óc cô hơi mông lung, chả nhẽ việc cô quen anh ta hay không lại có ảnh hưởng đến thế sao, mà cô thì không muốn để bác ấy phải lo lắng nhiều. Thôi đành phó mặc cho chuyện gì đến thì sẽ đến, nhưng điều cơ bản là cô không có cảm tình với anh ta.
Một ngày đẹp trời sau Tết, lười biếng bắt đầu những tiết học đầu tiên trong năm mới, cô lơ đãng phóng mắt ra khung cửa sổ tầng 11 nơi có thể thấy được những đám mây trời lững lờ trôi, hay cùng một lúc có thể ngắm 2 cây cầu làm nên niềm tự hào của thành phố nơi cô lớn lên. Điện thoại rung lên làm cô giật bắn người, len lén mở mở điện thoại xem tin nhắn như một kẻ làm việc xấu giữa ban ngày ban mặt, nhất là trong giờ của giảng viên mang tiếng khó tính nhất Khoa này…
“Tối nay 7h tôi muốn gặp cô tại Memory coffee”.
Cô đọc tin nhắn mà miệng không quên lẩm bẩm, cái tên lạ hoắc nào mà lại gọi cô như thế, nếu lớn hơn thì gọi cô là em đi nhé, ghét nhất cái kiểu cộc lốc và ra lệnh như thế. Nói chung, đã ghét thì sẽ không reply. Tắt điện thoại và tiếp tục nghe giảng bài cho quên đi nỗi bực tức.
Cả ngày đi học cứ bù khú với lũ bạn lớn rồi nhưng vẫn đầu óc vẫn còn dở dở ương ương làm cô quên béng mất có kẻ đợi cô trả lời tin nhắn. 5h chiều, chuông điện thoại reo, cô bắt máy với chất giọng lịch sự và nhỏ nhẹ nhất có thể khi thấy số lạ gọi đến.
- Alô ạ!
- Này cô, sao cô không rep tin nhắn của tôi, có biết như thế là bất lịch sự lắm không?”
(Còn nữa…)

Chủ Nhật, 25 tháng 3, 2012

Dua Template Gratis Untuk Pecinta Music dan Game

Di malam yang dingin ini saya akan kembali berbagi kepada teman-teman blogger semua, dua buah template warna hitam gratis. Template pertama saya namakan Johny Darkmusic dibuat khusus untuk teman blogger yang mempunyai blog konten musik atau selebritis. Dan template kedua Johny Darkgamer 2 sesuai namanya template ini cocok untuk blog yang mempunyai konten game atau sejenisnya.

Kedua template ini saya lengkapi dengan fitur slider carousel otomatis, anda tinggal memasukkan kode script yang sudah saya siapkan di bawah pada kotak HMTL/Javascript. Slider carousel yang saya gunakan disini adalah Tiny Carousel dari Maarten Baijs yang sudah dimodifikasi oleh seorang master blogger Indonesia Taufik Nurrohman, sehingga kita tidak perlu lagi memasukkan keterangan dan URL slider satu persatu. Baiklah, langsung saja karena saya juga sudah ngantuk berat, berikut ini kedua template tersebut :

Johny Darkmusic

johny darkmusic


Template ini saya buat bagi Anda yang suka dengan konten music atau selebritis. Template ini bertipe magazine, terdapat 3/4 kolom sidebar. Fitur-fitur yang terdapat pada template ini antara lain :
  1. Slider Carousel
    Untuk mengganti slider anda hanya perlu memasukkan kode di bawah ini pada kotak HTML/Javascript. Di dashboard masuk ke layout kemudian pilih kolom kosong di bawah header >> add gadget >> HTML/Javascript :
    <script type="text/javascript">
        showPostDate_g  = false;
        showComm_g      = false;
        slideOpenNewTab = true;
        idMode          = true;
        slidebyLabels   = false;
    var slideLabelName  = "label",
        pBlank          = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgO6wG1xPQyXQ74IvGt0NIFy7WmjQP6di8_6iZxDqBTmD-0DFTPsVjdVxSE7MDJtPLb-b916EkfuVfgahyZRNsvTqTDBt6JKOBj-XNLxpIw5sXC-qxPg03C-cXeh4CKSGkLjPZIZoqnajA/s1600/no+image.jpg",
        text            = "comment",
        numposts_g      = 12,
        numchars_g      = 0,
        showText        = "Show at",
        postText        = "Posts",
        tinyprevNav     = "&lt;",
        tinynextNav     = "&gt;",
        home_page       = "http://johnydarkmusic.blogspot.com/";
    </script>
    <script src="http://yourjavascript.com/123714512522/tinycarousel-hompimpa.js" type="text/javascript"></script>
    Ganti URL warna biru diatas dengan URL blog Anda, kemudian save.
  2. Kategory dengan thumbnail (Category with thumbnail)
    Letaknya di sidebar tengah (satu thumbnail), cara pasangnya add gadget >> HTML/Javascript kemudian masukkan kode di bawah ini :
    <script type='text/javascript'>var numposts = 1;var showpostthumbnails = true;var displaymore = false;var displayseparator = false;var showcommentnum = false;var showpostdate = false;var showpostsummary = true;var numchars = 60;</script>

    <script type="text/javascript" src="/feeds/posts/default/-/jazz?orderby=updated&alt=json-in-script&callback=labelthumbs"></script>

    <script type="text/javascript">
    function recentpostslist(json) {
     document.write('<ul>');
     for (var i = 0; i < json.feed.entry.length; i++)
     {
        for (var j = 0; j < json.feed.entry[i].link.length; j++) {
          if (json.feed.entry[i].link[j].rel == 'alternate') {
            break;
          }
        }
    var entryUrl = "'" + json.feed.entry[i].link[j].href + "'";//bs
    var entryTitle = json.feed.entry[i].title.$t;
    var item = "<li>" + "<a href="+ entryUrl + '" target="_blank">' + entryTitle + "</a> </li>";
     document.write(item);
     }
     document.write('</ul>');
     }
    </script>
    <script src="http://johnydarkmusic.blogspot.com/feeds/posts/summary/-/jazz?max-results=5&alt=json-in-script&callback=recentpostslist"></script>
    <a href="http://johnydarkmusic.blogspot.com/search/label/jazz" style="float:right;font:normal 11px Arial;padding:5px 0;">More on this category &#187;</a>
    Keterangan :
    Warna biru (jazz) : adalah label atau kategori yang ditampikan pada sidebar. Anda bisa menggantinya dengan label anda sesuaikan dengan kebutuhan.
    Warna merah : Ganti URL dengan URL blog anda.
  3. Latest Post
    Untuk mengatur latest post yang ada di homepage caranya adalah, di dashboard blogger pilih setting, kemudian klik posts and comments. Pada bagian paling atas (Show at most) pilih berapa posts yang ingin ditampilkan pada homepage. Kemudian masuk ke Language and formatting, agar blog Anda seperti pada demo template ini pada Timestamp format pilih hanya jam/waktu (00:00).
  4. Kotak feedburner di bawah postingan
    Cari kode script di bawah ini pada edit HTML (jangan lupa centang expand widget templates) :
    <div class='subscribe'>
    <p class='intro'>If you enjoyed this article just <a href='http://feeds.feedburner.com/JohnyTemplate' target='_blank' title='feedburner'>
    <b>click here</b></a>, or subscribe to receive more great content just like it.</p>
    <p class='feed'><a href='http://johnytemplate.blogspot.com/feeds/posts/default'>Subscribe via RSS Feed</a></p>
    <form action='http://feedburner.google.com/fb/a/mailverify' method='post' onsubmit='window.open(&apos;http://feedburner.google.com/fb/a/mailverify?uri=JohnyTemplate&apos;, &apos;popupwindow&apos;, &apos;scrollbars=yes,width=550,height=520&apos;);return true' target='popupwindow'>
    <input name='uri' type='hidden' value='JohnyTemplate'/>
    <input name='loc' type='hidden' value='en_US'/>
    <input id='botsub' name='email' onblur='if (this.value == &quot;&quot;) {this.value = &quot;Enter your email&quot;;}' onfocus='if (this.value == &quot;Enter your email&quot;) {this.value = &quot;&quot;;}' type='text' value='Enter your email....'/>
    <input id='botsubbutton' type='submit' value='Submit'/><br/>
    <small>Your information will not be shared. Ever.</small>
    </form>
    </div>
    Keterangan :
    Warna biru : ganti dengan alamat feed anda.
    Warna merah : ganti dengan URL anda.
    Ganti juga URL feed http://feeds.feedburner.com/blogspot/htbgh dengan URL feed Anda.
  5. Headline News (Di bawah navigasi menu atas atau news ticker)
    Untuk menggantinya di dashboard pilih template kemudian klik Edit HTML jangan lupa centang expand widget templates kemudian cari dengan menggunakan control + F URL http://johnydarkmusic.blogspot.com ganti dengan blog URL anda.
Johny Darkgamer 2

johny darkgamer 2


Sesuai namanya template ini adalah versi kedua dari serial template Johny Darkgamer.  Dengan warna dasar hitam dan hijau pada bagian navigasi menu, template ini sangat cocok untuk konten game. Fitur-fitur yang terdapat pada template ini hampir sama dengan template Johny Darkmusic, malah lebih sederhana pada hompage hanya terdapat 3 kolom sidebar yang tidak terlalu sulit untuk memasang widget yang ada disitu. Cara memasang slider pada template ini sama dengan template Johny Darkmusic, anda tinggal memasukkan kode script pada langkah nomer satu ke kotak HTML/Javascript. Demikian juga dengan kotak Feedburner yang ada di bawah postingan cara untuk menggantinya sama pada langkah nomer 4.

Kedua template ini support dengan halaman statis (static page) klik sample page yang terdapat pada navigasi menu atas. Dan juga template ini sudah dilengkapi dengan fitur threaded comment dengan fungsi reply bawaan dari blogger, anda bisa modifikasi sesuai keinginan. Kekurangan template ini belum ada fitur kotak pencari (search box), saya yakin Anda semua pasti bisa untuk menambahkan kotak pencari pada kedua template ini terserah mau memakai bawaan dari blogger atau memodifikasi sendiri.

Tutorial untuk pemasangan fitur-fitur yang ada pada kedua template diatas saya asumsikan Anda memakai blogger new interface bagi yang masih memakai old interface saya kira juga gampang dan mudah dimengerti, sampai disini dulu mas/mbak sudah larut malam selamat mencoba dan semoga bermanfaat.

Update Templates

My Google Code was banned, there's so many script that I put in there can't be opened. But I already fixed it with the updates ones, you can re-download this template or you can change some script below

Johny Darkgamer 2
Click this link and read subtitle "Update Template" in that post for the latest updates of Javascript

Johny Darkmusic
Click this link and read subtitle "Update Template" in that post for the latest updates of Javascript

Thứ Tư, 21 tháng 3, 2012

Nếu như anh hiểu


Điểm bắt đầu :

_ Mình chia tay nhau đi! Cô thốt ra lời ấy trong sự giận dữ. Cô nhấn mạnh từng từ một. Cô hiểu làm như thế là như từng nhát dao đâm vào trái tim anh. Nó khiến anh tổn thương sâu sắc.

_ Được thôi, nếu như em đã muốn như thế! Anh không thể ngờ em lại có thể thốt ra được những lời như thế!

Điễn biến :

Sau cái buổi tối ấy, anh rất căm ghét cô. Chỉ vì cô đã làm tổn thương anh rất rất nhiều. Anh mỉa mai cô. Nhưng sâu thẳm đâu đó trong anh, anh đang cho cô cái quyền được làm tổn thương anh vì anh quá yêu cô! Anh vẫn chưa thể chấp nhận được thực tế rằng họ đã chia tay.
Tuy ghét cô nhưng anh vẫn để chế độ cập nhật thông tin về cô. Vào một ngày, anh thấy cô treo status: “Ngày mai, nếu có ai đó giữ mình lại thì mình sẽ ở lại.” Anh cười khẩy trong lòng và nghĩ: “Cô cứ tưởng tượng đi, vì sẽ chẳng có ai giữ cô lại đâu!”

Sau ngày đó, anh thấy cô offline mất một thời gian. Rồi cô update những tâm trạng buồn rầu như nhớ một ai đó! Anh lại cười vì đáng đời cô. Rồi cô update những tâm trạng vui – Như thể cô đang lột xác, đổi mới chính bản thân cô.

Còn anh, như một cách chứng minh cho cô thấy rằng không có cô thì anh vẫn có giá, anh nhanh chóng ngỏ lời yêu một người mà mẹ anh giới thiệu. Nhưng sâu thẳm trong anh, anh biết anh chẳng thể yêu được ai khác ngoài cô. Nhưng anh vẫn ương bướng không chịu thừa nhận việc đó!

Thời gian trôi qua, anh dường như mất cảm xúc với cô. Anh như thờ ơ với mọi status của cô.

Rồi cô update một status mới: “Thời gian tự do đã hết rồi. Về nhà với bố mẹ, lấy chồng và sinh con thôi!”.

Mọi người vào chúc mừng cô. Sự thờ ơ thường ngày biến mất,  anh đau đớn khi vào comment lại: “Chúc em hạnh phúc với sự lựa chọn của mình!”

Read more »

Thứ Ba, 20 tháng 3, 2012

Hạnh phúc ảo


Truyện ngắn: Hạnh phúc ảo
Hắn năm nay 30 tuổi, một vợ và một con trai. Vợ hắn xinh, con hắn đẹp, và tất nhiên, hắn cũng đẹp. Hắn đang làm việc cho một công ty xuất nhập khẩu, đi nước ngoài như đi chợ. Vợ hắn làm việc tại một văn phòng địa ốc. Cuộc sống vậy là tạm coi là hoàn hảo theo đúng tiêu chí của một gia đình, nếu như….hắn không đèo bòng. Ngoài vợ, hắn còn có bồ. Bồ của hắn thua xa vợ, chẳng thể nào khéo hơn vợ, nhưng hắn vẫn khoái, chỉ đơn giản là hắn yêu cả hai, khi nào chán cơm, hắn tạt qua ăn phở. Phở theo hắn ban đầu là vì hắn giống người cũ, nàng đưa hắn vào tầm ngắm từ lần đầu diễn ra hội thảo giữa công ty nàng và công ty hắn.
Read more »

Ý Nghĩa Của Tình Yêu

Tiếng chuông đồng hồ báo hiệu đã 12h đêm. Mưa mỗi lúc một to, từng cơn gió rít mạnh lúc ùa vào như muốn giật tung cánh cửa. Chốc chốc, một tia sáng lên vụt nhanh qua khe cửa, kéo theo những tiếng nổ vang trời, vọng vào trong căn phòng cô đơn những âm thanh ghê rợn.

Ngồi co rúm trong góc giường, cô như thấy nỗi đau bao trùm cả không trung. Cô khóc - những giọt nước mắt lăn dài trên gương mặt xinh đẹp, đoan trang đến thánh thiện. Tiếng nấc nghẹn ngào làm đôi môi cô cứng lại, toàn thân bủn rủn như không thể đứng lên nổi.
Read more »

Em là người thứ 3 ...

Rồi cuối cùng em cũng nhận ra hạnh phúc có khi chỉ là ảo tưởng, anh sẽ không bao giờ đến bên em đơn giản chỉ vì anh cần có trách nhiệm với gia đình mình bởi... Em chỉ là cái bóng nấp sau lưng chị ấy!

Em là người thứ 3 ...Ngày ấy, em yêu anh, một tình yêu không thể nói nên lời, chỉ biết nhìn nhau rồi con tim loạn nhịp. Em đã học rất nhiều, cố gắng nhồi nhét kiến thức vào cái đầu bé nhỏ, chỉ mong đỗ vào trường Đại học sư phạm, để tương lai là đồng nghiệp của anh. Nhưng giấc mơ chỉ là giấc mơ. Cầm trên tay tờ giấy báo điểm em đã hụt hẫng, thất vọng về chính bản thân mình. Em đã không đạt được ước nguyện ấy.

Anh còn nhớ không? Ngày anh đội trời mưa tìm đến gặp em là ngày cuối đông giá lạnh, nhìn thấy em nói vài câu rồi đặt vào tay em một chiếc kéo bé nhỏ được tách ra từ chiếc móc khóa xe. Em đã suy nghĩ về nó rất nhiều, thực ra nó có ý nghĩa gì đối với em, với anh?
Read more »

Labels

Adult English affiliate Ảnh ẢNH FACEBOOK ẢNH HÀI ẢNH HOA ĐẸP ẢNH LÃNG MẠN ẢNH NGƯỜI MẪU ÁO DÀI Art + Design ẨM THỰC bag Bé tô màu BIKINI BLOGGER books Búp bê C CAPTCHA Cắm hoa Cắt may Chơi mà học CHUYỆN CỦA SAO Chuyện Lạ clip hot Coloring - Tô màu CUỘC SỐNG Doll domain DU LỊCH Đ Đan len Đất nặn cho bé Điện thoại - Tablet E Funny G GAME Gấp giấy Gấp hộp Gấp khăn - Trang trí món ăn Giầy - Dép Gifts Giới Tính GIỚI TRẺ NGÀY NAY Gói quà - gấp nơ Google GOOGLE ADSENSE FULL guest post H Hand made hat hiteach HOA HẬU HỌC TẬP home and garden hosting HOT GIRL INTERNET INTERNET PAYMENT Iseng joomla jQuery Kết hạt KHỎE & ĐẸP KIẾM TIỀN Kinh Nghiệm L LÀM ĐẸP Làm đồ chơi làm đồ chơi từ gỗ Làm hoa giấy Làm hoa vải Làm thiệp LƯU BÚT HỌC TRÒ M Magazine making flowers Mẫu móc MẸO HAY MMO MODEL N Nail art Nến trang trí Nghệ thuật NGƯỜI ĐẸP VÀ XE Nhà đẹp O Origrami Ôtô - xe máy P Painting - Vẽ Patchwork PHẦN MỀM Play and learn for baby plugin Q R recycling S Sách tiếng anh cho bé Sành điệu Sao SAO NGOẠI SAO ONLINE SAO VIỆT SEO SEO FULL slider STYLE T TÂM SỰ template Tết dây THẾ GIỚI NGƯỜI MẪU THẾ GIỚI THỨ 3 THỂ THAO Thêu THƠ TÌNH THỦ THUẬT THÚ VUI Thư giãn TIỂU THUYẾT TÌNH CẢM TIN HOT Tin Vip tips Tóc đẹp traffic TRANG ĐIỂM Trang trí Tri thức TRUYỆN NGẮN truyện quê Túi xinh tutorial blog VĂN PHÒNG vuivui808 weaving website WEDDING wordpress