Articles by "Thủ thuật Blogspot"

Showing posts with label Thủ thuật Blogspot. Show all posts

Nhiều bạn thường xuyên hỏi _CTPG_ cách tạo hộp Feedburner theo dõi qua email như ở thanh sidebar của mình. Hộp theo dõi qua email này nhìn rất đơn giản nhưng không kém phần đẹp mắt và hiệu quả.

Hướng dẫn tạo hộp Feedburner theo dõi qua email
Hướng dẫn tạo hộp Feedburner theo dõi qua email

Thực chất thì có nhiều cách để giúp mọi người theo dõi chúng ta khi làm bằng Blogspot, thông qua nhiều kênh hỗ trợ khác nhau, nhưng thường thì mọi người sẽ chọn RSS, hay còn gọi là Feed, bởi rất nhanh chóng, dễ dàng và tất nhiên tiện lợi hơn các kênh khác.
Xem thêm: Hướng dẫn tạo nút chia sẻ bài viết hiệu ứng trượt tuyệt đẹp
Các bước để người dùng theo dõi chúng ta sau khi có hộp theo dõi qua email này khá đơn giản, chỉ cần nhập địa chỉ email vào và chọn nút theo dõi là sẽ hoàn thành. Đơn giản và hiệu quả! Cùng xem hướng dẫn nào.

Hộp theo dõi qua email Feed

Hướng dẫn tạo hộp theo dõi qua email bằng Feedburner

Chú ý là, để tạo được hộp theo dõi qua email này thì buộc các bạn phải tạo được RSS (Cũng là Feed đó mà) trước cho mình, cách tạo RSS như thế nào thì xem ở bài viết này nhé: Cách tạo RSS Feedburner cho Blogspot. Còn ở bài này, nếu các bạn chưa tạo RSS thì một là đợi bài tiếp theo của mình, hai là Google xem bài hướng dẫn khác nha.

- Truy cập vào địa chỉ sau: https://feedburner.google.com

Đây là địa chỉ của Feed, nếu bạn đã tạo RSS cho blog của mình thì sẽ có tên blog ở đó. Hãy truy cập vào blog của bạn.

- Chuyển sang tab Publicize:

Cách tạo hộp theo dõi qua email

- Tiếp tục chọn tùy chọn Email Subscriptions:

Cách tạo hộp theo dõi qua email

- Ở mục Subscription Form Code, đây chính là đoạn code để chúng ta chèn vào Blogspot tạo hộp theo dõi qua email. Hãy copy hết đoạn code này:

Cách tạo hộp theo dõi qua email

- Vào Bố cục (Layout), rồi chọn vị trí muốn thêm hộp theo dõi vào, và chọn thêm tiện ích, chọn HTML/Javascript, và cho đoạn code tạo hộp theo dõi lúc nãy vào phần nội dung.
Xem thêm: Hướng dẫn tạo widget xếp hạng bình luận cho Blogspot
Sau đó lưu lại, và thế là ta đã có một hộp theo dõi qua email cho Blogspot rồi đó :)

Mặc dù label của Blogspot theo nhiều người dùng thì rất khó tối ưu và gần như không SEO được. Tuy nhiên, đó chỉ là vấn đề bó hẹp với kiến thức của họ mà thôi. Bạn vẫn có thể tối ưu label tốt, thậm chí biến label của Blogspot thành một bài viết, dễ dàng chỉnh sửa và tối ưu.

Ở bài viết trước, _CTPG_ đã hướng dẫn các bạn cách tối ưu label bằng cách tối ưu tiêu đề và tối ưu mô tả cho các label. Các bạn có thể xem ở đây: http://www.tranbadat.info/2015/08/toi-uu-seo-blogspot-cho-label-cuc-don-gian.html . Nhưng nếu với chỉ nhiêu đó, thì bạn cần một lượng backlink lớn hay SEO một từ khóa dễ mới có thể đưa các label này lên top dễ dàng.

Tối ưu SEO Blogspot - Tối ưu label thành một bài viết
Tối ưu label thành một bài viết
Còn ở bài viết này, _CTPG_ sẽ hướng dẫn các bạn một kiến thức nâng cao hơn nữa, đó là biến Label thành một bài viết, mà ở đó, bạn có thể dễ dàng tùy chỉnh, cập nhật nội dung cho bài viết label này. Nghe có hứng thú không chứ?

Các bạn có thể xem một label minh họa cho bài viết này tại label SEO BLOGSPOT này của mình. Label này thực ra đang đứng 9 từ khóa SEO Blogspot mặc dù không cần backlink, tuy nhiên, nó chỉ đứng 9 mỗi khi mình update nội dung và cập nhật lại cho Google, chứ khoảng 3-4 ngày sau nó lại biến mất, thay bằng 1 bài viết vì có 1 bài viết khác tối ưu tương đương nó và nhưng lại có traffic nhiều hơn.

Thôi, lan man đủ rồi, vào vấn đề chính thôi.

Hướng dẫn tối ưu label thành một bài viết

Ý tưởng thì chính là nó, biến label thành một bài viết. Và nếu các bạn đã đọc qua bài viết tối ưu SEO cho label mình vừa nhắc ở trên, thì bạn sẽ thấy mình tiếp tục áp dụng lại kiến thức ở bài viết đó đấy.

- Kiến thức đó chính là đoạn code này:
<b:if cond='data:blog.url == "URL của trang riêng biệt"'> nội dung sẽ hiển thị </b:if>
Với đoạn code này, bạn sẽ chỉ định nội dung hiển thị bên trong nó chỉ được hiển thị khi truy cập vào URL được chỉ định ở trên.
Có nghĩa là, mình sẽ viết 1 bài viết cho Label này, và áp dụng code trên để chỉ hiển thị nội dung bài viết khi vào label này.

Và đây chính là nội dung bài viết của label SEO Blogspot được mình viết trong code của blog:

Một định dạng cơ bản để biến label thành một bài viết
Một định dạng cơ bản để biến label thành một bài viết (Click vào xem ảnh đầy đủ)

- Vậy, lúc này quan trọng chính là đặt đoạn code chứa bài viết trên ở vị trí nào thôi. Cái này thì tùy vào blog của các bạn. Ý tưởng luôn là đặt ngay vị trí dưới cùng của label, nếu các blog có phân trang thì ngay dưới phần phân trang. Điều này giúp đẹp blog và không ảnh hưởng nhiều tới người xem. (Như của mình đấy)

Đấy, chỉ như vậy thôi. Mình không thể chỉ cặn kẽ, vì các template khác nhau sẽ có các khu vực khác nhau để có thể chèn nội dung. Chúc các bạn tối ưu label thật tốt cho SEO :)

Cách tùy chỉnh hiển thị quảng cáo trên giao diện Mobile trên Blogspot? là câu hỏi được rất nhiều bạn giúp mình giải đáp. Do thời gian gần đây hơi bận nên chưa viết hướng dẫn được, hôm nay có rảnh tí nên viết bài này để hướng dẫn các bạn tối ưu quảng cáo Google Adsense trên cả giao diện Mobile.

Cách tùy chỉnh quảng cáo Adsense trên giao diện mobile

Vì sao phải tùy chỉnh hiển thị quảng cáo Adsense trên Mobile cho Blogspot?

Nếu bạn đang sở hữu tài khoản Google Adsense, bạn sẽ thấy rằng các kích thước quảng cáo nội dung của Google Adsense phần lớn cố định ở các kích thước, như 326x280, 720x90… Tuy nhiên, những kích thước quảng cáo này nếu được đặt lên 1 website có giao diện responsive, thì khi với những điện thoại hay màn hình có kích thước nhỏ dưới 6 inch, các kích thước quảng cáo trên sẽ bị tràn ra ngoài màn hình hay bị các thành phần khác che mất, đây là lại 1 điều cấm kỵ trong chính sách của Google Adsense. Mà đặt như thế này cũng không hề hiệu quả, mà lại làm xấu cả giao diện nữa.

Google Adsense cũng có quảng cáo Responsive, tương thích cho tất cả các kích thước màn hình. Tuy nhiên, thật sự quảng cáo này được mình sử dụng không thấy có sự hữu dụng lắm. Ví dụ như sau: Nếu mình đặt quảng cáo Responsive vào một vị trí có chiều rộng lớn nhất là 720px, thì thay vì tự động chọn kích thước hiển thị (lúc trên các màn hình máy tính) là 720x90 cho các quảng cáo, thì quảng cáo responsive này lại thường xuyên là 300x600, nhìn thật tồi tệ. Thậm chí bạn đặt 1 quảng cáo responsive lên 1 thanh sidebar có chiều rộng khoảng 300px, thì không bao giờ bạn được nhìn thấy một kích thước là 300x250px trên các màn hình máy tính, luôn là 300x600. Đó chính là những lý do mình gần như không sử dụng quảng cáo responsive.
Chính vì những lý do trên, mình luôn phải sử dụng các kích thước có sẵn của Google Adsense, nhưng sử dụng các thủ thuật blogspot để tùy chỉnh hiển thị quảng cáo trên cả máy tính và di động, để đảm bảo giao diện nhìn tốt nhất, lại không vượt quá 3 quảng cáo trên 1 trang hay bị lỗi đè giao diện.

Cách tùy chỉnh quảng cáo Adsense trên giao diện mobile cho Blogspot

Mình muốn hướng dẫn 1 bài đầy đủ, nhưng có vấn đề là mình viết ra rất khó hiểu, đến mình đọc lại cũng không dám chắc các bạn sẽ hiểu mình đang nói về gì. Chính vì thế trong bài viết mình chỉ đưa ra code và công dụng, còn làm thế nào thì là do ý tưởng của mỗi bạn nhé.

- Với các quảng cáo bị đè hay bị tràn khỏi màn hình ở giao diện mobile, cách tốt nhất là không cho quảng cáo hiển thị ở giao diện mobile. Hãy sử dụng code này để ẩn.
.HTMLxxx {display:none;}
Trong đó, .HTMLxxx là class chứa quảng cáo của các bạn. Chèn code này vào code css responsive có max-width khoảng 479px của các bạn, sẽ làm ẩn quảng cáo trên các giao diện có kích thước dưới 479px.

- Còn trường hợp lên giao diện mobile, quảng cáo xuất hiện không đúng ý (Như tụt xuống gần cuối website, quảng cáo ở header thì biến mất, hay nói chung là chẳng có tác dụng quảng cáo gì mấy). Thì các bạn có thể chèn quảng cáo vào những vị trí hiển thị tốt nhất, ví dụ ngay dưới header, trên phần body. Và chỉ cho hiển thị trên mobile. Thì sử dụng code sau:
<b:if cond='data:blog.isMobileRequest == &quot;true&quot;'>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- quang_cao_test_mobile_tranbadat -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-xxxxxxxxxxxxx"
     data-ad-slot="4283379704"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

</b:if>
Trong đó, đoạn code màu xanh là code quảng cáo Adsense có kích thước tốt với giao diện mobile (Ở trên là 300x250), còn đoạn code if bên ngoài, là code chỉ hiển thị trên giao diện Mobile, đổi true thành false thì hiển thị trên tất cả các giao diện, trừ mobile.

Ví dụ: Đoạn code quảng cáo trên mình đặt ngay bên dưới Bài đăng mới của tranbadat.info. Vậy thì...

Đây là trang chủ trên máy tính, chẳng có gì cả.

quảng cáo adsense tren máy tính

Tuy nhiên, đây là trang chủ trên điện thoại, đấy, nó nằm ngay bên dưới đấy ^_^

quang cao google adsense tren mobile

Hy vọng với bài hướng dẫn đơn giản như thế này, sẽ giúp các bạn tùy chỉnh tốt hơn cho quảng cáo Adsense trên website của các bạn. Chúc các bạn thành công. Nếu có cơ hội thì mình sẽ làm 1 video hướng dẫn cặn kẽ hơn nhé. Còn tạm thời nếu có thắc mắc thì cứ cmt bên dưới, mình sẽ trả lời nhé.

Ở bài viết Cách hiển thị ảnh Blogspot bị VNPT chặn, _CTPG_ đã hướng dẫn các bạn cách xử lý vấn đề bị chặn ảnh bởi nhà mạng này một cách thủ công. Tuy nhiên, cách này chỉ nên được áp dụng nếu bạn tự quản lý được hình ảnh post ở Blogspot.

Cách khắc phục ảnh bị lỗi do VNPT chặn bằng Javascript

Ở bài viết này, _CTPG_ sẽ tiếp tục hướng dẫn các bạn cách khắc phục ảnh bị lỗi do VNPT chặn bằng một cách khác: Sử dụng Javascript để hiển thị ảnh, hay chính xác hơn là để thay đổi đường dẫn của ảnh. Vì VNPT chỉ chặn blogspot.com thôi.

Cùng theo dõi hướng dẫn sử dụng javascript để thay đổi đường dẫn ảnh của Blogspot nhé.

Cách khắc phục ảnh lỗi do VNTP chặn trên Blogspot

- Vào trang quản trị Blogger

- Truy cập vào Mẫu (Template) -> Chỉnh sửa HTML (Edit HTML):

Edit HTML

- Sau đó hãy thêm đoạn code bên dưới đây vào phía trên thẻ </body>:
<script type='text/javascript'>
//<![CDATA[
var images = document.getElementsByTagName("img");
for(var i=0;i<images.length;i++) {  
images[i].src = images[i].src.replace(/[0-9]+.bp.blogspot.com/,"lh4.ggpht.com");
}
//]]>
</script>
Ý nghĩa của đoạn code này là gì? Đoạn code Java này sẽ tự động thay đổi các đường dẫn hình ảnh có định dạng từ 1-9.blogspot.com sang đường dẫn lh4.ggpht.com. Vì thực chất ảnh up lên blogspot là ảnh up lên picasa, nên việc thay đổi đường dẫn hình ảnh này sang đường dẫn mới sẽ không ảnh hưởng đến hình ảnh.

- Tuy nhiên, bạn nên kiểm tra lại có phải toàn bộ ảnh đã được thay đổi đường dẫn hay không! Không phải teamplate nào các bạn thêm đoạn code này vào ngay phía trên </body> là được áp dụng đâu. Có thể đoạn code này thêm vào bên dưới các đoạn Javascript khác, và bị các đoạn js này chặn khiến cho nó không được áp dụng. Hãy thử di chuyển đoạn JS hiển thị ảnh này lên trên, miễn nằm trong thẻ <body> là được, và kiểm tra vị trí nào nó hoạt động. Đôi khi cũng gặp hiện tượng nó hoạt động nhưng lại chặn 1 đoạn JS khác, khiến đoạn JS đó không hoạt động được đấy ^_^

Kết thúc vấn đề tại đây, với 2 cách khắc phục ảnh lỗi do bị VNPT chặn được _CTPG_ chia sẻ, hy vọng các bạn có thể khắc phục triệt để lỗi này. Chúc các bạn thành công!

Đa phần hiện nay, các bạn đều sử dụng những template Blogspot tùy chỉnh được chia sẻ trên mạng để làm giao diện cho Blogspot, vì nhiều lý do, trong đó lý do chính là giao diện đó đẹp, được tối ưu và phù hợp nhu cầu làm blog của các bạn.

Cách tối ưu Blogspot có 2 thẻ H1 trên 1 trang
Tối ưu Blogspot có 2 thẻ H1
Tuy nhiên, không phải template Blogspot nào cũng được tối ưu SEO hoàn chỉnh, mà lỗi phổ biến đó là xuất hiện 2 thẻ H1 ở 1 trang bài viết. Thường xuất hiện 2 thẻ H1 khi bạn sử dụng tiêu đề web mình là chữ, còn nếu thay ảnh vào thì vẫn có 2 thẻ H1, nhưng 1 thẻ H1 bị trống.

Điều này ảnh hưởng tới SEO cho Blogspot của bạn, tuy nhiên, nếu có 2 thẻ H1 thật sự thì cũng không ảnh hưởng nhiều tới kết quả đâu. Và, ở bài viết này _CTPG_ sẽ hướng dẫn các bạn thủ thuật tối ưu lại các thẻ H1 của blog các bạn. Đây là thủ thuật mình tối ưu cho chính blog của mình. Hãy cùng theo dõi nhé:

Cách tối ưu Blogspot có 2 thẻ H1

- Làm gì thì làm, đầu tiên là phải backup code trước đã nhé.

- Sau đó thì truy cập vào Chỉnh sửa HTML (Edit HTML)

- Click vào vùng code, sau đó bấm Ctrl + F để mở hộp tìm kiếm, và tìm đến đoạn chữ này:
shrink to fit then we expand the header.
- Ngay phía dưới nó là đoạn code bắt đầu từ:
<b:if cond='data:mobile'>
Cách tối ưu thẻ H1 Blogspot

Chúng ta sẽ thay toàn bộ đoạn code bắt đầu từ đoạn code trên đến thẻ:
</b:includable>
Thẻ này nằm ngay trên thẻ này:
<b:includable id='description'>
Tối ưu H1 cho Blogspot

- Thay toàn bộ đoạn code đó bằng đoạn code đã được mình tối ưu thẻ H1 ở đây (Có thể coi đoạn code dưới này để tìm đoạn code tương tự trong Blogspot của các bạn):
      <b:if cond='data:mobile'>
          <div id='header-inner'>
            <div class='titlewrapper' style='background: transparent'>
              <b:if cond='data:blog.url == data:blog.homepageUrl'>
<h1 class='title' itemprop='name' style='background: transparent; border-width: 0px'>
    <b:include name='title'/>
</h1>
    <b:else/>
<p class='title' itemprop='name' style='background: transparent; border-width: 0px'>
    <b:include name='title'/>
</p>
</b:if>
            </div>
            <b:include name='description'/>
          </div>
        <b:else/>
          <div expr:style='&quot;background-image: url(\&quot;&quot; + data:sourceUrl + &quot;\&quot;); &quot;                        + &quot;background-position: &quot;                        + data:backgroundPositionStyleStr + &quot;; &quot;                        + data:widthStyleStr                        + &quot;min-height: &quot; + data:height                        + &quot;_height: &quot; + data:height                        + &quot;background-repeat: no-repeat; &quot;' id='header-inner'>
            <div class='titlewrapper' style='background: transparent'>
            <b:if cond='data:blog.url == data:blog.homepageUrl'>
<h1 class='title' itemprop='name' style='background: transparent; border-width: 0px'>
    <b:include name='title'/>
</h1>
    <b:else/>
<p class='title' itemprop='name' style='background: transparent; border-width: 0px'>
    <b:include name='title'/>
</p>
</b:if>
            </div>
            <b:include name='description'/>
          </div>
        </b:if>
    <b:else/>
      <!--Show the image only-->
      <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 + &quot;_headerimg&quot;' expr:src='data:sourceUrl' expr:width='data:width' style='display: block'/>
        </a>
        <!--Show the description-->
        <b:if cond='data:imagePlacement == &quot;BEFORE_DESCRIPTION&quot;'>
          <b:include name='description'/>
        </b:if>
      </div>
    </b:if>
  <b:else/>
    <!--No header image -->
    <div id='header-inner'>
      <div class='titlewrapper'>
        <b:if cond='data:blog.url == data:blog.homepageUrl'>
<h1 class='title' itemprop='name'>
<b:include name='title'/>
</h1>
<b:else/>
<p class='title' itemprop='name'>
<b:include name='title'/>
</p>
</b:if>
      </div>
      <b:include name='description'/>
    </div>
  </b:if>
</b:includable>
- Nhớ chú ý thay cho chính xác đoạn code như mình chỉ nhé. Sau đó lưu lại, và kiểm tra lại bằng các công cụ kiểm tra onpage.

- Ngoài ra, vẫn còn 1 đoạn code tối ưu H1 dành cho blog, mình có chia sẻ ở bài viết: Tối ưu thẻ H1, H2 cho Blogspot này, các bạn nên tham khảo thêm, đoạn H1 ở bài viết kia không nằm trong đoạn code tối ưu ở bài viết này.

Xong rồi đấy, nếu sau khi làm xong mà vẫn chưa tối ưu 2 thẻ H1 trên 1 trang thì comment bên dưới để mình xem qua blog của các bạn nhé :)

Lâu lâu trở lại với Blogspot, nay _CTPG_ xin hướng dẫn các bạn thủ thuật tạo nút chia sẻ (share) bài viết có hiệu ứng trượt mở rất độc đáo và đẹp mắt.

Hướng dẫn tạo nút chia sẻ bài viết Blogspot hiệu ứng trượt đẹp mắt

Các bạn có thể xem demo nút share đó tại đây nhé. Về cơ bản, nút share này sẽ được bao phủ lên bởi các một lớp, sau khi rê chuột vào thì lớp này trượt sang 1 bên để lộ nút chia sẻ, rất độc đáo và đẹp mắt. Phải nói là rất cuốn hút.

Nói dông dài làm gì, vào luôn chủ đề thôi:

Hướng dẫn tạo nút chia sẻ bài viết với hiệu ứng trượt đẹp mắt

- Đầu tiên, luôn phải backup code trước khi chỉnh sửa bất kỳ điều gì nha ^_^

- Tiếp theo, chúng ta cần thêm thư viện css cho nút chia sẻ bài viết này đã, bạn hãy thêm thư viện dưới đây phía trên <b:skin>:
<link href='//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css' rel='stylesheet'/>
- Sau đó thêm đoạn css này vào phía trên thẻ ]]></b:skin>:
#share-buttons{
width: 100%;
display: inline-block;
text-align: center;
margin: 20px auto;
}
.share-button{
background:#DCE0E0!important;
position:relative;
display:block;
float:left;
height:40px;
overflow:hidden;
width:150px;
/*border-radius*/
-webkit-border-radius:3px;
   -moz-border-radius:3px;
        border-radius:3px;
margin:0 7px;
}
.icon{
display:block;
float:left;
position:relative;
z-index:3;
height:100%;
vertical-align:top;
width:38px;
-moz-border-radius-topleft:3px;
-moz-border-radius-topright:0;
-moz-border-radius-bottomright:0;
-moz-border-radius-bottomleft:3px;
/*border-radius*/
-webkit-border-radius:3px 0 0 3px;
   -moz-border-radius:3px 0 0 3px;
        border-radius:3px 0 0 3px;
text-align:center;
}
.icon i{
color:#fff;
line-height:42px;
}
.pslide{
z-index:2;
display:block;
height:100%;
left:38px;
position:absolute;
width:112px;
-moz-border-radius-topleft:0;
-moz-border-radius-topright:3px;
-moz-border-radius-bottomright:3px;
-moz-border-radius-bottomleft:0;
/*border-radius*/
-webkit-border-radius:0 3px 3px 0;
   -moz-border-radius:0 3px 3px 0;
        border-radius:0 3px 3px 0;
margin:0;
}
.pslide p{
font-family:Open Sans;
font-weight:400;
border-left:1px solid rgba(255,255,255,0.35);
color:#fff;
font-size:16px;
left:0;
position:absolute;
text-align:center;
top:8px;
width:100%;
margin:0;
}
.share-button .pslide{
/*transition*/
-webkit-transition:all .2s ease-in-out;
   -moz-transition:all .2s ease-in-out;
     -o-transition:all .2s ease-in-out;
        transition:all .2s ease-in-out;
}
.facebook1 iframe{
display:block;
position:absolute;
right:5px;
top:6px;
z-index:1;
}
.facebook2 iframe{
display:block;
position:absolute;
right:5px;
top:6px;
z-index:1;
}
.twitter iframe{
width:90px!important;
right:5px;
top:10px;
z-index:1;
display:block;
position:absolute;
}
.google #___plusone_0{
width:70px!important;
top:10px;
right:15px;
position:absolute;
display:block;
z-index:1;
}
.facebook1:hover .pslide{
left:-90px;
}
.facebook2:hover .pslide{
left:150px;
}
.twitter:hover .pslide{
left: -90px;
}
.google:hover .pslide{
left: 150px;
}
.facebook1 .icon,.facebook1 .pslide{
background:#305c99;
}
.facebook2 .icon,.facebook2 .pslide{
background:#305c99;
}
.twitter .icon,.twitter .pslide{
background:#00cdff;
}
.google .icon,.google .pslide{
background:#d24228;
}

- Về cơ bản chúng ta đã xong phần CSS định dạng cho đoạn code chia sẻ bài viết trong Blogspot này, giờ thì thêm đoạn Javascript này phía trên thẻ </body>:
<script type='text/javascript'>
/*<![CDATA[*/
(function () {
    var a = document.getElementById('SocialBar');
    var b = document.getElementById('social_share');
    b.innerHTML = a.innerHTML;
    a.parentNode.removeChild(a)
})();
/*]]>*/</script>
- Và cuối cùng, thêm đoạn HTML này ngay vị trí bạn muốn hiển thị nút chia sẻ:
<div id='social_share'>
<div id='share-buttons'>
<div class='facebook2 share-button'>
<i class='icon'>
<i class='fa fa-facebook'/></i><div class='pslide'><p> facebook </p>
</div>
<div class='fb-like' data-action='like' data-layout='button_count' data-share='false' data-show-faces='false'/>
</div>
<div class='twitter share-button'>
<i class='icon'>
<i class='fa fa-twitter'>
</i>
</i>
<div class='pslide'>
<p> twitter </p>
</div>
 <a class='twitter-share-button' data-count='horizontal' data-related='' data-via='' expr:data-text='data:post.title' expr:data-url='data:post.url' href='http://twitter.com/share' title='Share via Twitter'>
               
                </a>
                <script async='async' src='http://platform.twitter.com/widgets.js' type='text/javascript'/>
</div>
<div class='google share-button'>
<i class='icon'>
<i class='fa fa-google-plus'>
</i>
</i>
<div class='pslide'>
<p> google+ </p>
</div>
<div class='g-plusone' data-count='true' data-size='medium' expr:data-href='data:post.url' rel='nofollow'/>
                <script type='text/javascript'>
                  window.___gcfg = {lang: &#39;id&#39;};
                                    (function() {
                                    var po = document.createElement(&#39;script&#39;); po.type = &#39;text/javascript&#39;; po.async = true;
                                    po.src = &#39;https://apis.google.com/js/plusone.js&#39;;
                                    var s = document.getElementsByTagName(&#39;script&#39;)[0]; s.parentNode.insertBefore(po, s);
                                   })();
                </script>
</div>
<div class='facebook1 share-button'>
<i class='icon'>
<i class='fa fa-facebook'/></i><div class='pslide'><p> fb share </p>
</div>
  <a class='fb-share-button' name='fb_share' rel='nofollow' share_url='&quot;http://www.facebook.com/sharer.php?u=&quot; + data:blog.url' type='button_count'/>
</div>
</div>
</div>
Xong, lưu lại và tận hưởng thành quả thôi. Nút chia sẻ bài viết này khá lớn, nổi bật nên càng tạo thuận lợi cho người đọc chia sẻ bài viết. Chúc các bạn thành công. Có gì thắc mắc thì cmt bên dưới _CTPG_ trả lời nhé ^_^

Nếu bạn đang làm Blogspot, và đang tìm cách ẩn/hiện widget thì bắt buộc bạn phải có được ID của widget đó. Hoặc bạn đang muốn sticky/float một widget nào đó thì bạn cũng cần phải có ID widget. Và rất rất nhiều lý do khác để bạn cần phải có ID widget để có thể tùy chỉnh giao diện theo mong muốn của mình.

Cách tìm ID widget trong Blogspot

Hướng dẫn lấy widget ID trong Blogspot

Như đã nói ở trên, chúng ta cần phải có ID widget để sử dụng trong nhiều trường hợp khác nhau khi cần chỉnh code, tinh chỉnh giao diện. Ở đây mình sẽ hướng dẫn các bạn 2 cách để lấy id widget:

1. Sử dụng inspect element của các trình duyệt để lấy widget id:

- Truy cập vào trang quản trị Blogger

- Vào Bố cục (layout):
Cách tìm ID của một widget trong Blogspot

- Chuột phải vào widget cần lấy id, chọn Kiểm tra phần tử (Inspect element):

Cách tìm ID của một widget trong Blogspot

- Hãy để ý trên ảnh, và bạn sẽ lấy được ID widget:

Cách tìm ID của một widget trong Blogspot

2. Sử dụng đường dẫn widget để lấy widget id:

- Tương tự như các 1, truy cập vào trang quản trị blogger -> Bố cục:
Cách tìm ID của một widget trong Blogspot

- Chọn widget cần lấy ID, chọn Chỉnh sửa (Edit):

Cách tìm ID của một widget trong Blogspot

- Ở đường dẫn trên cùng của cửa sổ mới bật ra, kéo xuống cuối đường dẫn sẽ thấy widget ID:

Cách tìm ID của một widget trong Blogspot

Hi vọng các bạn thích bài viết này và mong rằng nó sẽ giúp các bạn mới tập làm blog hay làm web. Cảm ơn các bạn đã ghé thăm _CTPG_. Nếu cảm thấy hữu ích hãy đăng ký nhận bài viết mới qua mail và chia sẻ bài viết với mọi người nhé.

Với những trang lỗi 404, nếu không được tùy chỉnh gì thì nó thật sơ sài và chán ngắt ^_^ Vì thế, với mục đích làm đẹp trang 404, thì mình sẽ hướng dẫn các bạn cách tạo trang lỗi 404 với 1 hộp tìm kiếm đẹp cho Blogspot của bạn.

Thay trang lỗi 404 bằng hộp tìm kiếm đẹp cho Blogspot

Trang lỗi 404 là gì?

Là trang sẽ xuất hiện mỗi khi người dùng truy cập vào web nhưng địa chỉ này không tồn tại, có thể đường dẫn này là của 1 bài viết cũ đã bị xóa, cũng có thể đó là 1 đường dẫn chưa từng tồn tại, do người dùng gõ nhầm. Trang 404 sẽ thông báo cho độc giả biết rằng bài viết đã bị xóa hoặc đường dẫn chưa từng tồn tại, và độc giả nên vào 1 đường dẫn khác.

Lợi ích của trang 404 là gì?

Như đã nói ở trên, trang 404 thông báo cho người dùng biết rằng đường dẫn này đã không tồn tại hay không còn tồn tại nữa. Ngoài ra trang 404 giúp thông báo với các bots tìm kiếm trang không tồn tại và điều hướng bots trên web, việc không có trang 404 sẽ làm cho website bị đánh giá thấp vì quá nhiều đường dẫn không tồn tại và báo lỗi.

Hướng dẫn cách tạo trang lỗi 404 với hộp tìm kiếm đẹp cho Blogspot

Vì trang 404 mặc định nó sẽ chẳng có gì, nhìn sẽ mất cảm tình. Vì thế, với thủ thuật blogspot này, mình muốn đưa 1 hộp tìm kiếm vào trang này, nhằm giúp người dùng tìm kiếm nội dung mình cần thông qua nó nếu gặp phải trang lỗi 404.

Trang lỗi 404 tùy chỉnh

- Truy cập vào trang quản trị Blogger

- Vào Cài đặt (Settings) -> Tùy chọn tìm kiếm (Search preferences):

Tùy chọn tìm kiếm (Search preferences)

- Tại mục Lỗi và chuyển hướng (Error and redirections) -> Không tìm thấy trang tùy chỉnh (Custom page not found), thêm vào đoạn code sau:

Không tìm thấy trang tùy chỉnh

<style>
#search-button-links1 {
    position: relative;
    top: 0;
    right: 0;
    height: 60px;
    width: 580px;
    font-size: 18px;
    color: #000;
    text-align: center;
    text-decoration:none;
    line-height: 42px;
    border-width: 0;
    background-color: #5caddf;
margin:5px;
    cursor: pointer;
}
#search-box1 {
    position: relative;
    width: 100%;
    margin: 0;
}
#search-form1 {
    height: 40px;
    border: 1px solid #999;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #fff;
    overflow: hidden;
}
#search-text1 {
    font-size: 14px;
    color: #ddd;
    border-width: 0;
    background: transparent;
}
#search-box input[type="text"] {
    width: 90%;
    padding: 11px 0 12px 1em;
    color: #333;
    outline: none;
}
#search-button1 {
    position: absolute;
    top: 0;
    right: 0;
    height: 42px;
    width: 80px;
    font-size: 14px;
    color: #fff;
    text-align: center;
    line-height: 42px;
    border-width: 0;
    background-color: #4d90fe;
    -webkit-border-radius: 0px 5px 5px 0px;
    -moz-border-radius: 0px 5px 5px 0px;
    border-radius: 0px 5px 5px 0px;
    cursor: pointer;
}
</style>
<div id='search-box1'>
  <form action='/search' id='search-form1' method='get' target='_top'>
    <input id='search-tex1t' name='q' placeholder='Tìm kiếm trên tranbadat.info' type='text'/>
    <button id='search-button1' type='submit'><span>Tìm kiếm</span></button>
  </form>
</div>
<p style="color:#e33633; font-family:verdana, sans serif; font-size:16px; padding:24px; text-decoration:none">Trang này đã được xóa hoặc chưa từng tồn tại - Vui lòng truy cập <a href="http://www.tranbadat.info">_CTP_</a>
Bạn có thể thay các đoạn chữ và link màu xanh tùy theo ý của bạn nhé, hoặc để nguyên đó mà xài thôi.
- Sau khi chỉnh sửa xong thì lưu lại. Và hãy kiếm tra web của bạn bằng 1 đường dẫn bất kỳ để dẫn tới trang lỗi 404 xem. ^_^

Widget xếp hạng bình luận (Hay top commentators) sẽ xếp hạng các blogger bình luận nhiều nhất trên blog của bạn, cung cấp cho bạn chi tiết số bình luận của blogger đó trên website bạn trong khoảng thời gian nhất định.

Tạo widget xếp hạng bình luận (Top commentators) cho Blogspot

Lợi ích gì từ bình luận và widget xếp hạng bình luận?

Bình luận là một phần của Blogspot, việc bình luận nhiều giúp cho nội dung bài viết được tươi mới trong mắt bots và tạo ra sự trao đổi, tương tác giữa những người dùng trong blog. Trang blog có càng nhiều bình luận thì càng tốt, tương tác càng nhiều, càng chất lượng, sẽ giúp chúng ta hỗ trợ cho việc SEO Blogspot dễ dàng hơn.
Widget xếp hạng bình luận ngoài việc cho mọi người biết những ai tương tác nhiều trên blog này, thì nó còn giúp níu giữ độc giả. Bạn có cảm thấy hãnh diện khi thấy mình nằm trong danh sách này ở một blog lớn không? Và vô hình chung, việc xếp hạng bình luận này có thể tạo sư ganh đua giữa những độc giả bằng cách comment trao đổi để thay đổi xếp hạng của mình ^_^

Đây là ảnh ví dụ nếu sử dụng widget top commentators này cho Blogspot của mình:

widget xếp hạng bình luận (Top commentators)

Hướng dẫn tạo widget xếp hạng bình luận (Top commentators) cho Blogspot

Với widget này, số bình luận sẽ nằm bên phải tên người bình luận nhé.
- Truy cập vào trang quản trị Blogger:

- Vào Bố cục (Layout), chọn vị trí muốn hiển thị widget xếp hạng bình luận, và thêm tiện ích (Add widget):

-  Chọn HTML/JavaScript, và thêm đoạn code sau vào bên trong nó:
<style type="text/css">
.top-commentators {
margin: 3px 0;
border-bottom: 1px dotted #ccc;
}
.avatar-top-commentators {
vertical-align:middle;
border-radius: 30px;
}
.top-commentators .commenter-link-name {
padding-left:0;
}
</style>
<script type="text/javascript">
var maxTopCommenters = 8;
var minComments = 1;  
var numDays = 0;      
var excludeMe = true;  
var excludeUsers = ["Anonymous", "_CTPG_ 2015", "Trần Bá Đạt _CTPG_"];
var maxUserNameLength = 42;
//
var txtTopLine = '<b>[#].</b> [image] [user] ([count])';
var txtNoTopCommenters = 'No top commentators at this time.';
var txtAnonymous = '';
//
var sizeAvatar = 33;
var cropAvatar = true;
//
var urlNoAvatar = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPBmBZM85Wf_WBODQM5IJ4VHY2InqR4Rj13uVVZYJmfdzrIu28G9lw2HACK3F3AN-JDTTNTddioa97ZwZm7XVHlp11_8T9Qn7afipt67PjxzETQen4dMXc-R2ZIXBACBezGP2OsmPcwcXi/s1600/avatar_blue_m_96.png" + sizeAvatar;
var urlAnoAvatar = 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguODi0o8nJf8pf4poeRfigZHgRN5XYNA1Ng8W8uKXgoURZECq7mqlbonXplGZqz98YRQo1BhQB05qm-0WmzPOnVcRkG_Y_MBimQlm30vOKn4pakj_t1yhP1w9bna8QH3935vcYLyCMFp1X/s1600/avatar1.png' + sizeAvatar;
var urlMyProfile = '';
var urlMyAvatar = '';
if(!Array.indexOf) {
 Array.prototype.indexOf=function(obj) {
  for(var i=0;i<this.length;i++) if(this[i]==obj) return i;
  return -1;
}}
function replaceTopCmtVars(text, item, position)
{
  if(!item || !item.author) return text;
  var author = item.author;
  var authorUri = "";
  if(author.uri && author.uri.$t != "")
    authorUri = author.uri.$t;
  var avaimg = urlAnoAvatar;
  var bloggerprofile = "http://www.blogger.com/profile/";
  if(author.gd$image && author.gd$image.src && authorUri.substr(0,bloggerprofile.length) == bloggerprofile)
    avaimg = author.gd$image.src;
  else {
    var parseurl = document.createElement('a');
    if(authorUri != "") {
      parseurl.href = authorUri;
      avaimg = 'http://www.google.com/s2/favicons?domain=' + parseurl.hostname;
    }
  }
  if(urlMyProfile != "" && authorUri == urlMyProfile && urlMyAvatar != "")
    avaimg = urlMyAvatar;
  if(avaimg == "http://img2.blogblog.com/img/b16-rounded.gif" && urlNoAvatar != "")
    avaimg = urlNoAvatar;
  var newsize="s"+sizeAvatar;
  avaimg = avaimg.replace(/\/s\d\d+-c\//, "/"+newsize+"-c/");
  if(cropAvatar) newsize+="-c";
  avaimg = avaimg.replace(/\/s\d\d+(-c){0,1}\//, "/"+newsize+"/");
  var authorName = author.name.$t;
  if(authorName == 'Anonymous' && txtAnonymous != '' && avaimg == urlAnoAvatar)
    authorName = txtAnonymous;
  var imgcode = '<img class="avatar-top-commentators" height="'+sizeAvatar+'" width="'+sizeAvatar+'" title="'+authorName+'" src="'+avaimg+'" />';
  if(authorUri!="") imgcode = '<a href="'+authorUri+'">'+imgcode+'</a>';
  if(maxUserNameLength > 3 && authorName.length > maxUserNameLength)
    authorName = authorName.substr(0, maxUserNameLength-3) + "...";
  var authorcode = authorName;
  if(authorUri!="") authorcode = '<a class="commenter-link-name" href="'+authorUri+'">'+authorcode+'</a>';
  text = text.replace('[user]', authorcode);
  text = text.replace('[image]', imgcode);
  text = text.replace('[#]', position);
  text = text.replace('[count]', item.count);
  return text;
}
var topcommenters = {};
var ndxbase = 1;
function showTopCommenters(json) {
  var one_day=1000*60*60*24;
  var today = new Date();
  if(urlMyProfile == "") {
    var elements = document.getElementsByTagName("*");
    var expr = /(^| )profile-link( |$)/;
    for(var i=0 ; i<elements.length ; i++)
      if(expr.test(elements[i].className)) {
        urlMyProfile = elements[i].href;
        break;
      }
  }
  if(json && json.feed && json.feed.entry && json.feed.entry.length) for(var i = 0 ; i < json.feed.entry.length ; i++ ) {
    var entry = json.feed.entry[i];
    if(numDays > 0) {
      var datePart = entry.published.$t.match(/\d+/g);
      var cmtDate = new Date(datePart[0],datePart[1]-1,datePart[2],datePart[3],datePart[4],datePart[5]);
 
      var days = Math.ceil((today.getTime()-cmtDate.getTime())/(one_day));
      if(days > numDays) break;
    }
    var authorUri = "";
    if(entry.author[0].uri && entry.author[0].uri.$t != "")
      authorUri = entry.author[0].uri.$t;
    if(excludeMe && authorUri != "" && authorUri == urlMyProfile)
      continue;
    var authorName = entry.author[0].name.$t;
    if(excludeUsers.indexOf(authorName) != -1)
      continue;
    var hash=entry.author[0].name.$t + "-" + authorUri;
    if(topcommenters[hash])
      topcommenters[hash].count++;
    else {
      var commenter = new Object();
      commenter.author = entry.author[0];
      commenter.count = 1;
      topcommenters[hash] = commenter;
    }
  }
  if(json && json.feed && json.feed.entry && json.feed.entry.length && json.feed.entry.length == 200) {
    ndxbase += 200;
    document.write('<script type="text/javascript" src="http://'+window.location.hostname+'/feeds/comments/default?redirect=false&max-results=200&start-index='+ndxbase+'&alt=json-in-script&callback=showTopCommenters"></'+'script>');
    return;
  }
  // convert object to array of tuples
  var tuplear = [];
  for(var key in topcommenters) tuplear.push([key, topcommenters[key]]);
  tuplear.sort(function(a, b) {
    if(b[1].count-a[1].count)
        return b[1].count-a[1].count;
    return (a[1].author.name.$t.toLowerCase() < b[1].author.name.$t.toLowerCase()) ? -1 : 1;
  });
  var realcount = 0;
  for(var i = 0; i < maxTopCommenters && i < tuplear.length ; i++) {
    var item = tuplear[i][1];
    if(item.count < minComments)
        break;
    document.write('<di'+'v class="top-commentators">');
    document.write(replaceTopCmtVars(txtTopLine, item, realcount+1));
    document.write('</d'+'iv>');
    realcount++;
  }
  if(!realcount)
    document.write(txtNoTopCommenters);
}
document.write('<script type="text/javascript" src="http://'+window.location.hostname+'/feeds/comments/default?redirect=false&max-results=200&alt=json-in-script&callback=showTopCommenters"></'+'script>');
</script>
Trong đó:
  • Số 0 ở numDays đó là số ngày lấy xếp hạng bình luận. Nếu để số 0 tức sẽ lấy toàn thời gian. Còn để số khác ví dụ như 30, thì xếp hạng bình luận sẽ lấy trong 30 ngày gần nhất.
  • Chữ màu xanh, các bạn thay tên G+ của các bạn vào nếu không muốn nó xếp hạng mình vào đó.
  • Số 8 màu đỏ, nằm trong var maxTopCommenters = 8, tức là chỉ hiển thị tối đa top 8 người bình luận nhiều nhất, muốn chuyển thành top 10 thì cứ đổi số 8 thành 10 thôi.
  • var sizeAvatar = 33, số 33 tức avatar có kích thước là 33x33 px, muốn to hay nhỏ hơn thì cứ thay đổi số 33.

- Lưu lại, và hoàn thành!
Sau khi lưu lại bạn sẽ thấy xếp hạng bình luận cho Blogspot của mình. Khá đẹp và bắt mắt đấy nhé ^_^ Chúc bạn có blog đẹp!

Bạn muốn một trang chủ Blogspot có giao diện đẹp, hấp dẫn giống một trang báo tương tự như của tranbadat.info hay nhiều trang web khác? Các bài viết sẽ hiển thị theo các label, giúp chúng ta phân ra nhiều chuyên mục tại trang chủ, nhằm giúp độc giả tiếp cận nhiều hơn với các bài viết trên blog.

Hiển thị bài viết theo label tại trang chủ Blogspot

Thủ thuật Blogspot này sẽ sử dụng các label để hiển thị các bài viết trong các label này. Ví dụ, các bạn có thể thấy ở trang chủ của mình. Đó là các label: Blogspot, Windows, SEO, Thủ thuật CNTTNinja Coming. Mỗi label sẽ hiển thị các bài viết nằm trong Label đó. Rõ ràng với cách hiển thị truyền thống là phân trang của blogspot thì các phân các chuyên mục như thế này giúp độc giả dễ dàng tiếp cận các thông tin mà chúng ta đang cung cấp.

Hướng dẫn hiển thị bài viết theo label tại trang chủ Blogspot

- Như thường lệ, tốt nhất trước khi chỉnh sửa chúng ta nên Backup lại code web trước đã.

- Truy cập vào trang quản trị Blogger: https://www.blogger.com

- Vào Mẫu (Template) -> Chỉnh sửa HTML (Edit HTML):

edit html


- Click vào vùng code, và tìm đến thẻ ]]></b:skin>, sau đó thêm đoạn code này vào phía trên nó:
img.label_thumb{float:left;margin-right:15px !important;height:65px; /* Thumbnail height */width:65px; /* Thumbnail width */border: 1px solid #ff00ff;}
#label_with_thumbs {float: left;width: 100%;min-height: 80px;margin: 0px 15px 2px 0px;padding: 1;}ul#label_with_thumbs li {padding:6px 0;min-height:60px;margin-bottom:1px;border-bottom: 1px solid #ff99ff;}
#label_with_thumbs li{list-style: none ;padding-left:1px !important;}
#label_with_thumbs a { text-transform: none;}#label_with_thumbs strong {padding-left:1px; }
- Tiếp tục tìm đến thẻ <head> và thêm đoạn code này vào phía dưới nó:
 <script type='text/javascript'>//<![CDATA[function labelthumbs(json){document.write('<ul id="label_with_thumbs">');for(var i=0;i<numposts;i++){var entry=json.feed.entry[i];var posttitle=entry.title.$t;var posturl;if(i==json.feed.entry.length)break;for(var k=0;k<entry.link.length;k++){if(entry.link[k].rel=='replies'&&entry.link[k].type=='text/html'){var commenttext=entry.link[k].title;var commenturl=entry.link[k].href;}if(entry.link[k].rel=='alternate'){posturl=entry.link[k].href;break;}}var thumburl;try{thumburl=entry.media$thumbnail.url;}catch(error){s=entry.content.$t;a=s.indexOf("<img");b=s.indexOf("src=\"",a);c=s.indexOf("\"",b+5);d=s.substr(b+5,c-b-5);if((a!=-1)&&(b!=-1)&&(c!=-1)&&(d!="")){thumburl=d;}else thumburl='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhazHSaCbVJduiWfOh9X9JSWfRvWlykE7xI0zf2oBi1JFhEjB9eTjM8FLz2-v-FFeh6hpQxLo_cZfX-4HNYn9oukyrJHXjKqt_ghlUKm0IkNSXh0iP8u9vj4_otq-Qfjt5u1vgN0et8tN0/s1600/picture_not_available.png';}var postdate=entry.published.$t;var cdyear=postdate.substring(0,4);var cdmonth=postdate.substring(5,7);var cdday=postdate.substring(8,10);var monthnames=new Array();monthnames[1]="Jan";monthnames[2]="Feb";monthnames[3]="Mar";monthnames[4]="Apr";monthnames[5]="May";monthnames[6]="June";monthnames[7]="July";monthnames[8]="Aug";monthnames[9]="Sept";monthnames[10]="Oct";monthnames[11]="Nov";monthnames[12]="Dec";document.write('<li class="clearfix">');if(showpostthumbnails==true)document.write('<a href="'+posturl+'" target ="_top"><img class="label_thumb" src="'+thumburl+'"/></a>');document.write('<strong><a href="'+posturl+'" target ="_top">'+posttitle+'</a></strong><br>');if("content"in entry){var postcontent=entry.content.$t;}elseif("summary"in entry){var postcontent=entry.summary.$t;}else var postcontent="";var re=/<\S[^>]*>/g;postcontent=postcontent.replace(re,"");if(showpostsummary==true){if(postcontent.length<numchars){document.write('');document.write(postcontent);document.write('');}else{document.write('');postcontent=postcontent.substring(0,numchars);var quoteEnd=postcontent.lastIndexOf(" ");postcontent=postcontent.substring(0,quoteEnd);document.write(postcontent+'...');document.write('');}}var towrite='';var flag=0;document.write('<br>');if(showpostdate==true){towrite=towrite+monthnames[parseInt(cdmonth,10)]+'-'+cdday+' - '+cdyear;flag=1;}if(showcommentnum==true){if(flag==1){towrite=towrite+' | ';}if(commenttext=='1 Comments')commenttext='1 Comment';if(commenttext=='0 Comments')commenttext='No Comments';commenttext='<a href="'+commenturl+'" target ="_top">'+commenttext+'</a>';towrite=towrite+commenttext;flag=1;;}if(displaymore==true){if(flag==1)towrite=towrite+' | ';towrite=towrite+'<a href="'+posturl+'" class="url" target ="_top">More »</a>';flag=1;;}document.write(towrite);document.write('</li>');if(displayseparator==true)if(i!=(numposts-1))document.write('');}document.write('</ul>');}//]]></script>
Sau đó lưu template lại.
- Cuối cùng, vào Bố cục (Layout), chọn vị trí mà bạn muốn hiển thị theo label, và thêm tiện ích (Add widget), chọn HTML/Javascript và thêm đoạn code này vào trong nó:
<script type='text/javascript'>var numposts = 3;var showpostthumbnails = true;var displaymore = false;var displayseparator = true;var showcommentnum = false;var showpostdate = false;var showpostsummary = true;var numchars = 100;</script> <script type="text/javascript" src="/feeds/posts/default/-/label name?published&alt=json-in-script&callback=labelthumbs"></script>
Trong đó, chổ label name, các bạn thay bằng tên label muốn hiển thị ở trang chủ nhé.

- Lưu lại và tận hưởng thành quả, bạn đã có thể hiển thị bài viết theo label tại trang chủ blogspot rồi đấy.

Và nếu muốn thêm các label khác, bạn chỉ cần lấy đoạn code phía trên đổi label name thành các label khác rồi thêm vào các vị trí muốn thôi. Và để có giao diện thật đẹp như của mình thì các bạn cần biết CSS để chỉnh sửa bố cục trang web nhé.

Bạn có thấy rằng ở rất nhiều blog trong hộp bình luận có sự khác biệt giữa quản trị viên và khách không? Đó thường là những icon nhỏ như dấu tick, hình người (như của mình) hay là chữ Admin... Giúp người xem dễ theo dõi và biết đâu là Admin web và đâu là khách viếng thăm. Việc thêm các icon nhỏ như vậy giúp tạo ấn tượng cho người dùng, và những bình luận của admin sẽ được chú ý hơn.

Thêm xác nhận admin trong bình luận cho Blogspot
Nhiều template của Blogspot không hề có tính năng này, admin bình luận cũng giống như một thành viên bình luận thôi. Vì thế mình sẽ hướng dẫn các bạn thủ thuật thêm xác nhận admin thuật này, để không bỏ qua những lợi ích mà nó mang lại.

Hướng dẫn thêm xác nhận Admin trong bình luận Blogspot

- Truy cập vào trang quản trị Blogger: https://www.blogger.com/

- Vào Mẫu (Template) -> Chỉnh sửa HTML (Edit HTML):

Edit HTML

- Click vào vùng code và tìm đoạn code sau:
.comments .comments-content .icon.blog-author
- Sau đó xóa hết toàn bộ code bên trong nó, code đó sẽ giống như thế này nhé:
background-repeat: no-repeat;  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEgAACxIB0t1+/AAAAAd0SU1FB9sLFwMeCjjhcOMAAAD+SURBVDjLtZSvTgNBEIe/WRRnm3U8RC1neQdsm1zSBIU9VVF1FkUguQQsD9ITmD7ECZIJSE4OZo9stoVjC/zc7ky+zH9hXwVwDpTAWWLrgS3QAe8AZgaAJI5zYAmc8r0G4AHYHQKVwII8PZrZFsBFkeRCABYiMh9BRUhnSkPTNCtVXYXURi1FpBDgArj8QU1eVXUzfnjv7yP7kwu1mYrkWlU33vs1QNu2qU8pwN0UpKoqokjWwCztrMuBhEhmh8bD5UDqur75asbcX0BGUB9/HAMB+r32hznJgXy2v0sGLBcyAJ1EK3LFcbo1s91JeLwAbwGYu7TP/3ZGfnXYPgAVNngtqatUNgAAAABJRU5ErkJggg==); 
- Và sau đó thay đoạn code dưới đây vào:
background: url("https://dl.dropboxusercontent.com/s/gp8fhc34w2rka9h/verified%20page.png") no-repeat scroll 0 0 transparent;
Trong đó, đường dẫn màu xanh là đường dẫn cho icon làm xác nhận Admin, như trên là dấu tick màu xanh, các bạn có thể tạo ra các icon khác thay vào đường dẫn đó nhé.

Xem thêm:
- Lưu template lại và tận hưởng thành quả ^_^

Nếu có thắc mắc nào về việc thêm xác nhận Admin trong bình luận thì comment bên dưới nhé.

Bạn muốn trang web của mình mới lạ với mỗi lượt truy cập, nhằm làm cho người xem đỡ nhàm chán với giao diện hiện tại? Mình đề xuất các bạn nên thay đổi màu nền cho Blogspot của bạn, và mình sẽ hướng dẫn một thủ thuật blogspot giúp các bạn tự động thay đổi màu nền mỗi khi truy cập vào trang blog.

Hướng dẫn tự động thay đổi màu nền cho Blogspot

Cách thức hoạt động của quá trình thay đổi màu nền

Trước khi vào hướng dẫn mình sẽ giải thích một tí về cơ chế hoạt động của phương pháp ở bài này: Đó là sử dụng JQuery để tự động hóa việc thay đổi màu nền mỗi khi trang web được làm mới. Bất cứ khi nào trang blogspot của bạn được refresh thì màu nền sẽ ngay lập tức thay đổi.

Có nghĩa là mỗi khi người xem refresh trang blog của bạn, thì đồng nghĩa họ sẽ nhận được một màu nền mới, có lẽ nó sẽ giúp tạo ấn tượng hơn với người xem.

Hướng dẫn tự động thay đổi màu nền cho Blogspot

Dưới đây là các bước để thay đổi màu nền, các bạn chỉ cần làm theo hướng dẫn là được.

- Truy cập vào trang quản trị Blogger của bạn ở địa chỉ: https://www.blogger.com

- Vào Mẫu (Template) -> Chỉnh sửa HTML (Edit HTML):

Hướng dẫn tự động thay đổi màu nền cho Blogspot

- Giờ click vào vùng code, sau đó bấm Ctrl + F để mở hộp tìm kiếm, và tìm đến thẻ </head>, thêm đoạn code này vào ngay bên trên nó:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js?ver=1.5' type='text/javascript'/>
<script type='text/javascript'>//<![CDATA[
function get_random_color(){var e="0123456789ABCDEF".split("");var t="#";for(var n=0;n<6;n++){t+=e[Math.round(Math.random()*14)]}return t}$(function(){$(".post").each(function(){$(this).css("background-color",get_random_color())})})//]]></script>
Lưu ý, nếu template bạn đã có sẵn jquery.min.js thì bạn có thể bỏ đoạn code này đi:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js?ver=1.5' type='text/javascript'/>
 - Lưu template lại
Sau khi lưu template lại thì bạn hãy thử ra kiểm tra blog mình xem thế nào, bạn sẽ thấy mỗi lần bạn F5 thì blog của bạn sẽ tự động thay đổi màu nền. Khá hấp dẫn phải không nào? ^^

Sitemap là một thủ thuật Blogspot tạo ra một nơi chứa tất cả các bài viết, các label để tiện cho người dùng tìm kiếm, theo dõi. Sitemap được hướng dẫn ở bài này có giao diện khá đẹp, các bạn có thể xem ảnh demo bên dưới:
Hướng dẫn tạo sitemap cực đẹp cho Blogspot
Trước đây _CTPG_ đã từng có 1 bài viết hướng dẫn tạo sitemap, tuy nhiên, giao diện ở sitemap theo hướng dẫn đó chỉ đơn thuần là sắp xếp theo hàng dọc và từng label và bài viết sắp xếp liên tục nhau từ trên xuống dưới. Nên nếu có nhiều bài viết thì chắc chắn sitemap trên sẽ rất dài. Còn với sitemap được hướng dẫn ở bài này lại có giao diện sắp xếp rất khoa học. Nói chung là đẹp :)

Hướng dẫn tạo sitemap cực đẹp cho Blogspot


- Truy cập vào trang quản trị Blogger: https://www.blogger.com

- Vào Trang (Page), tiếp tục tạo trang mới cho sitemap (New page)

New page

- Chuyển sang tab HTML, dán đoạn code dưới đây vào:
<link href="https://dl.dropbox.com/s/83zedha973pbecv/tabbed-toc-skin-sitemap.css" media="screen" rel="stylesheet" type="text/css"></link>
<div id="tabbed-toc">
<span class="loading">Loading...</span></div>
<script type="text/javascript">
var tabbedTOC = {
    blogUrl: "http://www.tranbadat.info/", // Blog URL
    containerId: "tabbed-toc", // Container ID
    activeTab: 1, // The default active tab index (default: the first tab)
    showDates: false, // `true` to show the post date
    showSummaries: false, // `true` to show the posts summaries
    numChars: 200, // Number of summary chars
    showThumbnails: false, // `true` to show the posts thumbnails (Not recommended)
    thumbSize: 40, // Thumbnail size
    noThumb: "http://lh3.ggpht.com/-vpCFysMEZys/UOEhSGjkfnI/AAAAAAAAFwY/h1wuA5kfEhg/s72-c/grey.png", // A "no thumbnail" URL
    monthNames: [ // Array of month names
        "January",
        "February",
        "March",
        "April",
        "May",
        "June",
        "July",
        "August",
        "September",
        "October",
        "November",
        "December"
    ],
    newTabLink: true, // Open link in new window?
    maxResults: 99999, // Maximum post results
    preload: 0, // Load the feed after 0 seconds (option => time in milliseconds || "onload")
    sortAlphabetically: true, // `false` to sort posts by published date
    showNew: 7, // `false` to hide the "New!" mark in most recent posts, or define how many recent posts are to be marked
    newText: " - <em style='color:red;'>New!</em>" // HTML for the "New!" text
};
</script>
<script src="https://dl.dropbox.com/s/jak1mqt2qj1msf4/tabbed-toc-sitemap.js" type="text/javascript"></script>
Đổi đường dẫn thành đường dẫn blog của bạn nhé. Ngoài ra nếu muốn tinh chỉnh gì khác thì bạn hãy chỉnh trong file CSS nhé ^_^

- Đặt tên cho sitemap và lưu lại. Done!

Sitemap hiện tại của _CTPG_ nằm ở địa chỉ này: http://www.tranbadat.info/p/sitemap.html

Các Blogger mấy hôm nay có lẽ vô cùng cực khổ, ngay trước ngày 2/9 nhà mạng FPT ra tay chặn IP của Blogspot, làm hàng loạt trang blog bị hiện tượng không ổn định, lúc load được trang, lúc không. Điều này ảnh hưởng rất lớn đến lượng visit của website cũng như gây ức chế cho người xem lẫn webmaster.

Cách dùng Cloudflare để không bị chặn Blogspot

Sau mấy ngày tìm cách fix, mình nhận được nhiều hỗ trợ của bà con blogger, tuy nhiên hầu hết các hỗ trợ này không có tác dụng mấy, như việc đổi DNS trên máy (Việc này chỉ giúp bạn vào được web chứ không giúp được người khác vào được web của bạn)... Tiếp đến, mình nghĩ đến việc nhà mạng chặn IP, vậy thì phải tìm cách đổi IP cho blog, nhưng việc đổi IP trên trang chủ tên miền không có tác dụng, đây là lúc mình nghĩ đến Cloudflare.

CloudFlare là một dịch vụ proxy trung gian, nghĩa là thay vì tên miền website của bạn sẽ kết nối với máy chủ qua IP của máy chủ thì lại kết nối đến CloudFlare, mỗi lượt truy cập đều kết nối và xử lý tại CloudFlare trước, điều này có nghĩa website của bạn sẽ được thay đổi IP, DNS.
Và sau khi mình sử dụng thủ thuật áp dụng CloudFlare vào website mình khoảng 3 tiếng sau, mọi thứ rất OK, không còn hiện tượng bị gián đoạn, lúc load, lúc không nữa. Dưới đây là hướng dẫn các bạn dùng CloudFlare.

Hướng dẫn dùng CloudFlare để không bị chặn Blogspot


- Bạn hãy truy cập vào website: https://www.cloudflare.com
Click vào sign up để tạo một tài khoản trên CloudFlare, việc tạo tài khoản là miễn phí. Sau khi tạo tài khoản thì đăng nhập vào đi nhé.

- Click vào Add site ở thanh menu trên cùng, và hãy thêm tên miền của bạn vào và bấm Begin scan:

Cách dùng Cloudflare để không bị chặn Blogspot

CloudFlare đang tiến hành quét tên miền của bạn.

Cách dùng Cloudflare để không bị chặn Blogspot

Sau khi scan xong thì tiếp tục bấm Continue Setup

- Tại đây là danh sách DNS records đã được quét, bạn hãy thêm 2 records TXT dưới đây vào nữa:
MARK.NS.CLOUDFLARE.COM
MARY.NS.CLOUDFLARE.COM
Bạn nhớ kiểm tra phần CNAME trong trang quản trị tên miền còn cái records nào chưa được đưa vào chổ này thì tự thêm vào nha, ví dụ như của mình dưới đây là đã thêm đầy đủ, gồm cả subdomain:

Cách dùng Cloudflare để không bị chặn Blogspot

Chú ý, các record CNAME trỏ về tên miền thì bạn chuyển sang đi qua đám mây nhé, chứ mặc định một số records mới thêm vào nó sẽ đi vòng qua đám mây, click vào đó để chuyển sang đi qua đám mây, tức qua CloudFlare trước.
- Sau khi thêm xong, thì bấm Continue, và chọn Free plan nhé, đây là gói miễn phí, tiếp tục Continue:

Cách dùng Cloudflare để không bị chặn Blogspot


 - Tại đây CloudFlare cung cấp cho chúng ta 2 name server, hãy lấy 2 nameserver này thay vào trong trang quản trị tên miền của bạn:

Cách dùng Cloudflare để không bị chặn Blogspot

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

Ví dụ, mình dùng Godaddy thì Nameservers như thế này:

Cách dùng Cloudflare để không bị chặn Blogspot

Click vào Manage, và chon Custom, Add Nameserver:

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

Nhập 2 nameserver mà CloudFlare cung cấp vào đây và OK, tiếp tục bấm Save sau đó.

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

Đây là nameserver sau khi đã thay đổi, là nameserver của CloudFlare:

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

- Sau khi add namserver xong thì bạn quay lại trang CloudFlare, khoảng 10" sau bấm Recheck Namservers:

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

 - Đây là khi bạn đã xác thực thành công:

Hướng dẫn thay Nameservers CloudFlare cho Godaddy

Xong, như thế là bạn đã dùng CloudFlare cho tên miền của bạn, nhưng thời gian để áp dụng hoàn toàn sẽ là khoảng vài tiếng sau khi bạn thực hiện dùng CloudFlare. Sau đó thì bạn sẽ không còn bị nhà mạng chặn nữa, truy cập khá mượt mà đấy :D Chúc các bạn thành công!

Thiết kế giao diện responsive hiện nay là một phần của một trang web chuyên nghiệp, và cả bạn, tôi và nhiều người khác đều thích một trang web có giao diện responsive. Hiện nay giao diện responsive đã trờ thành sống còn, khi các công cụ tìm kiếm ưu tiên nó hơn, và việc phải thiết kế 1 phiên bản di động cho website làm tốn chi phí nhiều hơn nữa.

Cách thiết kế giao diện responsive cho Blogspot

Rất nhiều template tùy chỉnh cho blogspot có responsive, tuy nhiên nhiều template bạn thích lại không có giao diện responsive này? Vậy điều bạn nên làm chính là tùy chỉnh lại giao diện cho blogspot theo hướng dẫn ở bài viết này để trang web của bạn có một giao diện responsive tương thích với mọi kích cỡ màn hình.

Trước tiên, giao diện responsive là gì?

Giao diện responsive dễ hiểu nhất là làm cho trang web tương thích với mọi thiết bị có kích cỡ màn hình khác nhau như PC, laptop, tablet, phablet, smartphone...

Thời gian gần đây rất nhiều blog được thiết kế có giao diện responsive để thay thế giao diện di động mặc định được cung cấp cho Blogger. Vì vấn đề xảy ra là giao diện cho di động chỉ tương thích với điện thoại, trên các máy tính bảng thì giao diện này không thể sử dụng được, vì thế giao diện responsive sẽ là giải pháp.

Câu hỏi đặt ra là: giao diện responsive tốt hơn giao diện di động mới chổ nào?

  1. Giao diện responsive sẽ thân thiện với SEO hơn giao diện di động
  2. Thiết kế responsive có thể tự điều chỉnh cho phù hợp với kích thước màn hình như máy tỉnh bảng, phablet...
  3. Thiết kế responsive giúp giảm tốc độ tải trang, tức là giúp tổng thể trang web được tối ưu hơn
  4. Nếu bạn sử dụng Google Adsense, thì quảng cáo đáp ứng sẽ tốt hơn rất nhiều trên giao diện responsive, giúp bạn tăng thu nhập

Hướng dẫn thiết kế giao diện responsive cho Blogspot

Để có thể thiết kế được giao diện responsive cho trang blogspot của bạn, đầu tiên đòi hỏi bạn phải có những kiến thức cơ bản về html và css đã, vì những hướng dẫn bên dưới này chỉ là những hướng dẫn chung, bạn muốn tùy chỉnh chính xác cho website của mình thì bạn phải nắm rõ thành phần của web mình đã.

- Truy cập trang quản trị của Blogger, tiếp tục vào Mẫu (Template) -> Chỉnh sửa HTML (Edit HTML):

Cách thiết kế giao diện responsive cho Blogspot

- Click vào vùng code, và tìm đến thẻ <head>, thêm code sau bên dưới nó:
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>
- Tiếp tục tìm đến thẻ ]]></b:skin>, và thêm đoạn code này vào phía trên nó:
@media screen and (max-width : 1280px) {
/* Cho kích thước màn hình nhỏ hơn 1280 ---*/
/* code css cho desktop ---*/
}
@media screen and (max-width : 1024px) {
/* Cho kích thước màn hình nhỏ hơn 1024 ---*/
/* code css cho tablets ---*/
}
@media screen and (max-width : 768px) {
/* Cho kích thước màn hình nhỏ hơn 768 ---*/
/* code css cho tablets nhỏ ---*/
}
@media screen and (max-width : 640px) {
/* Cho kích thước màn hình nhỏ hơn 640 ---*/
/* code css cho iphone ---*/
}
@media screen and (max-width : 480px) {
/* Cho kích thước màn hình nhỏ hơn 480 ---*/
/* code css cho smartphone ---*/
}
@media screen and (max-width : 320px) {
/* Cho kích thước màn hình nhỏ hơn 320 ---*/
/* code css cho điện thoại nhỏ ---*/
Đây là code css tương ứng với từng thiết bị và kích thước màn hình. Bây giờ bạn có thể tùy chỉnh code các thành phần tương ứng với các kích thước màn hình được rồi.

Thay thế / * code css cho...---* / bằng các id và class của tiêu đề, body, sidebar, footer và các phần khác của blog của bạn.

(max-width: ** px) là chiều rộng tối đa mà code sẽ làm việc giống như nếu bạn đặt mã trong phần max-width là 320px thì khi kích thước màn hình nhỏ hơn 320 px thì đoạn code trên sẽ được áp dụng, còn lớn hơn 320px thì code này sẽ không có tác dụng

Nếu bạn đặt css cho ID1(ví dụ thôi) trong max-width 480 nhưng không phải đặt 320 thì có nghĩa là code css ID1 đó sẽ áp dụng cho khoảng kích thước màn hình từ (0-480), nhưng nếu cả css ID1 trong max-width 320 (Có tùy chỉnh thông số) thì code css sẽ áp dụng: ID1 (tùy chỉnh thông số) từ (0;320) và ID1 từ (320-480).

Ví dụ:
@media screen and (max-width: ****px)
{
#main-wrapper  { width:100%; margin:0px auto; }
.header-wrapper {  width:100%;  }
#content {   margin-right:0; width:100%; float:left;  }
#sidebar {  display:none;  }
#footer-wrapper { display:none; }
}

Một số css quan trọng trong thiết kế giao diện responsive:

  1. Chiều rộng luôn sử dụng %, không được sử dụng px, ví dụ như width:100%
  2. Luôn sử dụng đơn vị em cho kích thước, thay thế cho px. Ví dụ 10em thay cho 10px
  3. Margin:auto để tự động căn giữa và nếu muốn cách các mép một giá trị nào đó thì sử dụng đơn vị % nhé
  4. Display:none để ẩn các thành phần khác
Chú ý: Các đơn vị chiều dài trong giao diện responsive nên là đơn vị % nhé, để tránh trường hợp một số thành phần bị lỗi không hiển thị được.
Hy vọng với bài viết này đã giúp cho bạn "thông não" được các vấn đề liên quan đến giao diện responsive, và hy vọng bạn sẽ thiết kế được một giao diện responsive tốt cho blogspot của bạn. :D

Author Name

Contact Form

Name

Email *

Message *

Powered by Blogger.