imgur.inc.php

サマリ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形式の文字列が書けないため:を:に変換してください

バグなど

  • nolink,size,titleオプションを追加しました。(nolink,400x300,TITLE)のように指定してください -- 2016-01-29 (金) 18:18:44


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-01-29 (金) 18:18:44
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u2. HTML convert time: 0.568 sec.

OSDN