我想为Joomla 3创建一个插件,当登录用户在媒体管理器中上传图像时,该插件会自动调整图像的大小。
到目前为止我尝试过的:
<?php
defined('_JEXEC') or die('Restricted access');
class PlgSystemEasyImageResizer extends JPlugin
{
protected $allowedMimeTypes = array('image/jpeg', 'image/png', 'image/gif');
public function onContentBeforeSave($context, $article, $isNew)
{
if ($context == 'com_media.file') {
JFactory::getApplication()->enqueueMessage('MY MESSAGE');
JFactory::getApplication()->enqueueMessage(strval($article));
JFactory::getApplication()->enqueueMessage(var_dump($article->tmp_name));
JFactory::getApplication()->enqueueMessage(var_dump($article->path));
JFactory::getApplication()->enqueueMessage(var_dump($article->type));
}
return true;
}
}
但是在上传后,我仅收到以下消息:
MY MESSAGE
Joomla\CMS\Object\CMSObject
Fertig hochgeladen: /AAAAAAAAA.jpg
如何从该对象获取图像并调整其大小? (我想使用本地php函数)。
并且如何返回应保存大小的图像?
您可以查看以下两个解决方案之一:
'Easy Image Resizer'一个可以完成您想要做的事情的插件https://extensions.joomla.org/extension/eir-easy-image-resizer/
'Quantum Manager'一个新组件,它将替换并扩展您所知道的标准媒体管理器。从调整大小到修改https://extensions.joomla.org/extension/quantum-manager/