• 虹色ミツバチ
  • freoカスタマイズメモ、テンプレート・プラグイン配布/officeTIPS
検索プラグイン

> Entry >freo>freoTips>プラグイン系TIPS> エントリータグクラウド表示プラグイン使用時にタグにclassを付与する方法

【freo】【freoTips】【プラグイン系TIPS】エントリータグクラウド表示プラグイン使用時にタグにclassを付与する方法

freo公式で配布しているエントリータグクラウド表示プラグインを使用すると、エントリーに登録されているタグを一覧表示することができます。
一覧表示されたタグに、classをつけてみる方法を解説します。

 

エントリーをタグ検索したときに検索中のタグにclassを付与する方法

freo公式サイトで紹介されているエントリータグクラウド表示プラグインのテンプレートを編集します。

<h3>タグクラウド</h3>
<div class="content">
  <ul class="tagcloud">
    <!--{foreach from=$plugin_entry_tagclouds|smarty:nodefaults item='plugin_entry_tagcloud'}-->
    <li><a href="{$freo.core.http_file}/entry?tag={$plugin_entry_tagcloud.tag|smarty:nodefaults|escape:'url'}" style="font-size:{$plugin_entry_tagcloud.size}%;">{$plugin_entry_tagcloud.tag}</a>{$plugin_entry_tagcloud.count}</li>
    <!--{/foreach}-->
  </ul>
</div>

 これを、下記のように変更します。

<h3>タグクラウド</h3>
<div class="content">
  <ul class="tagcloud">
    <!--{foreach from=$plugin_entry_tagclouds|smarty:nodefaults item='plugin_entry_tagcloud'}-->
    <li><a href="{$freo.core.http_file}/entry?tag={$plugin_entry_tagcloud.tag|smarty:nodefaults|escape:'url'}" style="font-size:{$plugin_entry_tagcloud.size}%;"><!--{if $smarty.get.tag == $plugin_entry_tagcloud.tag}--><span class="current">{$plugin_entry_tagcloud.tag}</span><!--{else}-->{$plugin_entry_tagcloud.tag}<!--{/if}--></a>{$plugin_entry_tagcloud.count}</li>
    <!--{/foreach}-->
  </ul>
</div>

解説

<h3>タグクラウド</h3>
<div class="content">
  <ul class="tagcloud">
    <!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここから}-->
    <li><a href="{freo設置URL}/entry?tag={plugin_entry_tagcloudのタグ}" style="font-size:{plugin_entry_tagcloudのサイズ}%;"><!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここから}--><span class="current">{plugin_entry_tagcloudのタグ}</span><!--{そうじゃなければ}-->{plugin_entry_tagcloudのタグ}<!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここまで}--></a>{plugin_entry_tagcloudの登録数}</li>
    <!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}-->
  </ul>
</div>

エントリーを個別に表示しているときにそのエントリーに登録されているタグにclassを付与する方法

エントリーを個別に表示している(freo/index.php/view/エントリーID)時に、そのエントリーに登録されているタグにクラスを付与します。
freo公式サイトで紹介されているエントリータグクラウド表示プラグインのテンプレートを編集します。

    <h3>タグクラウド</h3>
    <div class="content">
        <ul class="tagcloud">
            <!--{foreach from=$plugin_entry_tagclouds|smarty:nodefaults item='plugin_entry_tagcloud'}-->
                <li><a href="{$freo.core.http_file}/entry?tag={$plugin_entry_tagcloud.tag|smarty:nodefaults|escape:'url'}" style="font-size:{$plugin_entry_tagcloud.size}%;"><!--{foreach from=$entry_tags|smarty:nodefaults item='entry_tag' name='loop'}--><!--{if $plugin_entry_tagcloud.tag == $entry_tag}--><span class="current"><!--{/if}--><!--{/foreach}-->{$plugin_entry_tagcloud.tag}<!--{foreach from=$entry_tags|smarty:nodefaults item='entry_tag' name='loop'}--><!--{if $plugin_entry_tagcloud.tag == $entry_tag}--></span><!--{/if}--><!--{/foreach}--></a>{$plugin_entry_tagcloud.count}</li>
            <!--{/foreach}-->
        </ul>
    </div>

解説

    <h3>タグクラウド</h3>
    <div class="content">
        <ul class="tagcloud">
            <!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここから}-->
                <li><a href="{freo設置URL}/entry?tag={plugin_entry_tagcloudのタグ}" style="font-size:{plugin_entry_tagcloudのサイズ}%;"><!--{エントリー記事に登録されているタグをentry_tagとして繰り返して表示するここから}--><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここから}--><span class="current"><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここまで}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}-->{plugin_entry_tagcloudのタグ}<!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここから}--></span><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここまで}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}--></a>{$plugin_entry_tagcloud.count}</li>
            <!--{/foreach}-->
        </ul>
    </div>

エントリーをタグ検索したときに検索中のタグにclassを付与しエントリーを個別に表示しているときにそのエントリーに登録されているタグにもclassを付与する方法

上記のどちらも実装したい贅沢なあなたは下記のソースをご利用下さい。

<h3>タグクラウド</h3>
<div class="content">
    <ul class="tagcloud">
        <!--{foreach from=$plugin_entry_tagclouds|smarty:nodefaults item='plugin_entry_tagcloud'}-->
            <li><a href="{$freo.core.http_file}/entry?tag={$plugin_entry_tagcloud.tag|smarty:nodefaults|escape:'url'}" style="font-size:{$plugin_entry_tagcloud.size}%;"><!--{if $smarty.get.tag == $plugin_entry_tagcloud.tag}--><span class="current"><!--{else}--><!--{foreach from=$entry_tags|smarty:nodefaults item='entry_tag' name='loop'}--><!--{if $plugin_entry_tagcloud.tag == $entry_tag}--><span class="current"><!--{/if}--><!--{/foreach}--><!--{/if}-->{$plugin_entry_tagcloud.tag}<!--{if $smarty.get.tag == $plugin_entry_tagcloud.tag}--></span><!--{else}--><!--{foreach from=$entry_tags|smarty:nodefaults item='entry_tag' name='loop'}--><!--{if $plugin_entry_tagcloud.tag == $entry_tag}--></span><!--{/if}--><!--{/foreach}--><!--{/if}--></a>{$plugin_entry_tagcloud.count}</li>
        <!--{/foreach}-->
    </ul>
</div>

解説

<h3>タグクラウド</h3>
<div class="content">
    <ul class="tagcloud">
        <!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここから}-->
            <li><a href="{freo設置URL}/entry?tag={plugin_entry_tagcloudのタグ}" style="font-size:{plugin_entry_tagcloudのサイズ}%;"><!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここから}--><span class="current"><!--{そうじゃなければ}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここから}--><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここから}--><span class="current"><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここまで}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}--><!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここまで}-->{plugin_entry_tagcloudのタグ}<!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここから}--></span><!--{そうじゃなければ}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここから}--><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここから}--></span><!--{もしplugin_entry_tagcloudのタグとentry_tagのタグが同じだったらここまで}--><!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}--><!--{もし検索しているタグがplugin_entry_tagcloudのタグと同じだったらここまで}--></a>{$plugin_entry_tagcloud.count}</li>
        <!--{エントリーに登録されているタグたち=タグクラウドのタグから一個ずつタグをplugin_entry_tagcloudとして繰り返して表示するここまで}-->
    </ul>
</div>

ページ移動

関連記事

ユーティリティ

Twitter

記事検索

ページ上部へ