Tiện ích bài mới theo nhãn cho Blogger

Ngay ở bài viết trước mình đã chia sẻ với các bạn tiện ích bài đăng mới nhất, hôm nay mình tiếp tục chia sẻ một tiện ích nữa dành cho Blogger đó là bài mới theo nhãn. Tiện ích này vẫn cùng chức năng với tiện ích bài đăng mới nhất, mình chỉ cần chỉnh sửa lại vài chỗ nhỏ tại tiện ích trước và hoàn thành ra tiện ích này.

Tiện ích bài mới theo nhãn cho Blogger

Với tiện ích này thì bạn có thể làm rất nhiều việc, bạn có thẻ tạo một nhãn riêng để đưa những bài viết về quảng cáo lên, hoặc gán nhãn vào những bài viết hay để giới thiệu cho khác truy cập những bài viết đó. Không dài dòng nữa vào trọng tâm thôi.

Tiện ích bài mới theo nhãn cho Blogger

Cũng như cách thức thêm những tiện ích khác, bạn đăng nhập Blogger và chọn blog mà bạn muốn thêm vào. Tiếp tục tìm đén phần Bố cục và thêm một tiện ích HTML mới.

Sao chép và cho đoạn mã này vào phần nội dung của tiện ích.
<style type='text/css'>
.label_with_thumbs {
    float: left;
    padding: 0px;
}
.label_with_thumbs li {
    float: left;
    margin-bottom: 20px;
    padding-bottom: 20px;
}
.label_with_thumbs img {
    float: left;
    margin-right: 10px;
    border: 1px solid #ddd;
}
.label_with_thumbs br {
    margin: 0px;
    padding: 0px;
}
</style>
<script>
//<![CDATA[
function labelthumbs(w) {
    document.write('<ul class="label_with_thumbs">');
    for (var v = 0; v < numposts; v++) {
        var f = w.feed.entry[v];
        var g = f.title.$t;
        var z;
        if (v == w.feed.entry.length) {
            break
        }
        for (var r = 0; r < f.link.length; r++) {
            if (f.link[r].rel == "replies" && f.link[r].type == "text/html") {
                var n = f.link[r].title;
                var o = f.link[r].href
            }
            if (f.link[r].rel == "alternate") {
                z = f.link[r].href;
                break
            }
        }
        var j;
        try {
            j = f.media$thumbnail.url
        } catch (q) {
            s = f.content.$t;
            a = s.indexOf("<img");
            b = s.indexOf('src="', a);
            c = s.indexOf('"', b + 5);
            d = s.substr(b + 5, c - b - 5);
            if ((a != -1) && (b != -1) && (c != -1) && (d != "")) {
                j = d
            } else {
                j = "http://3.bp.blogspot.com/-DiSuxig0X9k/TZYzqpks56I/AAAAAAAAAWM/sN1GbkQvDUI/s1600/no_image.jpg"
            }
        }
        var x = f.published.$t;
        var m = x.substring(0, 4);
        var l = x.substring(5, 7);
        var t = x.substring(8, 10);

        document.write('<li class="clearfix">');
        if (showpostthumbnails == true) {
            document.write('<a class="picturelabela" href="' + z + '" target ="_top"><img class="label_thumb" src="' + j + '"/></a>')
        }
      document.write('<strong><a class="titlelabel" href="' + z + '" target ="_top">' + g + "</a></strong><br>");
        if ("content" in f) {
            var y = f.content.$t
        } else {
            if ("summary" in f) {
                var y = f.summary.$t
            } else {
                var y = ""
            }
        }
        var p = /<\S[^>]*>/g;
        y = y.replace(p, "");
        if (showpostsummary == true) {
            if (y.length < numchars) {
                document.write("");
                document.write(y);
                document.write("")
            } else {
                document.write("");
                y = y.substring(0, numchars);
                var e = y.lastIndexOf(" ");
                y = y.substring(0, e);
                document.write(y + "...");
                document.write("")
            }
        }
        var A = "";
        var u = 0;
        document.write("<br>");
        if (showpostdate == true) {
            A = A + t + "/" + l + "/" + m;
            u = 1
        }
        if (showcommentnum == true) {
            if (u == 1) {
                A = A + " - "
            }
            if (n == "1 " + rpbl_comment) {
                n = "1 " + rpbl_comment
            }
            if (n == "0 " + rpbl_comment) {
                n = "0 " +rpbl_comment
            }
            n = '<a href="' + o + '" target ="_top">' + n + "</a>";
            A = A + n;
            u = 1
        }
        if (displaymore == true) {
            if (u == 1) {
                A = A + " | "
            }
            A = A + '<a href="' + z + '" class="url" target ="_top"> + rpbl_readmore + </a>';
            u = 1
        }
        document.write(A);
        document.write("</li>");
        if (displayseparator == true) {
            if (v != (numposts - 1)) {
                document.write("<hr size=0.5/>")
            }
        }
    }
    document.write("</ul>")
};
//]]>
</script>
<script type='text/javascript'>
var rpbl_comment = 'Nhận xét';
var rpbl_readmore = 'Đọc tiếp';
var numposts = 4;
var showpostthumbnails = true;
var displaymore = false;
var displayseparator = false;
var showcommentnum = false;
var showpostdate = false;
var showpostsummary = true;
var numchars = 100;</script>
<script type="text/javascript" src="/feeds/posts/default/-/Featured?orderby=updated&alt=json-in-script&callback=labelthumbs"></script>
chỉnh sửa lại theo ý của bạn với các thuộc tính sau:
  • rpbl_comment, rpbl_readmore: đơn giản chỉ là đoạn chữ thay thế cho comment  và readmore
  • numpost: số lượng bài viết.
  • showpostthumbnails: ẩn hiện ảnh thumbnail.
  • displaymore: ẩn hiện nút readmore.
  • displayseparator: ẩn hiện đường phân cách hr giữa mỗi bài.
  • showpostdate: ẩn hiện ngày đăng bài.
  • showpostsummary: ẩn hiện đoạn trích từ bài viết.
  • numchars: số lượng ký tự lấy ra cho đoạn trích dẫn.
ngoại trừ 2 đoạn văn bản thay thế cho comment và readmore thì các tùy chỉnh khác sẽ có 2 lựa chọn với true (đúng) và false (sai). Thay thế Featured thành tên nhãn của bạn. Ngoài ra bạn có thể tự tùy chỉnh lại phần css để nó trông khác hơn rồi lưu lại.

Lời kết

Như vậy là mình lại cho ra đời một tiện ích nữa, khá đơn giản để phục vụ cho việc tăng thêm các tính năng cí trên Blogger, cũng như lưu lượng truy cập cho bạn, mọi thắc mắc xin để lại ở nhận xét phía dưới nhé!

11 bình luận

  1. avatar Nặc danh says

    lúc 18:18 7 tháng 7, 2014

    mình điều chỉnh kích thước thumbail hiển thị ở đoạn nào anh nhỉ?

  2. avatar says

    lúc 18:31 7 tháng 7, 2014

    Do lấy link ảnh trực tiếp tong json nên ảnh nó hình vuông 72x72, bạn có thể sử dụn js ở bài viết này http://www.kslzone.net/2014/06/resize-va-cat-anh-nhieu-thanh-phan-cua.html cộng thêm tự căn chỉnh bằng css là ok bạn nhé.

  3. avatar Nặc danh says

    lúc 19:11 7 tháng 7, 2014

    em muốn phân chia label như kiểu video.vietdesigner.net, lấy sẵn thumbail từ youtube, nó không giống mấy cái khác, rối quá ạ ~.~

  4. avatar says

    lúc 19:14 7 tháng 7, 2014

    Vậy bác Google tìm template "Johny Crottube" về xài nhé, khổ bác ghê cái gì cũng không chịu.

  5. avatar says

    lúc 02:09 10 tháng 7, 2014

    đã nhập false để tắt đi displaymore,
    displayseparato,
    showpostdate,
    showpostsummar, mà nó vẫn hiện ra là sao b?

  6. avatar says

    lúc 08:10 10 tháng 7, 2014

    Mặc định nó sẵn tắt rồi mà bạn, điều này chỉ có thể là bạn có một đoạn javascript trùng tên biến với đoạn js này, cho nên nó chạy không đúng bạn nhé. Mình vừa test lại vẫn bình thường

    DEMO

  7. avatar Nặc danh says

    lúc 06:50 6 tháng 4, 2015

    Cảm ơn bạn nhé! Đúng cái mình đang cần.

  8. avatar Nặc danh says

    lúc 06:51 6 tháng 4, 2015

    Cám ơn bạn nhé! đúng cái mình đang cần.

  9. avatar says

    lúc 21:15 6 tháng 4, 2015

    Yeah vậy thì còn gì bằng nữa :D

  10. avatar says

    lúc 19:59 30 tháng 4, 2015

    Cảm ơn bạn nhé, đúng thứ mình cần. Đã áp dụng tại www.nhatthienkt.net

  11. avatar says

    lúc 20:08 15 tháng 4, 2016

    Mình muốn thị bài theo nhãn ở trang chủ thì làm thế nào vậy bạn?

Mọi nhận xét trên blog KslZone.NET sẽ được kiểm duyệt trước khi được xuất bản trên blog. Lưu ý: Nếu bạn để lại backlink về website của bạn, miễn là kèm theo nhận xét hợp lý thì nhận xét đó vẫn sẽ được chấp nhận. Nếu bạn muốn hiện mã HTML thì bạn cần chuyển đổi trước bằng công cụ phía dưới.