Search code examples
xmljoomlajoomla-extensions

How to fix a Joomla plugin manifest?


I've developed a simple plugin for Joomla! 3.6 but I can't get it installed on my server. I tried different setup methods and after some researchs I think that the problem resides inside my XML manifest.

The error I get is:

Attention: JInstaller: :Install: Cannot find Joomla XML setup file
Error: Cannot find installation package

My XML manifest is the following:

<?xml version="1.0" encoding="utf-8"?>
<extension version="3.6" type="plugin" group="mygroup" method="upgrade">
<name>plg_mygroup_emailnotify</name>
<author>Frollo</author>
<creationDate>2017-01-25</creationDate>
<copyright>Copyright (C) 2017 Frollo</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<version>1.0.1</version>
<description>PLG_MYGROUP_EMAILNOTIFY_XML_DESCRIPTION</description>

<files>
    <filename plugin="emailnotify">emailnotify.php</filename>
    <folder>language</folder>
</files>

<config>
    <fields name="params">

        <fieldset name="PLG_FIELDSET_GENERAL">
          <field name="general_mailfrom_address"
                 type="email"
                 label="PLG_GENERAL_MAILFROM_ADDRESS"
                 description="PLG_GENERAL_MAILFROM_ADDRESS_DESC"
            />

            <field name="general_mailfrom_name"
                   type="text"
                   default=""
                   label="PLG_GENERAL_MAILFROM_NAME"
                   description="PLG_GENERAL_MAILFROM_NAME_DESC"
                   size="30" />

        </fieldset>
        <fieldset name="PLG_EMAILNOTIFY_FIELDSET_ESTIMATE">
          <field
            name="estimate_approve_link"
            type="text"
            default="http://wwww.example.com"
            />
        </fieldset>

    </fields>
</config>
</extension>

EDIT - Some other details: I have had no troubles installing other plugins or components on the server. The directory structure is the following:

+ emailnotify
  + language
    + it-IT
      - it-IT.ini
  - emailnotify.php
  - emailnotify.xml

Solution

  • The problem was in the last fieldset. The default url contained some GET parameters, in the form

    http://www.example.com/index.php?param1=param1&param2=param2
    

    The presence of the & broke the XML, replacing it with &amp; fixed the XML