chia sẻ

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

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 ^^!)

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

Đăng nhận xét

 
Ky nang ban hang ky-nang-ban-hang
10 10 1125 (c) by
Google Thủ thuật, hacking, tool, code, công cụ