NP_OnlyImg|イメージタグのみを取り出す

NP_OnlyImg|イメージタグのみを取り出す

Author : pushman|Nucleus|2005-09-17 Sat 10:27

最新バージョンはこちらから
NP_OnlyImg|使用方法とダウンロード


アイテム中のイメージタグ(<img src="..." />)のみを抜き出す自作プラグインです。

プロバイダが提供しているBlogでMoblogをしている方のBlogを見ると、大抵サイドメニューに「最新のMoblog」みたいなものがつけられています。MTでも確かそんな機能があったと思いますが。

それと同じ事をするために作ってみたのですが、高度な事はできないので、アイテム中の本文やイメージタグ以外のタグを無効にすることで実現しています。以下解説です。

とここまで書いて気がついたのですが、僕はNucluesの「<%image%>」「<%media%>」といったタグを使用していないので、それらを使用しているときは動かないと思います。ただ、「NP_Moblog」を使用してMoblogを実現している場合、NP_Moblogがイメージタグとしてデータベースに登録してくれるので、問題ないと思います。

とにかくこのプラグインは、アイテム中のイメージタグイメージタグ「<img />」か「<%image%>」を抽出するプラグインです。

NP_OnlyImgの機能

  1. アイテム中のイメージタグを抽出
  2. 本文、続きの部分どちらでも可
  3. 複数ある場合は、最初の一つだけを抽出

使用方法

「NP_OnlyImg.php」をNucleusのプラグインフォルダにアップロードし、インストールすると、テンプレートで「<%OnlyImg%>」が使用できます。「<%OnlyImg%>」と記述した個所に、そのアイテムがもつイメージタグを一つだけ表示します。

使用例

当サイトでは「Site Menu」の下部に、最新のMoblogを表示するために使用しています。

まず、専用のテンプレート「moblog」を用意します*1。アイテムの本体に

<%OnlyImg%>

と記述し、スキンの表示したい個所に

<%blog(moblog,1)%>

と記述するだけです。ただこれだとすべてのカテゴリーの中から最新のアイテムを持ってくるので、当サイトではMoblog専用のカテゴリーを作り「NP_MultiBlogs」を使用させていただいて次のように記述しています。

<%MultiBlogs(moblog,1,all,,,9)%>

意味は「すべてのBlogから、カテゴリー番号が9のものだけを、1つ表示」です。

ちなみに、moblogテンプレートは以下のように記述しています。

アイテムのヘッダー

<dt id="second">Newest Moblog</dt>

アイテムの本体

<dd class="newestMoblog"><p><a href="<%blogurl%>item_<%itemid%>.html"><%OnlyImg%></a></p>
<p class="postedMoblogTime"><%date%> <%time%></p></dd>

日付フォーマット

%y-%m-%d

時刻フォーマット

%H:%M

Locale

en

後は、スタイルシートで日付を写真に被せたりするように調節しています。

もっと高機能なMoblog表示をしたい方は「Pholiot - サイケデリックビビアン」こちらが大変お勧めです。僕が構築させてもらったサイトでも使用させてもらっています。むちゃくちゃかっこいいですよ。

この程度のこと、プラグインにするまでも無い機能かもしれませんが、こういうことを自分で考えたとおりに動いた瞬間の快感って、なかなかいいいもんですね。簡単だから思い通りに動いているのですが(笑)。

ダウンロード

最新バージョンはこちらから
NP_OnlyImg|使用方法とダウンロード

  • *1名前は何でも構いませんよ、もちろん。

Tag(s): NP_OnlyImg

[Nucleus] Next & Previous

Comment Form (policy)

(メールアドレスは非公開です)

Others
Newest 5 Items

NP_znItemFieldEXとNP_ifの連携

NP_znItemFieldEX|PHP 5で検索機能を有効にする

NP_GoogleMaps|最大ズームレベルを変更

NP_ImageExtractor|エラー修正

NP_ImageExtractor|画像を抽出するプラグイン

Web Service

Google Mapsで緯度と経度を測定

Nucleus CMS: Pure Publishing