Miniposter PRO v2 by Sander

Автоматическое создание уменьшенных копий изображений. Автор модуля - Sander. Добавляю его сюда, потому что он уже давно был слит в паблик. Но с маленьким исключением - он оформлен под плагин DLE. После загрузки плагина запустите файл site.ru/keygen.php для генерации ключа, который надо будет прописать в файл - \engine\mods\miniposter\config.php.
Пример использования:
{poster src='{image-1}' default='/uploads/mini/noimage.jpg' width='170' height='250' q='80' zoom='no' jpg='yes'}
Все параметры кроме src не обязательны, так же все параметры по умолчанию можно заменить в config.php этого модуля.
В комментарии архива добавлен текст по установке модуля, но всё это прописано в в самом плагине.
miniposter_v2_plugin.zip
[34.26 Kb] (cкачиваний: 120)
Хак адаптирующий значение доп.поля если в нем прописана картинка с BB тегом img или thumb
В папке /engine/mods/ создать файл get_src.php с содержимым:
<?PHP
if(!defined('DATALIFEENGINE'))die("Hacking attempt!");
preg_match("#src=['\"](.+?)['\"]#i",$f,$img);
echo $img[1]?str_replace("/thumbs/","/",$img[1]):$f;
?>
В шаблоне выводить вместо просто [xfvalue_poster] кодом:
{include file="engine/mods/get_src.php?f=[xfvalue_poster]"}
////////////////////////
Правка для того что бы имя было как у картинки а не генерировалось числами.
Открываем /engine/mods/miniposter/index.php находим
$type = explode(".",$src);
Выше вставляем:
$nameimg_end = explode("/", $src);
$nameimg_end = end($nameimg_end);
$nameimg_end = explode(".", $nameimg_end);
unset($nameimg_end[count($nameimg_end)-1]);
$nameimg_end = implode($nameimg_end);
Далее ищем:
$image_name = substr($image_name,2,50);
Меняем на:
$image_name = $nameimg_end . "." . $type;
miniposter_v2_plugin_original_file_name.zip
[34.29 Kb] (cкачиваний: 38)
////////////////////////
Правка для повышения четкости картинки. Эта правка требует библиотеку GD 2.1.0 или выше.
Открываем /engine/mods/miniposter/index.php находим
imagedestroy($image);
Ниже вставляем:
$sharpenMatrix = array
(
array(-1.2, -1, -1.2),
array(-1, 20, -1),
array(-1.2, -1, -1.2)
);
$divisor = array_sum(array_map('array_sum', $sharpenMatrix));
$offset = 0;
imageconvolution($poster, $sharpenMatrix, $divisor, $offset);
miniposter_v2_plugin_original_file_name__gd.zip
[34.39 Kb] (cкачиваний: 46)
Источник
Внимание! У Вас нет прав для просмотра скрытого текста.
Похожие статьи:
Комментарии: