This is the content of my install directory (zip)
site
controllers
language
models
views
ciie.php
controller.php
index.html
admin
sql
models
language
helpers
controllers
tables
views
ciie.php
controller.php
ciie.xml
index.html
ciie.xml
media
index.html
And here is my manifest xml file
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="2.5.0" method="upgrade">
<name>CIIE</name>
<creationDate></creationDate>
<author></author>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<copyright></copyright>
<license></license>
<version></version>
<description></description>
<install> <!-- Runs on install -->
<sql>
<file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
</sql>
</install>
<files folder="site">
<folder>controllers</folder>
<folder>language</folder>
<folder>models</folder>
<folder>views</folder>
<filename>ciie.php</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
</files>
<media destination="com_ciie" folder="media">
<filename>index.html</filename>
<folder>images</folder>
</media>
<administration>
<menu img="../media/com_ciie/images/tux-16x16.png">CIIE</menu>
<files folder="admin">
<folder>sql</folder>
<folder>models</folder>
<folder>language</folder>
<folder>helpers</folder>
<folder>controllers</folder>
<folder>tables</folder>
<folder>views</folder>
<filename>ciie.php</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
</files>
</administration>
</extension>
The problem is after installing some of the folders are not properly copied to component directories Here is what I got after install
Front end (site)
com_ciie
views
ciie.php
controller.php
index.html
Backend (Administrator)
ciie.xml
index.html
ciie.php
Then I changed the manifest xml file to see if my xml has a problem. I removed all the folder tags
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="2.5.0" method="upgrade">
<name>CIIE</name>
<creationDate></creationDate>
<author></author>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<copyright></copyright>
<license></license>
<version></version>
<description></description>
<install> <!-- Runs on install -->
<sql>
<file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
</sql>
</install>
<files folder="site">
<filename>ciie.php</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
</files>
<media destination="com_ciie" folder="media">
<filename>index.html</filename>
<folder>images</folder>
</media>
<administration>
<menu img="../media/com_ciie/images/tux-16x16.png">CIIE</menu>
<files folder="admin">
<filename>ciie.php</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
</files>
</administration>
</extension>
But The same folder structure is repeated in the component directories Here is what I got after install
Front end (site)
com_ciie
views
ciie.php
controller.php
index.html
Backend (Administrator)
ciie.xml
index.html
ciie.php
As you can see the second mainfiest file doesn't include any folder (all folder tags are removed) but 'views' folder is copied in the front end! What it seems for me is that the manifest file doesn't have any effect on the 'broken' installation. Did I miss anything?
You have two copies of ciie.xml in your package, one in the root and the other in admin; you should only keep the one in the root, it will be copied to the admin directory by the installer. And it will make debugging easier (in your second run without the folders you still get the "views" frontend folder which is not specified in the xml, I guess it's using the wrong one!
Try and recreate the structure using Joomla Component Creator and then see what the difference is in the manifest file.
Make sure to update the question as I am curious now.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.