Trang chủ \ \ \

Sửa lỗi không hiển thị xếp hạng theo dấu sao Blogger

Xếp hạng theo dấu sao là một tiện ích giúp người đọc có thể nhanh chóng đưa ra nhận xét về bài viết trên website/blog. Blogger từ lâu đã có tiện ích này, nếu bạn đã sử dụng nó có thể dễ dàng tắt/bật nó trong mục Chỉnh sửa Bài đăng trên Blog mà không gặp bất kỳ trục trặc gì.
Sửa lỗi không hiển thị xếp hạng dấu sao Blogger

Tuy nhiên, sau đợt cập nhật vừa rồi, không hiểu do nguyên nhân gì mà các Blogger mới tạo đều không có lựa chọn "Hiển thị xếp hạng theo dấu sao". Vì vậy mà không thể hiển thị được nó trên blog (cho dù bạn đã áp dụng theo các cách trên mạng)
Nguyên nhân?
1- Đầu tiên là do Blogger rồi :)
2- Do câu lệnh <b:if cond='data:top.showStars'>
  Blogger dùng 2 đoạn mã sau để hiển thị star-ratings:
+ Đoạn script đặt trong <b:includable id='main' var='top' />
<b:if cond='data:top.showStars'>
      <script src='//www.google.com/jsapi' type='text/javascript'/>
      <script type='text/javascript'>
        google.load(&quot;annotations&quot;, &quot;1&quot;, {&quot;locale&quot;: &quot;<data:top.languageCode/>&quot;});
        function initialize() {
          google.annotations.setApplicationId(<data:top.blogspotReviews/>);
          google.annotations.createAll();
          google.annotations.fetch();
        }
        google.setOnLoadCallback(initialize);
      </script>
</b:if>
+ Đoạn mã dùng để hiển thị dấu sao đặt trong <b:includable id='post' var='post' />
<span class='star-ratings'>
   <div expr:g:background-color='data:backgroundColor' expr:g:text-color='data:textColor' expr:g:url='data:post.absoluteUrl' g:height='42' g:type='RatingPanel' g:width='280'/>
</span>
Vì vậy thiếu 1 trong 2 đoạn mã trên sẽ không hiển thị được dấu sao.
Cách khắc phục:
1- Đợi Blogger cập nhập
2- Đơn giản là thay/xóa nó đi thôi
Như đã nói ở trên, do không check được dấu trong Bố cục mà câu lệnh <b:if cond='data:top.showStars'> không thực thi được -> javascript không chạy, vì vậy cần xóa/thay câu lệnh này đi.
Tìm <b:if cond='data:top.showStars'>
Xóa đi hoặc thay bằng
<b:if cond='data:blog.pageType == "item"'>
Nếu bạn muốn nó chỉ hiện ở trang bài viết.
Hoặc
<b:if cond='data:blog.pageType == "index"'>
Nếu muốn hiển thị ở trang chủ.
Hoặc:
<b:if cond='data:blog.pageType == "data:post.url"'>
Nếu muốn hiển thị nó ở trang tĩnh và trang bài viết .
Xong bước 1! Sau khi javascript đã được cho phép chạy, bạn cần đoạn mã để hiển thị nó ra bài viết, đây là đoạn mã thực thi điều đó:
<span class='star-ratings'>
<b:if cond='data:blog.pageType == "data:post.url"'>
   <div expr:g:background-color='data:backgroundColor' expr:g:text-color='data:textColor' expr:g:url='data:post.absoluteUrl' g:height='42' g:type='RatingPanel' g:width='280'/>
</b:if>
</span>
Chèn đoạn này vào chỗ nào bạn muốn hiển thị nó, chẳng hạn như sau thẻ <div class='post-header'> hoặc <div class='post-footer'> hoặc <div class='post-footer-line-1'> (thường mặc định nó ở footer)
có thể xóa hoặc tùy chỉnh code màu đỏ theo ý bạn.
Xong ! đã sửa lỗi  rồi đó, chúc các bạn thành công !:D .
Test ngay ở bài  này nè :) (Chỉ áp dụng cho bài này thôi ^^!)

+1 để chia sẻ

DMCA.com Protection Status

12

nhận xét

Sao áp ụng đoạn code span class='star-ratings'>

div expr:g:background-color='data:backgroundColor' expr:g:text-color='data:textColor' expr:g:url='data:post.absoluteUrl' g:height='42' g:type='RatingPanel' g:width='280'/>

</span Sao không dc Trường Anh nhỉ

Trả lời Xóa

Chào Truyền ! Mình mới cập nhật lại bài viết, bạn làm lại thử xem sao nhá :^D^:

Trả lời Xóa

mình làm đc rùi thanks bạn nhều!

Trả lời Xóa

mình không tìm thấy dòng này

Trả lời Xóa

Dòng nào vậy bạn? bạn cần mã hóa code trước không nó ẩn đấy (--;) http://www.bta.name.vn/p/code-converter.html

Trả lời Xóa

Lâu không thấy bạn post bài ?

Trả lời Xóa

Mình về quê nghỉ hè :^D^: . Blogger chưa tìm ra bài viết mới (T_T), chắc chuyển qua viết HTML tiếp thôi, muốn tranh thủ làm cái temp đầu tay share nhưng cũng chưa phác thảo được gì ^q^ . Cần thêm thời gian nữa, mong mọi người ủng hộ !(o_o)

Trả lời Xóa

Bạn ơi, sao khi mình Ctrl+F để tìm mấy đoạn mã bạn nói để xóa và thay thì đều báo kết quả không tìm thấy hả bạn? Bạn xem giúp mình với. Cảm ơn bạn nhiều.

Trả lời Xóa

hi bạn, nếu chưa có thì có lẽ blog của bạn đã xóa, hoặc thay thế rồi, bạn chỉ cẩn chèn đoạn mã hiển thị nữa thôi nhé :^D^:
Để chắc chắn, bạn có thể tìm thêm đoạn javascript này, nếu thấy có xuất hiện thì ok, còn không bạn thêm nó trước thẻ </head> nhé :
[pre]<script src='//www.google.com/jsapi' type='text/javascript'/>
<script type='text/javascript'>
google.load("annotations", "1", {"locale": "<data:top.languageCode/>"});
function initialize() {
google.annotations.setApplicationId(<data:top.blogspotReviews/>);
google.annotations.createAll();
google.annotations.fetch();
}
google.setOnLoadCallback(initialize);
</script>
[/pre]

Trả lời Xóa

Mình làm như bạn hướng dẫn mà chẳng thấy hiện lên j cả

Trả lời Xóa

bài viết rất hữu ích, minh sẽ áp dụng cho trang chữa bênh thận,

Trả lời Xóa

Trường Anh ơi mình tìm dòng code nhưng không có trên html của mình thì làm sao đây

Trả lời Xóa

Đăng nhận xét :

Hủy trả lời

Cảm ơn bạn đã đọc bài viết, nếu có góp ý vui lòng gõ tiếng Việt có dấu, dễ đọc và tỏ ra tôn trọng tiếng Việt nhé !
Mọi ý kiến hay khúc mắc riêng các bạn có thể gửi về Trang Liên hệ Hoặc qua email của mình: buitruonganh.tk@gmail.com nhé !
Hân hạnh được làm quen! Bùi Trường Anh

Thư mục

Nhận xét mới

↑ top | RSS | Policy | © Copyright