You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Joomla分类添加第二张图片插件失效问题求助

Joomla分类添加第二张图片插件故障排查

默认情况下,Joomla分类仅支持添加一张图片,我想给分类插入第二张图片,于是制作了一个扩展category.xml的插件,但插件无法正常工作。

插件文件如下:

categorydrawing.xml

<?xml version="1.0" encoding="utf-8"?>
<extension type="plugin" group="content" method="upgrade">
    <name>plg_category_drawing_image</name>
    <description>为分类添加绘图图片</description>
    <files>
        <filename plugin="categorydrawing">categorydrawing.php</filename>
        <folder>params</folder>
    </files>
</extension>

categorydrawing.php

<?php
// 禁止直接访问
defined ('_JEXEC') or die;
class plgContentExample extends JPlugin
{
    /**
     * 实例化时加载语言文件
     * 仅支持Joomla 3.1及以上版本,若要兼容3.0需重写构造函数
     *
     * @var boolean
     * @since <1.0>
     */
    protected $autoloadLanguage = true;

    /**
     * 准备表单并添加自定义字段
     *
     * @param   JForm  $form  待修改的表单
     * @param   mixed  $data  表单关联数据
     *
     * @return  boolean
     *
     * @since   <1.0>
     */
    function onContentPrepareForm($form, $data)
    {
        $app    = JFactory::getApplication();
        $option = $app->input->get('option');

        switch($option)
        {
            case 'com_categories' :
                if ($app->isClient('administrator'))
                {
                    JForm::addFormPath(__DIR__ . '/forms');
                    $form->loadFile('category', false);
                }

                return true;
        }

        return true;
    }
}
?>

故障修复方案

1. 修正插件类名

插件类名必须与插件标识、文件名保持一致,将plgContentExample改为plgContentCategorydrawing:

class plgContentCategorydrawing extends JPlugin
{
    // 其余代码保持不变
}

2. 补全表单文件及路径

  • 在插件目录下创建forms文件夹,新建category.xml文件定义第二张图片字段:
<?xml version="1.0" encoding="utf-8"?>
<form>
    <fields name="params">
        <fieldset name="drawing_image" label="绘图图片">
            <field
                name="drawing_image"
                type="media"
                label="选择绘图图片"
                description="为分类添加第二张图片"
                directory="categories"
            />
        </fieldset>
    </fields>
</form>
  • 在插件xml文件中添加forms文件夹声明:
<files>
    <filename plugin="categorydrawing">categorydrawing.php</filename>
    <folder>params</folder>
    <folder>forms</folder>
</files>

3. 检查插件状态

确保插件在Joomla后台已安装并启用。

内容的提问来源于stack exchange,提问作者zhang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 15:17:24