サマリ | imgurの画像を表示する。 |
---|---|
リビジョン | 2.0 |
対応バージョン | All (未確認) |
投稿者 | NoName |
投稿日 | 2016-01-25 (月) 14:00:07 |
世界的にディファクトスタンダードな画像アップローダーであるimgurの画像を簡単に表示できるようにします。 なお、表示される画像についてはimgurに依存するためどのような画像が表示されても当方は責任を持ちません。
<?php define(IMGUR_IMG_TAG, '<img src="##IMG##" title="##TITLE##" style="width:##IMG_W##;height:##IMG_H##;" />'); define(IMGUR_IMG_LINK, '<a href="##IMG##" title="##TITLE##">##IMGUR_IMG_TAG##</a>'); function plugin_imgur_inline() { $_args = func_get_args(); $_imgur = array('img_id', '_size', '_opt', '_title'); foreach ($_args as $i => $_arg) { if (stristr($_arg, '=')) { list($argkey, $argvar) = explode('=', $_arg); $_imgur[$argkey] = $argvar; } else { $_imgur[$_imgur[$i]] = $_arg; } } $_img_size = array(); if (stristr($_imgur[_size], 'x')) { list($_img_size[_w], $_img_size[_h]) = explode('x', $_imgur['_size']); $_img_size[_w] .= 'px';$_img_size[_h] .= 'px'; } else { $_img_size[_w] = $_img_size[_h] = $_imgur[_size].'%'; } $_opts = array(); foreach (explode(':', $_imgur['_opt']) as $_opt) { $_opts[$_opt] = 1; } $_img = 'http://i.imgur.com/'.htmlsc($_imgur[img_id]).'.jpg'; $_img_title = ($_imgur[_title]) ? htmlsc($_imgur[_title]) : htmlsc($_imgur[img_id]).'.jpg'; $_tag = $_opts[nolink] ? IMGUR_IMG_TAG : str_replace("##IMGUR_IMG_TAG##", IMGUR_IMG_TAG, IMGUR_IMG_LINK); $_tag = str_replace("##IMG##", $_img, $_tag); $_tag = str_replace("##TITLE##", $_img_title, $_tag); $_tag = str_replace("##IMG_W##", $_img_size[_w], $_tag); $_tag = str_replace("##IMG_H##", $_img_size[_h], $_tag); return $_tag; } ?>
URI形式の文字列が書けないため:を:に変換してください