Thứ Ba, 2 tháng 3, 2010

Sửa lỗi Auto Readmore khi xem Page trong Blogger

VnTim™  ^-^ Blogger mới bổ sung tính năng viết Page, cho phép chúng ta viết các trang tĩnh và quan trọng trong blog như About, Contact Us, ... Tính năng này khá giống với WordPress, và cũng là 1 cải tiến đáng kể của Blogger. Tuy vậy chúng lại không tương thích với Auto Readmore nổi tiếng mà cộng đồng Blogger hay dùng. Mọi người dùng Blogger chắc đều biết đến tiện ích Auto Readmore nổi tiếng . Ở bài viết này, tôi sẽ sửa lỗi Auto Readmore để hợp với tính năng viết Page
Trước hết, chúng ta đăng nhập blog và vào phần Chỉnh sửa HTML


Tích vào ô  Mở rộng Mẫu Tiện ích


Chèn đoạn này vào phần trước  ]]></b:skin>

.thumb{float:left;display:inline;margin:5px 10px 10px 0;width:120px}

Chèn Đoạn mã này  trong thẻ HEAD, ngay trước </head>

<script type='text/javascript'>
 //<![CDATA[
 function stripTags(s, n) {
  return s.replace(/<.*?>/ig, '').split(/\s+/).slice(0, n - 1).join(' ')
 }
 function createSummaryAndThumb(id) {
  var p = document.getElementById(id),
   imgtag = '',
   img = p.getElementsByTagName('img');
  if (img.length >= 1) {
   imgtag = '<img class="thumb" src="' + img[0].src + '" />';
  }
  p.innerHTML = imgtag + stripTags(p.innerHTML, 125) + '...';
 }
 //]]>
</script>



Trong template, để kích hoạt auto readmore, bạn tìm đến phần:


<data:post.body/>

Sửa nó thành:

<b:if cond='data:blog.pageType == "index"'>
 <span expr:id='"p" + data:post.id'><data:post.body/></span>
 <script type='text/javascript'>createSummary("p<data:post.id/>")</script>
 <a expr:href='data:post.url' title='Read more' rel="nofollow">Read more &rarr;</a>
<b:else/>
 <b:if cond='data:blog.pageType == "archive"'>
  <span expr:id='"p" + data:post.id'><data:post.body/></span>
  <script type='text/javascript'>createSummary("p<data:post.id/>")</script>
  <a expr:href='data:post.url' title='Read more' rel="nofollow">Read more &rarr;</a>
 <b:else/>
  <data:post.body/>
 </b:if>
</b:if>


save lại ok

Chúc các bạn thành công VnTim™

Không có nhận xét nào:

Đăng nhận xét