Hiển thị các bài đăng có nhãn Auto Readmore. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Auto Readmore. Hiển thị tất cả bài đăng

Thứ Ba, 30 tháng 9, 2014

AUTO READMORE KHÔNG THUMBNAIL CHO BLOGGER

Thoáng lướt qua tiêu đề chắc nhiều bạn sẽ nghĩ không có thumbnail thì xài làm gì nhỉ. Thực chất để lấy ra hình ảnh đầu tiên trong bài viết của Blogger thì tương đối rất dễ dàng, bạn có thể hoàn toàn sử dụng code mặc định của nó mà không cần phiền hà đến Javascript và các thứ khác chi cho mất công, thêm vào lại chỉ tổ giảm tốc độ tải trang thôi.

Auto Readmore không thumbnail cho Blogger

Chính vì thế trước mắt bài viết này mình sẽ chia sẻ với các bạn Auto Readmore không thumbnail trước, còn những bài viết tới mình sẽ hướng dẫn các bạn lấy ra ảnh thumbnail khỏi sử dụng js, rồi kết hợp chúng lại với nhau để sử dụng thế nào.

Auto Readmore không thumbnail cho Blogger
Cái này thì tương tự như mấy cái auto readmore đợt trước thôi, mà mình hướng dẫn lại từ đầu kẻo mấy bạn mới không biết. Đầu tiên các bạn chèn đoạn mã sau đây lên trên thẻ </head>

<script type='text/javascript'>//<![CDATA[
function removeHtmlTag(strx, chop) {
    if (strx.indexOf("<") != -1) {
        var s = strx.split("<");
        for (var i = 0; i < s.length; i++) {
            if (s[i].indexOf(">") != -1) {
                s[i] = s[i].substring(s[i].indexOf(">") + 1, s[i].length);
            }
        }
        strx = s.join("");
    }
    chop = (chop < strx.length - 1) ? chop : strx.length - 2;
    while (strx.charAt(chop - 1) != ' ' && strx.indexOf(' ', chop) != -1) chop++;
    strx = strx.substring(0, chop - 1);
    return strx + '...';
}


function createSummary(pID) {
    var div = document.getElementById(pID);
    var summ = 150;
    var summary = '<div><p>' + removeHtmlTag(div.innerHTML, summ) + '</div></p>';
    div.innerHTML = summary;
}
//]]></script>
bạn có thể thay thế số lượng ký tự sẽ lấy ra ở ngay bên trên summ = 150.

Tiếp tục để nó hoạt động bạn tìm và thay thế toàn bộ đoạn mã sau đây

<data:post.body/>

bằng

<b:if cond='data:blog.pageType == &quot;item&quot;'>
 <data:post.body/>
<b:else/>
<b:if cond='data:blog.pageType == &quot;static_page&quot;'>
 <data:post.body/>
<b:else/>
<div expr:id='&quot;summary&quot; + data:post.id'>
 <data:post.body/>
</div>
<script type='text/javascript'> createSummary(&quot;summary<data:post.id/>&quot;);</script>
</b:if>
</b:if>
lưu ý là bên trong đoạn mã thay thế cũng có chứa <data:post.body/> nên phải để ý không lại chèn một nùi code là tiêu đấy nhé. Xong hết thì lưu lại template và kiểm thử.

Lời kết
Đoạn auto readmore này sẽ hoạt động nhanh hơn vì nó không phải làm công việc tìm hình ảnh đầu tiên mà lôi ra nữa. Có thể là đoạn auto readmore với thumbnail thì tiện hơn, nhưng tiện hơn tương đương tới tăng thêm một tẹo thời gian tải trang web.

"nguồn bài viết từ KslZone.NET".

Đọc Bài

AUTO READMORE KHÔNG JS LẤY ẢNH ĐẦU TIÊN

Tại thời điểm hiện tại thì Blogger khá là phổ biến với dân SEOer, hầu hết mọi cá nhân tổ chức không ít thì nhiều đều sử dụng nó làm website vệ tinh cho mình. Thông thưởng thì đối với một website vệ tinh thì có người thì tự xây dựng nội dung như một website chính thức - TỐT, có người thì sử dụng những phần mềm để auto post bài lấy tin từ những website tin tức.

Auto Readmore không JS lấy ảnh đầu tiên


Vấn đề xây ra thường xuyên là đối với những website từ động lấy tin ở các website khác là đối với những website đang xài Auto Readmore với Thumbnail không sử dụng Javascript mà không tải hoặc đăng lại ảnh, thì nó sẽ không xuất hiện ảnh thumbnails. Điều này không những chỉ gặp ở những website auto post bài, mà còn ngay cả với chúng ta nữa.

Bài viết này mình xin chia sẻ với các bạn Auto Readmore không sử dụng Javascript lấy ảnh đầu tiên làm ảnh thumbnail do mình chỉnh sửa cho các bạn có nhu cầu sử dụng.

Auto Readmore không sử dụng Javascript lấy ảnh đầu tiên làm ảnh thumbnail

Đối với đoạn mã dưới này thì nó khá tương tự với đoạn mã Auto Readmore trước kia, mình chỉnh sửa lại đôi chút thôi, cái này khá đơn giản mà thấy nhiều bạn cũng có nhiêu cầu nên mình chỉnh sơ lại luôn.

Cách thức sử dụng cũng tương tự như cách sử dụng toàn bộ những đoạn mã auto readmore trước kia, bạn tìm đến các thẻ

<data:post.body/>

và thay thế toàn bộ chúng bằng

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
   <b:if cond='data:post.firstImageUrl'>
    <div class='postThumb'>
 <img expr:alt='data:post.title' expr:src='data:post.firstImageUrl' expr:title='data:post.title'/>
    </div>
   </b:if>
   <data:post.snippet/>
  <div class='jump-link'>
   <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
  </div>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

Đoạn mã trên là có hình thì nó hiện không có thì thôi, bạn nào muốn hiện ảnh mặc định cho mấy bà viết không có hình thì xài đoạn mã sau

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
   <b:if cond='data:post.firstImageUrl'>
    <div class='postThumb'>
 <img expr:alt='data:post.title' expr:src='data:post.firstImageUrl' expr:title='data:post.title'/>
    </div>
   <b:else/>
    <div class='postThumb'>
 <img expr:alt='data:post.title' expr:title='data:post.title' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnXRQzh2VJQYayvxDfEMIJRebRx6r0rUb2pswfd5wg8MCdM__hAx97kHMA5tUMo5MNbWyuZBfuIKtAJhhfCgdVZzrw6W1XY0T-DGkBpqMxb6mp2NkCm3JfkuQ8v0jPCDWFBOnYIh4p2vnv/w360-c-h220/no-image.png'/>
    </div>
   </b:if>
   <data:post.snippet/>
  <div class='jump-link'>
   <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
  </div>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

Bước cuối cùng chèn đoạn css sau lên trên thẻ ]]></b:skin>

.postThumb { float: left; margin-right: 20px; width: 300px; height: 250px }
các bạn nhớ thay thế chiều rộng chiều cao cũng như vị trí của hình ảnh mà bạn mong muốn, rồi lưu lại.

Lời kết
Đây là đoạn mã mình viết lại cho mấy bạn có nhu cầu trong không sử dụng Javascript, nhưng vẫn muốn có ảnh up lên ở bên ngoài. Đối với thủ thuật này thì đôi khi hình ảnh sẽ bị bóp méo vì sử dụng css để căn chỉnh nó, bạn có thể sử dụng đoạn js ở bài này với #Blog1 là ID của phần blog, nhưng mà bạn phải lưu ý bỏ nó vào cặp thẻ điều kiện sau

<b:if cond='data:blog.pageType != &quot;index&quot;'>
<b:if cond='data:blog.pageType != &quot;static_page&quot;'>
ĐOẠN JS
</b:if></b:if>
để nó không resize và cắt ở cả trang bài viết nhé.


"nguồn bài viết từ KslZone.NET".
Đọc Bài

Thứ Hai, 29 tháng 9, 2014

AUTO READMORE VỚI THUMBNAIL KHÔNG SỬ DỤNG JAVASCRIPT CHO BLOGGER

Trước đây mình có share một đoạn script duy nhất để giúp các bạn tạo auto readmore với thumbnail, ưu điểm chỉ cần thay thế và chèn một lần duy nhất, nhưng nếu bạn để ý thì nó làm tốc độ tải trang chậm đi một ít vì nó xử lý lại thông tin được đưa ra ngoài trang chủ. Hôm nay, mình xin chia sẻ với các bạn cách tạo auto readmore với thumbnail hoàn toàn không sử dụng javascript của bác Duy Phạm, giúp blog bạn tải nhanh hơn rất nhiều.

Auto readmore với thumbnail không sử dụng javascript cho Blogger


Mình cũng đang sử dụng nó trên một số blog mà mình đang làm bạn có thể xem qua:


Auto readmore không sử dụng javascript cho Blogger
Ưu điểm của thủ thuật này là sử dụng những thứ có sẵn của Blogger giúp tốc độ tải nhanh hơn, nhược điểm thì không để kiểm soát được số lượng ký tự lấy ra từ bài viết, ảnh thumbnail hơi bé (mình sẻ chia sẻ cách khác phục này tại bai khác), và nếu bạn muốn hiểu có thể tham khảo qua các bài viết về thẻ lập trình của mình.

Tạo auto readmore với thumbnail
Bước 1: Đăng nhập vào Blogger >> Mẫu >> Chỉnh sửa HTML

Auto readmore với thumbnail không sử dụng javascript cho Blogger


Bước 2: Các bạn tìm và thay thế toàn bộ thẻ sau

<data:post.body/>

bằng một trong những đoạn mã sau:

1. Auto readmore với hình ảnh:

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
  <div>
   <b:if cond='data:post.thumbnailUrl'>
    <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
   </b:if>
   <data:post.snippet/>
  </div>
  <div class='jump-link'>
   <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
  </div>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

2. Auto readmore với hình ảnh và hiển thị ảnh mặc định cho bài viết không có ảnh:

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
  <div>
   <b:if cond='data:post.thumbnailUrl'>
    <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
   <b:else/>
    <img class='post-thumbnail' alt='no image' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdOZLVA5Uv_Ba1RO7wDU7gwsA4WYnhOWU9fE4LJmuB3ewbl5Q7fhj_hkqAD_nRQ28S12Oyfp3EDCLtnhODj-4BsLK42FlajZZ7KgXxy8sn6OpGIFPT86dv0yHl2HJMGD25SjwIiyzae8xd//' width='72px' height='72px'/>
   </b:if>
   <data:post.snippet/>
  </div>
  <div class='jump-link'>
   <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
  </div>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

3. Auto readmore với hình ảnh. Không readmore với bài viết mới nhất:

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
  <b:if cond='data:blog.url == data:blog.homepageUrl'>
   <b:if cond='data:post.isFirstPost == &quot;true&quot;'>
    <data:post.body/>
     <b:if cond='data:post.hasJumpLink'>
      <div class='jump-link'>
       <a expr:href='data:post.url + &quot;#more&quot;' expr:title='data:post.title'><data:post.jumpText/></a> 
      </div>
     </b:if>
   <b:else/>
    <div>
     <b:if cond='data:post.thumbnailUrl'>
      <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
     </b:if>
     <data:post.snippet/>
    </div>
    <div class='jump-link'>
     <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
    </div>
   </b:if>
  <b:else/>
   <div>
    <b:if cond='data:post.thumbnailUrl'>
     <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
    </b:if>
    <data:post.snippet/>
   </div>
   <div class='jump-link'>
    <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
   </div>
  </b:if>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

4. Auto readmore với hình ảnh và hiển thị ảnh mặc định cho bài viết không có ảnh. Không readmore với bài viết mới nhất:

<b:if cond='data:blog.pageType != &quot;item&quot;'>
 <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
  <b:if cond='data:blog.url == data:blog.homepageUrl'>
   <b:if cond='data:post.isFirstPost == &quot;true&quot;'>
    <data:post.body/>
     <b:if cond='data:post.hasJumpLink'>
      <div class='jump-link'>
       <a expr:href='data:post.url + &quot;#more&quot;' expr:title='data:post.title'><data:post.jumpText/></a> 
      </div>
     </b:if>
   <b:else/>
    <div>
     <b:if cond='data:post.thumbnailUrl'>
      <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
     <b:else/>
      <img class='post-thumbnail' alt='no image' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdOZLVA5Uv_Ba1RO7wDU7gwsA4WYnhOWU9fE4LJmuB3ewbl5Q7fhj_hkqAD_nRQ28S12Oyfp3EDCLtnhODj-4BsLK42FlajZZ7KgXxy8sn6OpGIFPT86dv0yHl2HJMGD25SjwIiyzae8xd//' width='72px' height='72px'/>
     </b:if>
     <data:post.snippet/>
    </div>
    <div class='jump-link'>
     <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
    </div>
   </b:if>
  <b:else/>
   <div>
    <b:if cond='data:post.thumbnailUrl'>
     <img class='post-thumbnail' expr:alt='data:post.title' expr:src='data:post.thumbnailUrl' width='72px' height='72px'/>
    <b:else/>
     <img class='post-thumbnail' alt='no image' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdOZLVA5Uv_Ba1RO7wDU7gwsA4WYnhOWU9fE4LJmuB3ewbl5Q7fhj_hkqAD_nRQ28S12Oyfp3EDCLtnhODj-4BsLK42FlajZZ7KgXxy8sn6OpGIFPT86dv0yHl2HJMGD25SjwIiyzae8xd//' width='72px' height='72px'/>
    </b:if>
    <data:post.snippet/>
   </div>
   <div class='jump-link'>
    <a expr:href='data:post.url' expr:title='data:post.title'><data:post.jumpText/></a>
   </div>
  </b:if>
 <b:else/>
  <data:post.body/>
 </b:if>
<b:else/>
 <data:post.body/>
</b:if>

Chọn vị trí của ảnh thumbnail
Bước 1: Đăng nhập vào Blogger >> Mẫu >> Chỉnh sửa HTML

Auto readmore với thumbnail không sử dụng javascript cho Blogger

Bước 2: tìm đến thẻ ]]></b:skin> và thêm một trong 2 đoạn CSS sau vào bên trên

1. Hiển thị hình ảnh bên trái:

.post-thumbnail{float:left;margin-right:20px}

2. Hiển thị hình ảnh bên phải:

.post-thumbnail{float:right;margin-left:20px}

Lời kết
Do trong bài thẻ data thiếu nên mình giải thích thêm, thẻ <data:post.snippet/> của Blogger là thẻ lấy ra 140 ký tự từ bài viết, thẻ này thường được thấy trong widget "Bài đăng phổ biến". Duy Phạm là một trong những cao thủ về Blogger, anh ấy chia sẻ rất nhiều thủ thuật độc và lạ, và  là một trong những nguồn cảm hứng để mình làm ra blog này :)

"nguồn bài viết từ KslZone.NET".
Đọc Bài

Thứ Năm, 11 tháng 9, 2014

CHIA SẺ LẠI AUTO READMORE VỚI THUMBNAIL BẰNG JAVASCRIPT

Dù dùng đi dùng lại nhiều cách để tạo autoreadmore với thumbnail trong thiết kế template thì tại một vài giao diện mình vẫn sử dụng đến cách tạo bằng Javascript này, đoạn mã này cũng không có gì mới chỉ là chia sẻ lại với các bạn có nhu cầu.

Sơ lược cho những bạn chưa biết, đoạn js này cho phép các bạn kiểm soát số lượng ký tự được lấy ra ngoài trang chủ, tự động lấy hình ảnh đầu tiên trong bài viết làm ảnh thumbnail dù cho có up lên tại Blogger hay không và nhiều tùy chỉnh nhỏ khác nữa.

Auto Readmore với Thumbnail bằng Javascript
Đăng nhập Blogger » Mẫu » Chỉnh sửa HTML tìm ìm đến thẻ </head> và thêm đoạn mã sau lên trên

<script type='text/javascript'>
var thumbnail_mode = "yes"; //yes -with thumbnail, no -no thumbnail
summary_noimg = 430; //summary length when no image
summary_img = 340; //summary length when with image
img_thumb_height = 200;
img_thumb_width = 200;
</script>
<script type='text/javascript'>
//<![CDATA[
function removeHtmlTag(strx,chop){
 if(strx.indexOf("<")!=-1)
 {
  var s = strx.split("<");
  for(var i=0;i<s.length;i++){
   if(s[i].indexOf(">")!=-1){
    s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
   }
  }
  strx =  s.join("");
 }
 chop = (chop < strx.length-1) ? chop : strx.length-2;
 while(strx.charAt(chop-1)!=' ' && strx.indexOf(' ',chop)!=-1) chop++;
 strx = strx.substring(0,chop-1);
 return strx+'...';
}

function createSummaryAndThumb(pID){
 var div = document.getElementById(pID);
 var imgtag = "";
 var img = div.getElementsByTagName("img");
 var summ = summary_noimg;
        if(thumbnail_mode == "yes") {
 if(img.length>=1) {
  imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
  summ = summary_img;
 }
 }
 var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
 div.innerHTML = summary;
}
//]]>
</script>

Bây giờ tìm và  thay thế toàn bộ các thẻ

<data:post.body/>

bằng đoạn mã sau đây

        <b:if cond='data:blog.pageType == &quot;item&quot;'>
        <data:post.body/>
        <b:else/>
        <b:if cond='data:blog.pageType == &quot;static_page&quot;'>
        <data:post.body/>
        <b:else/>
        <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>
        <a class='more' expr:href='data:post.url'><data:post.jumpText/></a>
        </b:if>
        </b:if>

Lưu lại template là hoàn tất

Hướng dẫn tùy chỉnh
Bạn có thể tùy chỉnh các giá trị sau trong đoạn mã
  • thumbnail_mode – để “yes” để hiện ảnh thu nhỏ, và ngược lại “no” không hiện ảnh thủ nhỏ.
  • summary_img – số lượng ký tự lấy ra từ bài viết (bao gồm cả khoảng trắng) khi có ảnh thu nhỏ.
  • summary_noimg – số lượng ký tự lấy ra từ bài viết (bao gồm cả khoảng trắng) khi không ảnh thu nhỏ.
  • img_thumb_height và img_thumb_width - chiều dài và chiều rộng của ảnh tính theo px.
  • Bạn có thể thay thế chữ Đọc tiếp trong widget Blog tại phần Bố cục.

Lời kết
Đối với những giao diện không qua phức tạp thì việc sử dụng Auto Readmore này khá là thích hợp, tại đoạn js này đoạn văn bản được lấy ra sẽ xóa hết mọi tùy chỉnh vốn có của nó. Nếu bạn muốn giữ lại thì mình sẽ chia sẽ tiếp tục đoạn Auto Readmore khác. Bạn cũng có thể tham khảo qua
để tối ưu hơn về tốc độ tải trang, nhưng ít tùy chỉnh.

"nguồn bài viết từ KslZone.NET".
Đọc Bài