Nếu bạn đang sử dụng theme mặc định Blogger phiên bản mới, trong chủ đề của template ban sẽ thấy ngay trước thẻ đóng </head> luôn có một thẻ b:defaultmarkups và ít nhất một thẻ b:defaultmarkup lồng bên trong thẻ b:defaultmarkups và bên trong thẻ b:defaultmarkup lại có các thẻ b:includable.
Chắc hẳn bạn cũng muốn biết Blogger sử dụng các thẻ này cho mục đích gì? Mà tại sao các theme tùy biến lại không sử dụng. Bài hôm nay mình sẽ giới thiệu sơ qua về tác dụng của 2 thẻ tag này và cách áp dụng chúng trong chủ đề của theme.
1. Tên gọi
+ Trước hết thẻ b:defaultmarkups và b:defaultmarkup là các thẻ dữ liệu vì chúng được đặt sau tiền tố b: (thẻ đọc dữ liệu) theo sau là tên của thẻ.
+ Thứ hai khi dịch các tên của thẻ cũng biết được ý nghĩa của nó là đánh dấu mặc định, nếu hiểu xa hơn là tùy biến.
2. Tác dụng
+ Rút gọn: Vì các thẻ b:includable là thẻ đóng cho nên theme sẽ trông gọn hơn
+ Dễ chỉnh sửa: Khi sử dụng các thẻ này đánh dấu mặc định, sau này mỗi lần muốn chỉnh sửa chỉ cần chỉnh sửa trong các thẻ này
+ Rút gọn đoạn mã: Nếu trong các widget đều sử dụng các đoạn mã giống nhau, thay vào đó chỉ cần sử dụng một đoạn mã duy nhất
3. Cú pháp
<b:defaultmarkups>
<b:defaultmarkup type=' '>
<b:includable id=' '></b:includable>
</b:defaultmarkup>
</b:defaultmarkups>
Trong đó:
- Thẻ b:defaultmarkups không có thuộc tính, được đặt trước thẻ </head> hoặc trước </body>
- Trong thẻ b:defaultmarkups có một hoặc nhiều hơn thẻ b:defaultmarkup tuy nhiên thẻ b:defaultmarkup phải có thuộc tính type mà 2 thuộc tính type='Common' và type='widget_type' thường hay được sử dụng.
+ Thuộc tính type='Common' sử dụng bất kỳ ở vị trí nào trong theme trừ b:skin và b:template-skin
+ Thuộc tính type='widget_type' được lấy từ thuộc tính type của widget ví dụ các loại widget Blog, FeaturedPost, PopularPosts, thuộc tính này chỉ được trong chính widget đó.
+ Trong thẻ b:defaultmarkup có các thẻ b:includable chứa XML, HTML, CSS, SCRIPT, mỗi thẻ b:includable phải chứa một thuộc tính id tự đặt khác nhau, và có thể thêm thuộc tính var ví dụ var='blog' nếu thẻ b:includable được đặt trong thẻ b:defaultmarkup có type='Common' hoặc var='post' nếu thẻ b:includable được đặt trong thẻ b:defaultmarkup có type='widget_type'
4. Cách đánh dấu mặc định
<b:defaultmarkups>
<b:defaultmarkup type='Common'>
<b:includable id='custom-css'>
<b:tag name='style'>/* <![CDATA[ */
<!-- CSS -->
/* ]]> */</b:tag>
</b:includable>
<b:includable id='custom-script'>
<script>//<![CDATA[
<!-- JavaScript, Jquery -->
//]]></script>
</b:includable>
</b:defaultmarkup>
<b:defaultmarkup type='Blog, FeaturedPost, PopularPosts'>
<b:includable id='post-thumb'>
<!-- Mã XML cho các tiện ích "Blog", "FeaturePost" và "PopularPosts" -->
</b:includable>
<b:includable id='post-meta'>
<!-- Mã XML cho các tiện ích "Blog", "FeaturePost" và "PopularPosts" -->
</b:includable>
</b:defaultmarkup>
</b:defaultmarkups>
5. Cách áp dụng
Đặt các thẻ <b:include name=' '/> vào vị trí muốn hiển thị, ví dụ
<html>
<head>
<b:include name='all-head'/>
<b:skin><![CDATA[]]></b:skin>
<b:if cond='data:view.isLayoutMode'>
<b:template-skin><![CDATA[]]></b:template-skin>
</b:if>
<b:defaultmarkups>
<b:defaultmarkup type='Common'>
<b:includable id='all-head'>
<!-- Thẻ meta -->
</b:includable>
<b:includable id='custom-css'>
<b:tag name='style'>/* <![CDATA[ */
<!-- CSS -->
</b:includable>
<b:includable id='custom-script'>
<script>//<![CDATA[
<!-- JavaScript, Jquery -->
//]]></script>
</b:includable>
</b:defaultmarkup>
<b:defaultmarkup type='Blog, FeaturedPost, PopularPosts'>
<b:includable id='post-thumb'>
<!-- Mã XML cho các tiện ích "Blog", "FeaturePost" và "PopularPosts" -->
</b:includable>
<b:includable id='post-meta'>
<!-- Mã XML cho các tiện ích "Blog", "FeaturePost" và "PopularPosts" -->
</b:includable>
</b:defaultmarkup>
</b:defaultmarkups>
<b:include name='custom-css'/>
</head>
<body>
<b:section class='main' id='main' showaddelement='false'>
<b:widget id='PopularPosts1' locked='true' title='' type='PopularPosts' version='2' visible='true'>
<b:includable id='main' var='this'>
<b:include cond='data:postDisplay.showFeaturedImage' name='post-thumb'/>
<b:include name='postmeta'/>
</b:includable>
</b:widget>
<b:widget id='Blog1' locked='true' title='' type='Blog' version='2' visible='true'>
<b:includable id='postBodySnippet' var='post'>
<b:include name='post-thumb'/>
<b:include name='postmeta'/>
</b:includable>
</b:widget>
</b:section>
<b:include name='custom-script'/>
</body>
</html>