Tùy biến hiển thị widget

Bước 1 : cần xác định ID widget cần tùy biến 

 Vào Bố cục (Layout) --> Chọn chỉnh sửa ở widget cần tùy biến.
Một cửa sổ hiện lên bạn sẽ thấy trên thanh url của cửa số đố sẽ có dạng "widgetType=null&widgetId=HTML2" và HTML2 là id của widget này. mỗi widget sẽ có 1 id khác

Sau khi có được ID của Widget thì bạn copy và đóng cửa sổ lại.

Bước 2 : Tùy biến hiển thị widget 

+ Bạn vào Mẫu (template) --> Chỉnh sửa  HTML --> Chuyển đến tiện ích sau đó chuyển tới cái id widget khi nãy mà bạn có được (ở đây là HTML2)

Bạn sẽ chuyển tới tiện ích có đạng thu nhỏ :


- Sau khi mở rộng nó ra bạn sẽ được đoạn code tương tự như sau:
<b:widget id='HTML10' locked='false' title='' type='HTML'>
<b:includable id='main'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
</b:includable>
</b:widget>
- Như vậy, ta đã xác định được ID cũng như vị trí và nội dung của Widget, Bây giờ Mình sẽ thêm lệnh ẩn hoặc hiện Widget ở 2 vị trí là:
  • Vị trí 1: Sau thẻ mở <b:includable id='main'>  Phần này bạn thay dổi theo các mã mình cung cấp bên dưới.
    Vị trí 2: Thêm lệnh </b:if> vào trước thẻ đóng như sau </b:includable> phần này dung chung cho tất cả các thủ thật bên dưới.
- Khi đó bạn có đoạn code mới dạng như sau.
<b:widget id='HTML10' locked='false' title='' type='HTML'>
<b:includable id='main'>
<-- Vị trí 1 -->
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
 </b:if>
</b:includable>
</b:widget>
Đến đây bạn thay chữ <-- Vị trí 1 --> thành một trong các đoạn code tương ứng bên dưới:
* Chỉ hiển thị Widget ngoài trang chủ
- Thay chữ <-- Vị trí 1 --> thành đoạn code sau:
<b:if cond='data:blog.url == data:blog.homepageUrl'>
* Chỉ hiển thị Widget ở trang Archive

- Thay chữ <-- Vị trí 1 --> thành đoạn code sau:
<b:if cond='data:blog.pageType == &quot;archive&quot;'>

*  Chỉ hiển thị Widget ở trang bài viết
- Thay chữ Vị trí 1 thành đoạn code sau:

<b:if cond='data:blog.pageType == &quot;item&quot;'>

* Chỉ hiển thị Widget ở trang Static Page
- Thay chữ Vị trí 1 thành đoạn code sau:

<b:if cond='data:blog.pageType == &quot;static_page&quot;'>

* Chỉ hiển thị Widget ở những trang với liên kết cụ thể
- Thay chữ Vị trí 1 thành đoạn code sau:

<b:if cond='data:blog.url == "URL của trang chỉ định"'>

- Trong đó URL của trang chỉ định là địa chỉ của trang nhãn hay bài viết. Ví dụ mình muốn HTML10 bên trên chỉ hiển thị trong bài viết nyaf thì mình thay chữ Vị trí 1 bằng đoạn code sau:

<b:if cond='data:blog.url == "http://icodevn.blogspot.com/2013/12/tuy-bien-hien-thi-widget.html"'>

* Chỉ hiển thị Widget ở Trang chủ, trang Label và trang Archive
- Thay chữ Vị trí 1 thành đoạn code sau:

<b:if cond='data:blog.pageType == &quot;index&quot;'>

* Ở trên bạn có thể thấy mình cố ý đánh dấu “==” bằng màu đỏ, có nghĩa là, bạn hoàn toàn có thể thay dấu “==” bằng dấu “!=” sẽ mang ý nghĩa khác.

Qui ước :

== : “bằng” hoặc tương đương - Tức là chỉ hiện thị khi thỏa mãn điều kiện mà ta đưa ra.!= : “khác” hoặc không tương đương - Tức là không hiển thị khi thỏa mãn điều kiện ta đưa ra.

Ví dụ, nếu bạn muốn Widget HTML10 hiển thị ở tất cả các trang khác ngoại trừ trang chủ, thì ta thay chữ Vị trí 1 bằng đoạn code sau:
<b:if cond='data:blog.url != data:blog.homepageUrl'>


Tùy biến nâng cao sử dụng kết hợp các điều kiện


Vì một lý do nào đó, bạn chỉ muốn hiển thị widget ở trang A và trang B hoặc hiển thị khi thỏa mãn là trang A hoặc trang B, ta sẽ kết hợp các điều kiện với nhau như sau :
- Khi đó ta phải thêm 2 thẻ đóng  </b:if> vào trước thẻ đóng </b:includable> của Widget như sau:
<b:widget id='HTML10' locked='false' title='' type='HTML'>
<b:includable id='main'>
 Vị trí 1
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
 </b:if></b:if>
</b:includable>
</b:widget>

- Trong đó phần màu vàng là nội dung của Widget.
- Tiếp theo thay lệnh điều kiện cho các Wiget như sau: 

A. Trường hợp 1 : chỉ hiển thị widget khi thỏa mãn 2 hay nhiều điều kiện


- Thay chữ Vị trí 1 thành đoạn code sau:

<b:if cond='data:blog.url != "Điều kiện 1"'>
<b:if cond='data:blog.url != "Điều kiện 2"'>
- Ví dụ, hiển thị widget ở tất cả các trang ngoại trừ chuyên mục Template blogspot  và Blogspot cơ bản :

<b:if cond='data:blog.url != "http://icodevn.blogspot.com/search/label/template%20blogspot"'>
<b:if cond='data:blog.url != "http://icodevn.blogspot.com/search/label/Blogspot%20cơ%20bản"'>
nội dung widget
</b:if></b:if>

B. Trường hợp 2 : chỉ hiển thị widget khi thỏa mãn một trong các điều kiện

- Thay chữ Vị trí 1 và đoạn màu vàng thành đoạn code sau:

<b:if cond='data:blog.url == "Điều Kiện 1"'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
<b:else/>
<b:if cond='data:blog.url == "Điều Kiện 2"'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
<b:else/>
Ví dụ, chỉ hiển thị widget ở chuyên mục  Template blogspot  và Blogspot cơ bản :

<b:if cond='data:blog.url == "http://icodevn.blogspot.com/search/label/template%20blogspot"'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
<b:else/>
<b:if cond='data:blog.url == "http://icodevn.blogspot.com/search/label/Blogspot%20cơ%20bản"'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
<b:else/>
</b:if></b:if>
Lưu mẫu và hưởng thành quả nhé !

Unknown

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation.

0 nhận xét:

Post a Comment

 

Copyright @ 2013 SuperDesign.

Designed by Templateify & CollegeTalks