Hiển thị đầy đủ thời gian đăng bài và thời gian cập nhật trong bài viết của widget Blog1 version 2
Trước tiên bạn cần hiểu thời gian đăng bài (published) và thời gian cập nhật (updated) khác nhau như thế nào? Mình sẽ giải thích như sau:
1. Khi bạn đăng bài mới click nút Xuất bản thì đó là thời gian đăng bài.
2. Khi bạn chỉnh sửa lại bài viết đó xong click nút Cập nhật thì đó thời gian cập nhật.
3. Nếu bạn chỉnh sửa lại thời gian đăng bài trong phần Lịch biểu bên phải chọn Đặt ngày và giờ thì thời gian đó là thời gian đăng bài còn thời gian bạn click nút Cập nhật thì đó thời gian cập nhật
Hình minh họa
Như vậy thời gian đăng bài có nhược điểm không đầy đủ và sắp xếp bị ngược so với tiếng Việt tuy nhiên chúng ta sẽ sử dụng jquery lọc substring và sắp xếp lại cho ra thời gian hoàn chỉnh. Trước hết chúng ta cần 2 thẻ data đầy đủ như sau:
- Thời gian đăng bài:<data:post.date.ISO8601/> hiển thị ví dụ: 2018-06-23T10:25:00+07:00
- Thời gian cập nhật:<data:post.lastUpdated.ISO8601/> hiển thị ví dụ: 2018-06-23T10:27:00+07:00
Áp dụng vào đoạn script ta có:
<b:if cond='data:view.isSingleItem'>
<script type="text/javascript">
$(function() {
var i = '<data:post.date.ISO8601/>';
var t = '<data:post.lastUpdated.ISO8601/>';
var v = " ";
var w= " thag ";
var x = ", "
var y= " (GMT";
var z= ")";
var post_published = i.substring(8, 10) + w + i.substring(5, 7) + x + i.substring(0, 4) + v + i.substring(11, 16) + y + i.substring(23, 29) + z;
var post_updated = t.substring(8, 10) + w + t.substring(5, 7) + x + t.substring(0, 4) + v + t.substring(11, 16) + y + t.substring(23, 29) + z;
$('.post_published').html(post_published);
$('.post_updated').html(post_updated);
});
</script>
</b:if>
Chèn đoạn script này trong thẻ tag <b:includable id='postCommentsAndAd' var='post'>, hình minh họa
Đặt class hiển thị thời gian:
- Thời gian đăng bài: <span class='post_published'></span>
- Thời gian cập nhật: <span class='post_updated'></span>
Chấm hết bài!!!