Trong blogspot, khi bạn click chọn để hiển thị bài viết cùng một chủ để hay nói đơn giản là có cùng một label ( Showing posts with label HTML. Show all posts) hoặc lưu trữ archive theo thời gian nào đó, Blogspot sẽ hiện lên tất cả các bài viết có label (hoặc archive dạng tháng/năm) được chọn.
Nếu như blogspot của bạn có quá nhiều bài viết với Label / archive đó, thì trang hiển thị sẽ hiện ra số lượng lớn và sẽ gây bất tiện khi đọc bài.
phattrienso xin giới thiệu thủ thuật giúp bạn làm hiển thị chỉ tiêu đề bài viết thay vì chủ đề và nội dung của mỗi bài viết. Cách thực hiện cũng tương đối đơn giản.
Đầu tiên bạn vào “Dashboard” I "Edit HTML". và tiến hành DOWNLOAD template để lưu trữ đề phòng bất trắc. Cái này cũng rất quan trọng giúp bạn an toàn hơn trong mọi tình huống.
Sau đó bạn Click chọn Expand Widget Templates. Và Bấm Ctrl+F, để tìm kiếm đoạn mã có dạng như sau:
<b:widget id='Blog1' locked='false' title='Blog Posts' type='Blog'>
<b:includable id='main' var='top'>
<!-- posts -->
<div id='blog-posts'>
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.dateHeader'>
<h2 class='date-header'>
<data:post.dateHeader/></h2>
</b:if>
<b:include data='post' name='post'/>
<b:if cond='data:blog.pageType == "item"'>
<b:if cond='data:post.allowComments'>
<b:include data='post' name='comments'/>
</b:if>
</b:if>
</b:loop>
</div>
Thay thế dòng mã:
<b:include data='post' name='post'/>
thành đoạn mã sau:
<b:if cond='data:blog.homepageUrl !=data:blog.url'>
<b:if cond='data:blog.pageType != "item"'>
<a expr:href='data:post.url'>
<data:post.title/></a><br/><br/>
<b:else/>
<b:include data='post' name='post'/>
</b:if>
<b:else/>
<b:include data='post' name='post'/>
</b:if>
Save lại tiến trình bạn vừa thực hiện và kiểm tra kết quả thử xem như thế nào?
Nếu thấy hữu ích hoặc có vấn đề gì bạn hãy để lại ý kiến nhé.
Thủ thuật này bị 1 lỗi nhỏ là khi nhấn vào Next, Previous ở trang chủ thì các bài viết cũng hiện ra chỉ có tiêu đề. Là do các trang này cũng bị xếp vào dạng /search?max-update=..., thỏa mãn 2 điều kiện xét ở trên.
ReplyDeleteMình cũng tìm khá nhiều trên mạng nhưng chưa thấy cách giải quyết nào ổn thỏa bằng các kiểu page có sẵn của Blogger. Trong trang Help của Blogger nói là chỉ có 3 loại page: index, archive và item. Cho nên nếu áp dụng cái này thì chỉ nên áp dụng cho archive (ko có label) là ổn, ko gặp lỗi mình nói ở trên.
Hiện giờ mình cũng hiển thị tiêu đề ở trang archive và label trong Hỗn tạp Blog, nhưng phải dùng tới javascript để thao tác, ko được tốt lắm :(.
Cám ơn Tuấn ANh nhiều lắm, mình sẽ qua blog của bạn để tìm hiểu vấn đề này.
ReplyDeleteThủ thuật này rất hay , mình đã từng làm rồi , nhưng tùy vào tình hình hiện tại mà áp dụng hay gỡ bỏ , mình đã áp dụng rồi gỡ ... rồi lại áp dụng cả chục lần rồi :))
ReplyDeleteVì lúc thì muốn nhẹ blog , lúc lại muốn chi tiết @@ ha ha , Nói chung bài này rất hay , Tiếp Tục phát huy nha Phát triển "xô" :))
Cái "Khung chát khổ rộng " không gọi là thủ thuật đc , chỉ là HTML cơ bản thôi :
ReplyDelete<a href="Link địa chỉ ở đây" onclick="window.open('Link địa chỉ ở đây','Tên PopUp','width=600,height=600,
scrollbars=yes,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=400,top=100'); return false">Chữ cần hiển thị</a>
Lưu ý là cái "Tên PopUp " rất quan trọng , mỗi cái popup phải đc đặt tên khác nhau , nếu không "chúng nó" sẽ cùng đc mở trên một cửa sổ
:)
Cám ơn ngânknv nhé, nghi nghi nhưng thử làm không đuợc. Chắc là do code sai ở đâu đó, Giờ thì có form chuẩn rồi, cám ơn nhé.
ReplyDeleteHíc mình pó tay không tìm được đoạn mã nào giống giống cái đoạn trên để thay. Chắc tại cái temp của mình không có. Có mấy thủ thuật đều không làm được do không tìm đc code
ReplyDeleteNếu không chắc có hay không bạn hãy tìm rộng hơn trong các code, chẳng hạn thay vì cần tìm b:include data='post' name='post'/ thì ta tìm data='post' bạn à, như thế dễ dàng hơn.
ReplyDeleteNhư vậy bạn sẽ không để sót code bạn à.
cám ơn nhiều
ReplyDelete