2010-02-06 Sat

NP_ImageExtractor|使用方法とダウンロード

NP_OnlyImgの後継プラグイン。アイテム中のイメージタグ「<img />」「<%image%>」を抽出して再表示、または削除するプラグイン。個別アイテムスキンで<%if%>を利用し、画像の有無を判断することも可能。

NP_ImageExtractorの機能

  • アイテム中のイメージタグ「<img />」、またはNucleus変数「<%image%>」を1つだけ、または全てを抽出して画像を表示。画像のsrc属性、alt属性のみを抜き出す事も可能。
  • 画像そのもの、または代替テキストを用いて、その画像へのリンクを生成。*1
  • 画像があるとき、または無い時に特定の文字列(xhtmlタグも可)を表示。
  • 個別アイテムスキンにおいて、<%if(ImageExtractor)%>を利用し、そのアイテムに画像の有無を判断可能。

抽出しない画像

以下の画像はデフォルトで表示しません。

  • 幅が1pxの画像
  • alt属性の値が空の画像(オプションで表示可能)
  • class属性の最初の値が「noicon」の画像
  • アイテム中に「<%image(ファイル名|幅|高さ|代替テキスト)%>」と記述している場合、代替テキストの後に「noicon」と指定された画像。または、imgタグで「class="noicon"」と指定された画像。

アイテム中の○番目(オフセット値)の画像を表示。「noicon」指定の画像が○番目の場合、その次の画像を表示します。

<%if%>で利用する場合、「noicon」の指定をしている画像はカウントされます。幅1pxの画像はカウントしません。altが空の画像はオプションで指定できます。

テンプレートへの記述

<%ImageExtractor(モード,サイズ(幅/高さ),画像を内包するタグ,タグのclass,リンクタグのclass,リンクタグのrel,画像が無い時に表示する画像,altが空の時に表示,オフセット)%>

入力例:

<%ImageExtractor(imglink,80,p,extracted,gallery,album,,yes)%>

「サイズ」「タグ」「class名」は「imglink」「allimglink」「thumb」「allthumb」「all」のときに有効です。
「リンクタグのクラス」「リンクタグのrel」は「link」「alllink」「imglink」「allimglink」のときに有効です。

画像表示モード

<%image(sample.jpg,160,120,テスト画像)%>

と入力したときの各モードの表示例。

<%ImageExtractor(src)%>

元の画像のURLを表示

http://www.saple.com/media/sample.jpg
<%ImageExtractor(alt)%>

元の画像の代替テキストを表示

テスト画像
<%ImageExtractor(link,,p,,gallery,album)%>
<%ImageExtractor(alllink,,p,,gallery,album)%>

代替テキストを用いて最初の画像、または全ての画像へのリンクを表示

<p><a href="http://www.saple.com/media/sample.jpg" class="gallery" rel="album" >テスト画像</a></p>
<%ImageExtractor(imglink,,p,,gallery,album)%>
<%ImageExtractor(allimglink,,p,,gallery,album)%>

画像を指定の幅で表示し、その画像へのリンクを一つだけ、または全て表示

<p><a href="http://www.saple.com/media/sample.jpg" class="gallery"><img src="http://www.saple.com/media/sample.jpg" width="80" alt="テスト画像" /></a></p>
<%ImageExtractor(thumb,80/80,p,imagebox)%>
<%ImageExtractor(allthumb,80/80,p,imagebox)%>

画像を指定の幅で一つだけ、または全て表示

<p class="imagebox"><img src="http://www.saple.com/media/sample.jpg" width="80" alt="テスト画像" /></p>

画像表示以外のモード

<%ImageExtractor(delbody)%>
<%ImageExtractor(delmore)%>
<%ImageExtractor(delall)%>

それぞれ全ての画像を削除し、「本文」「続き」「全文」を表示。
NP_SimpleParagraphsがインストールされていると、ほぼ同じルールでマークアップし直します。

<%ImageExtractor(ifimage,,文字列)%>
<%ImageExtractor(ifnotimage,,文字列)%>

画像がある時(または無いとき)に「文字列」を表示します。xhtmlタグ付きの文字列を出力する際は、行頭に「[タグ]」を記述してください。

<%ImageExtractor(imagetext,[タグ]文字列,クラス名)%>

閉じタグも自動で付加されますが、無効にする事も出来ます。リスト表示等の際に有効です。

<%ImageExtractor(imagetext,,[ul]文字列[open],クラス名)%>
<%ImageExtractor(thumb,100,[li],クラス名)%>
<%ImageExtractor(imagetext,,[ul]文字列[close],クラス名)%>

最初と最後は開きタグのみ、閉じタグのみの出力になります。

個別アイテムスキンでの使用方法

<%if(ImageExtractor,== or <= or < or >= or >, 画像の数)%>
<%if(ImageExtractor,=,5)%>
画像が5つあります。
<%elseif(ImageExtractor,>,5)%>
画像が6つ以上あります。
<%else%>
画像はありません。
<%endif%>

ダウンロード

このプラグインのライセンスは、本体であるNucleusに準じ、GPLです。詳しくはNucleus CMS Japan、またはライセンスについて - GNUプロジェクト - フリーソフトウェア財団 (FSF)をご覧ください。

また、このプラグインは僕がPHPの勉強がてら作成したのもので、重大な欠陥があるかもしれません。このプラグインを使用されたことで、不具合が生じても当サイトは責任をとれませんので、ご使用は自己責任でお願いします。

ご報告いただいた不具合やご要望には可能な限り対応したいと思っていますので、なにかありましたらこの記事のコメントまでご連絡ください。

Download:NP_ImageExtractor 1.5(zip)

  1. *1 - 代替テキスト(alt)が空の画像を表示させる場合は、画像のURIがリンクテキストになります。

2010-02-06 Sat by pushman - Category: Nucleus Plugin
Keyword:
Comment: 10 - TrackBack: 0

このページの先頭に戻る

「NP_ImageExtractor|使用方法とダウンロード」へのツイート

「NP_ImageExtractor|使用方法とダウンロード」へのトラックバック

TrackBack URL:

「NP_ImageExtractor|使用方法とダウンロード」へのコメント

カエ wrote...

NP_ImageExtractor 1.0ためしに使わせていただきました。
NP_OnlyImgの後継プラグインということで、同じ感じで使用してみました。プラグイン指定のタグでの表示はうまくいって"これはいいぞー!"と思っていたのですが...、プラグイン指定のタグを表示していない<%body%>だけの時は画像が表示されなくなってしまいました...。
更に本プラグインをアンインストールしても画像が表示されないです。
何がいけないのでしょう....。
宜しくお願いします。

2010-02-23 Tue 23:05

pushman wrote...

カエさま

はじめまして。そして、ご利用ありがとうございます。
さらにご迷惑おかけしているようですみません。

更に本プラグインをアンインストールしても画像が表示されないです。

そのテンプレートの「インライン画像のコード」が空っぽではありませんか?

このプラグインは「インライン画像のコード」に関係なく画像を抽出できますが、<%body%>のときは「インライン画像のコード」または「ポップアップ画像へのリンクコード」が必要になります。

お手数ですが、一度ご確認ください。

2010-02-24 Wed 00:14

カエ wrote...

ありがとうございます!ご指摘の通りでした。基本的な単純ミスでした。現在は調子良く使っております。申し訳ありません。
あと、354行目の"$imageelement = $this->_extractElement($result[$n], $emptyalt);"の部分で最後に", 'fromif'"が足らないみたいでエラーになってました。", 'fromif'"でいいのかわかりませんが...。追加したら大丈夫でした。
この度はお騒がせして申し訳ありません..。

2010-02-24 Wed 00:49

pushman wrote...

カエさま

解決おめでとうございます。お役に立てたようで嬉しいです。そして、エラー報告ありがとうございます。

その修正だと意図しない動作になる可能性がありますので、お手数ですがVer.1.01をダウンロードして上書きしてください。

よろしくお願いします。

2010-02-24 Wed 09:04

よっしゅ wrote...

NP_OnlyImgから乗り換えようとテスト中です。
抽出サイズの縦幅指定ができるようになり、とても便利ですね。
ただ、noiconをこのように指定をしても、スキップされず、<img src="" height="150" alt=" " />といった具合に、空の画像タグが出力されてしまいます。
<%image(ファイル名|幅|高さ|代替テキスト|noicon)%>

2010-06-20 Sun 11:41

pushman wrote...

よっしゅさん

ご利用ありがとうございます。そして、ご迷惑おかけしてすみません。

ざくっと確認してみたのですが、現象が確認できませんでした。差し支えなければ、それを表示しているテンプレート内容(このプラグイン部分だけでも結構です)を教えていただけますか?

2010-06-20 Sun 12:38

よっしゅ wrote...

<%ImageExtractor(thumb,/150,div,leftbox,,,,yes,0)%>
これでやっています。

2010-06-22 Tue 14:26

pushman wrote...

よっしゅさん

ご連絡ありがとうございます。
ただ、やはりこちらの環境では再現できませんでした…念のため別の件で修正したv1.02を公開したので、ダウンロードしてみてください。

また、何度も確認していただいてると思いますが、記事中の
<%image(ファイル名|幅|高さ|代替テキスト|noicon)%>
の「noicon」のスペルミスや、区切り線「|」の抜けが無いかご確認ください。

また特定のテンプレートやスキンだけなく、常にその現象が起きるかもチェックしてみてください。

お手数おかけしますが、よろしくお願いします。

2010-06-23 Wed 00:05

よっしゅ wrote...

v1.02に変えてみたところ、うまく表示されるようになりました。
ほかの箇所はそのままでも問題ありませんでした。
素早いご対応、誠にありがとうございました。

2010-06-23 Wed 20:20

pushman wrote...

よっしゅさん

v1.02に変えてみたところ、うまく表示されるようになりました。

あらら、僕の読みが外れてしまったみたいお恥ずかしい限りです。
でもとにかく直ってよかったです。
いろいろご連絡ありがとうございました。また何かあればお気軽にご連絡ください。

2010-06-24 Thu 00:58





このページの先頭に戻る