Тэг для уменьшения картинки средствами системы
Posted: Tue Oct 25, 2011 11:46 pm
Зачем? Ответ здесь
: http://von-hamster.ru/programmizm/php/c ... i-sistemy/
Коротко:
Cоздадим тэг, например, 'boxImage' c содержанием, которое приводится ниже. Далее на любой странице его можно вызвать следующим образом: {boxImage src='путь к картинке относительно uploads/images' [class='дополнительные классы к ссылке']

Коротко:
Cоздадим тэг, например, 'boxImage' c содержанием, которое приводится ниже. Далее на любой странице его можно вызвать следующим образом: {boxImage src='путь к картинке относительно uploads/images' [class='дополнительные классы к ссылке']
} - при этом, если у картинки не было превьюшки она создается.
Ну и напоследок - последние строчки можно изменить как угодно, я просто привел то, что у меня получилось. Основная часть до строчки с $addClass.
Ну и напоследок - последние строчки можно изменить как угодно, я просто привел то, что у меня получилось. Основная часть до строчки с $addClass.
Code: Select all
$config = $GLOBALS['gCms']->GetConfig();
$imDir = '/lib/filemanager/ImageManager';
$root = $config['root_path'] . $imDir;
require_once($root . '/config.inc.php');
require_once($root . '/Classes/ImageManager.php');
$manager = new ImageManager($IMConfig);
$image = ltrim($params['src'], '/');
$thumb = $manager->getThumbnail($image);
if (strpos($thumb, 'thumbs.php?img') !== false) {
$thumb = $imDir . '/' . $thumb;
}
$addClass = 'agfbx';
if (isset($params['class'])) {
$addClass .= ' ' . $params['class'];
}
$addParams = '';
if (isset($params['align'])) {
$addParams .= ' align="' . $params['align'] . '"';
}
echo "<a class="{$addClass}" href="uploads/images/{$image}" target="_blank">
<img src="{$thumb}" alt="" />
</a>";