Cách tùy biến hiển thị thời gian đăng bài trong widget Blog version 2


Trong widget Blog version 2 thì Định dạng Tiêu đề Ngày không được áp dụng chỉ còn Định dạng dấu thời gian và có 2 thẻ data gọi dữ liệu thời gian với thời gian đăng bài là <data:post.date/> và thời gian cập nhật là <data:post.lastUpdated/> được cấu hình từ Định dạng dấu thời gian

blogger post date

blogger post date

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

blogger post date

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, trước hết chúng ta có 2 thẻ data với định dạng iso8601 đầ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

Như vậy nếu chọn đầy đủ thì tháng đứng trước ngày, nếu chọn thời gian thì chỉ có thời gian mà không có ngày..., tuy nhiên có một tùy biến sử dụng hàm b:eval sắp xếp thời gian hiển thị cho nên chúng ta có thể vận dụng tính năng này sắp xếp lại thời gian.

Các bạn xem ví dụ dưới đây

+ Thời gian đăng bài:

<b:eval expr='data:post.date format &quot;dd MMM, yyyy&quot; '/>

cho ra thời gian hiển thị ví dụ: 20 thg 6, 2018

+ Thời gian cập nhật:

<b:eval expr='data:post.lastUpdated format &quot;dd MMM, yyyy&quot; '/>

cho ra thời gian ví dụ: 26 thg 7, 2018

Bây giờ chúng ta có thể kết hợp đặt thẻ dữ liệu trong template như sau:

+ Thời gian đăng bài:

<span class='post-published'>
<b:eval expr='data:post.date format &quot;dd MMM, yyyy&quot; '/>
<data:widgets.Blog.first.allBylineItems.timestamp.label/> <data:post.date/>
</span>

Hiển thị ví dụ: 24 thg 6, 2018 lúc 12:20 CH

+ Thời gian cập nhật

<span class='post-updated'>
<b:eval expr='data:post.lastUpdated format &quot;dd MMM, yyyy&quot; '/>
<data:widgets.Blog.first.allBylineItems.timestamp.label/> <data:post.lastUpdated/>
</span>

Hiển thị ví dụ: 24 thg 6, 2018 lúc 14:30 CH

Trong đó bạn phải cấu hình thời gian hiền thị của widget Bài đăng trên Blog trong Bố cục chỉ chọn thời gian như hình bên trên, và chữ "lúc" bạn có thể thay bằng dấu "-" hay ký tự bất kỳ nó sẽ hiển thị theo thẻ dữ liệu <data:widgets.Blog.first.allBylineItems.timestamp.label/>, nếu bạn để trống nó không hiển thị ký tự.

4.2/5 - (3112 bình chọn)

3 Nhận xét
  1. chào anh. bên mình cài theo hướng dẫn nhưng nó không hiển thị giờ thì phải làm sao nhỉ

    Trả lờiXóa
    Trả lời
    1. Vào Cài đặt > Ngôn ngữ và định dạng > Định dạng dấu thời gian > chọn hiển thị giờ

      Xóa
    2. Vẫn không được, đây là tình trạng của mình ạ:
      https://notepad.vn/share/rfmlxib81

      Xóa