12 Mart 2019 Salı

Blogger'da Widget/Eklentileri Sayfalarda Gösterip Gizlemek

Blogger'da Widget/Eklentileri Sayfalarda Gösterip Gizlemek
Blogger'da istediğimiz widget/eklentiyi istediğimiz sayfada (arşiv sayfası, sayfa, yayın sayfası, arama sayfası, etiket arama sayfası vb.) gösterip istersekte gizleyebiliyoruz. Bu özelliği kullanabilmek aşağıdaki HTML kodlarından faydalanıyoruz. Öncelikle hangi kodun ne işe yaradığına bakalım.

Etkilenen widget/eklentiyi sadece ana sayfada gösterir/gizler. 

[<b:if cond='data:blog.url == data:blog.homepageUrl'>
</b:if>]

Etkilenen widget/eklentiyi sadece index sayfalarında gösterir/gizler. 

[<b:if cond='data:blog.pageType == "index"'>
</b:if>]

Etkilenen widget/eklentiyi sadece yayın ve sabit sayfalarda gösterir.

[<b:if cond='data:blog.pageType in ["item", "static_page"]'>
</b:if>]

Etkilenen widget/eklentiyi sadece yayın sayfalarında gösterir/gizler.

[<b:if cond='data:blog.pageType == "item"'>
</b:if>]

Etkilenen widget/eklentiyi sadece sabit sayfalarda gösterir/gizler.

[<b:if cond='data:blog.pageType == "statik_page"'>
</b:if>]

Etkilenen widget/eklentiyi sadece etiket arama sayfalarında gösterir. Biz bloggerların Kategori sayfaları olarak kullandığı kısım.

[<b:if cond='data:blog.searchLabel'>
</b:if>]

Etkilenen widget/eklentiyi sadece arşiv sayfalarında gösterir/gizler.

[<b:if cond='data:blog.pageType == "archive"'>
</b:if>]

Etkilenen widget/eklentiyi sadece arama sayfalarında gösterir. Bu hem normal arama sonuçları hemde etiket arama sayfalarını kapsar.

[<b:if cond='data:blog.searchQuery'>
</b:if>]

Etkilenen widget/eklentiyi sadece hata sayfalarında gösterir/gizler.

[<b:if cond='data:blog.pageType == "error_page"'>
</b:if>]

Etkilenen widget/eklentiyi sadece mobil sayfalarda gösterir/gizler.

[<b:if cond='data:blog.isMobileRequest == "true"'>
</b:if>]

Peki bu etiketleri nasıl kullanırız?

Blogger > Tema > HTML'yi Düzenle yolunu izleyip düzenlemek istediğimiz widget/eklentiye gidiyoruz. Ben kendi temamdan örnek vereceğim. Aşağıdaki örnekte Haftanın Enleri (Popüler Yayınlar eklentisi) eklentisinin sadece yayın sayfalarında gösterilmesini istedim.

[<b:widget id='PopularPosts1' locked='false' title='/fa-clock-o/ Haftanın Enleri$type=one$rm=0' type='PopularPosts' version='1'>
  <b:widget-settings>
    <b:widget-setting name='numItemsToShow'>5</b:widget-setting>
    <b:widget-setting name='showThumbnails'>true</b:widget-setting>
    <b:widget-setting name='showSnippets'>false</b:widget-setting>
    <b:widget-setting name='timeRange'>LAST_WEEK</b:widget-setting>
  </b:widget-settings>
  <b:includable id='main'>
<b:if cond='data:blog.pageType == "item"'>
  <b:if cond='data:title != &quot;&quot;'><h2><data:title/></h2></b:if>
  <div class='widget-content popular-posts'>
    <ul>
      <b:loop values='data:posts' var='post'>
      <li>
        <b:if cond='!data:showThumbnails'>
          <b:if cond='!data:showSnippets'>
            <!-- (1) No snippet/thumbnail -->
            <a expr:href='data:post.href'><data:post.title/></a>
          <b:else/>
            <!-- (2) Show only snippets -->
            <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            <div class='item-snippet'><data:post.snippet/></div>
          </b:if>
        <b:else/>
          <!-- (3) Show only thumbnails or (4) Snippets and thumbnails. -->
          <div expr:class='data:showSnippets ? &quot;item-content&quot; : &quot;item-thumbnail-only&quot;'>
            <b:if cond='data:post.featuredImage.isResizable or data:post.thumbnail'>
              <div class='item-thumbnail'>
                <a expr:href='data:post.href' target='_blank'>
                  <b:with value='data:post.featuredImage.isResizable                                  ? resizeImage(data:post.featuredImage, 72, &quot;1:1&quot;)                                  : data:post.thumbnail' var='image'>
                    <img alt='' border='0' expr:src='data:image'/>
                  </b:with>
                </a>
              </div>
            </b:if>
            <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            <b:if cond='data:showSnippets'>
              <div class='item-snippet'><data:post.snippet/></div>
            </b:if>
          </div>
          <div style='clear: both;'/>
        </b:if>
      </li>
      </b:loop>
    </ul>
  </div>
</b:if>
</b:includable>
</b:widget>]

Yapmamız gereken şey sadece mavi ile yazdığım yerlere göstermek/gizlemek istediğiniz kısmın HTML kodunu yazmak.

Widget/Eklentileri nasıl gösteririm sorusunu cevapladık, gelelim nasıl gizlerim sorusunun cevabına...

Öncelikle bu işaretlerin "==" (göster) "!=" (gizle) anlamını taşıdığını söyleyeyim. Yani kısacası sizin yapmanız gereken tek şey gizlemek istediğiniz kodda "==" yazan kısmı "!=" ile değiştirmek. Gizlemek kısmına da bir örnek vererek bu yazınında sonuna geleyim. Aşağıda ki Haftanın Enleri (Popüler Yayınlar eklentisi) eklentisini sadece yayın sayfalarında gizledim.

[<b:widget id='PopularPosts1' locked='false' title='/fa-clock-o/ Haftanın Enleri$type=one$rm=0' type='PopularPosts' version='1'>
  <b:widget-settings>
    <b:widget-setting name='numItemsToShow'>5</b:widget-setting>
    <b:widget-setting name='showThumbnails'>true</b:widget-setting>
    <b:widget-setting name='showSnippets'>false</b:widget-setting>
    <b:widget-setting name='timeRange'>LAST_WEEK</b:widget-setting>
  </b:widget-settings>
  <b:includable id='main'>
<b:if cond='data:blog.pageType == "item"'>
  <b:if cond='data:title != &quot;&quot;'><h2><data:title/></h2></b:if>
  <div class='widget-content popular-posts'>
    <ul>
      <b:loop values='data:posts' var='post'>
      <li>
        <b:if cond='!data:showThumbnails'>
          <b:if cond='!data:showSnippets'>
            <!-- (1) No snippet/thumbnail -->
            <a expr:href='data:post.href'><data:post.title/></a>
          <b:else/>
            <!-- (2) Show only snippets -->
            <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            <div class='item-snippet'><data:post.snippet/></div>
          </b:if>
        <b:else/>
          <!-- (3) Show only thumbnails or (4) Snippets and thumbnails. -->
          <div expr:class='data:showSnippets ? &quot;item-content&quot; : &quot;item-thumbnail-only&quot;'>
            <b:if cond='data:post.featuredImage.isResizable or data:post.thumbnail'>
              <div class='item-thumbnail'>
                <a expr:href='data:post.href' target='_blank'>
                  <b:with value='data:post.featuredImage.isResizable                                  ? resizeImage(data:post.featuredImage, 72, &quot;1:1&quot;)                                  : data:post.thumbnail' var='image'>
                    <img alt='' border='0' expr:src='data:image'/>
                  </b:with>
                </a>
              </div>
            </b:if>
            <div class='item-title'><a expr:href='data:post.href'><data:post.title/></a></div>
            <b:if cond='data:showSnippets'>
              <div class='item-snippet'><data:post.snippet/></div>
            </b:if>
          </div>
          <div style='clear: both;'/>
        </b:if>
      </li>
      </b:loop>
    </ul>
  </div>
</b:if>
</b:includable>
</b:widget>]

Hiç yorum yok:

Yorum Gönder