コンテンツにスキップ

テンプレートとブロック

Publisherは、記事とブロック(サイドバー/ウィジェット統合用)を表示するためのカスタマイズ可能なテンプレートを提供します。このガイドは、テンプレートカスタマイズとブロック設定について説明します。

テンプレート目的
publisher_index.tplモジュールホームページ
publisher_item.tpl単一記事ビュー
publisher_category.tplカテゴリリスト
publisher_archive.tplアーカイブページ
publisher_search.tpl検索結果
publisher_submit.tpl記事投稿フォーム
publisher_print.tpl印刷用ビュー
テンプレート目的
publisher_block_latest.tpl最新記事ブロック
publisher_block_spotlight.tpl注目記事ブロック
publisher_block_category.tplカテゴリリストブロック
publisher_block_author.tpl著者記事ブロック
{* publisher_item.tpl内で利用可能 *}
<{$item.title}> {* 記事タイトル *}
<{$item.body}> {* 全文コンテンツ *}
<{$item.summary}> {* 概要/抜粋 *}
<{$item.author}> {* 著者名 *}
<{$item.authorid}> {* 著者ユーザーID *}
<{$item.datesub}> {* 公開日 *}
<{$item.datemodified}> {* 最後修正日 *}
<{$item.counter}> {* ビュー数 *}
<{$item.rating}> {* 平均評価 *}
<{$item.votes}> {* 投票数 *}
<{$item.categoryname}> {* カテゴリ名 *}
<{$item.categorylink}> {* カテゴリURL *}
<{$item.itemurl}> {* 記事URL *}
<{$item.image}> {* フィーチャー画像 *}
{* publisher_category.tpl内で利用可能 *}
<{$category.name}> {* カテゴリ名 *}
<{$category.description}> {* カテゴリ説明 *}
<{$category.image}> {* カテゴリ画像 *}
<{$category.total}> {* 記事数 *}
<{$category.link}> {* カテゴリURL *}

テンプレートをテーマにコピーしてカスタマイズします:

themes/mytheme/modules/publisher/
├── publisher_index.tpl
├── publisher_item.tpl
└── blocks/
└── publisher_block_latest.tpl
{* themes/mytheme/modules/publisher/publisher_item.tpl *}
<article class="publisher-article">
<header>
<h1><{$item.title}></h1>
<div class="meta">
<span class="author">By <{$item.author}></span>
<span class="date"><{$item.datesub}></span>
<span class="category">
<a href="<{$item.categorylink}>"><{$item.categoryname}></a>
</span>
</div>
</header>
<{if $item.image}>
<figure class="featured-image">
<img src="<{$item.image}>" alt="<{$item.title}>">
</figure>
<{/if}>
<div class="content">
<{$item.body}>
</div>
<footer>
<{if $item.who_when}>
<p class="attribution"><{$item.who_when}></p>
<{/if}>
<div class="actions">
<{if $can_edit}>
<a href="<{$xoops_url}>/modules/publisher/submit.php?itemid=<{$item.itemid}>">
Edit Article
</a>
<{/if}>
<a href="<{$item.printlink}>" target="_blank">Print</a>
<a href="<{$item.maillink}>">Email</a>
</div>
</footer>
</article>
ブロック説明
最新ニュース最新記事を表示
スポットライト注目記事ハイライト
カテゴリメニューカテゴリナビゲーション
アーカイブアーカイブリンク
トップ著者最も活動的なライター
人気アイテム最も閲覧された記事
オプション説明
表示するアイテム数記事数
カテゴリフィルター特定カテゴリに限定
概要を表示記事の抜粋を表示
タイトル長タイトルを短縮
テンプレートブロックテンプレートファイル

カスタムブロックテンプレート

Section titled “カスタムブロックテンプレート”
{* themes/mytheme/modules/publisher/blocks/publisher_block_latest.tpl *}
<div class="publisher-latest-block">
<{foreach item=item from=$block.items}>
<article class="block-item">
<h4>
<a href="<{$item.link}>"><{$item.title}></a>
</h4>
<{if $block.show_summary}>
<p><{$item.summary}></p>
<{/if}>
<div class="block-meta">
<span class="date"><{$item.date}></span>
<span class="views"><{$item.counter}> views</span>
</div>
</article>
<{/foreach}>
</div>
{* 異なるユーザーに異なるコンテンツを表示 *}
<{if $xoops_isadmin}>
<a href="admin/item.php?op=edit&itemid=<{$item.itemid}>">Admin Edit</a>
<{elseif $item.uid == $xoops_userid}>
<a href="submit.php?itemid=<{$item.itemid}>">Edit Your Article</a>
<{/if}>
{* ステータスに基づくスタイルを追加 *}
<article class="article <{$item.status}>">
{* コンテンツ *}
</article>
{* Smartyで日付をフォーマット *}
<time datetime="<{$item.datesub|date_format:'%Y-%m-%d'}>">
<{$item.datesub|date_format:$xoops_config.dateformat}>
</time>
  • ../User-Guide/Basic-Configuration - モジュール設定
  • ../User-Guide/Creating-Articles - コンテンツ管理
  • ../../04-API-Reference/Template/Template-System - XOOPSテンプレートエンジン
  • ../../02-Core-Concepts/Themes/Theme-Development - テーマカスタマイズ