Автоматически создавать новую папку под изображениями при установке модуля - PullRequest
2 голосов
/ 15 марта 2011

Возможно ли расширение Joomla для автоматического создания папки (события) под изображениями -> / images / events /, когда пользователь устанавливает расширение внутри Joomla Administrator?

Ответы [ 3 ]

5 голосов
/ 15 марта 2011

Внутри XML-файла вашего компонента вам нужно добавить следующий атрибут:

<installfile>install.componentname.php</installfile> 

замените на имя вашего компонента, это можно добавить сразу под атрибутом description ваших компонентов install xml file.

После того, как это будет добавлено, вам нужно будет создать файл с именем "install.componentname.php", снова замените имя компонента именем вашего компонента.

Внутри этого файла добавьте следующее:

<?php

// no direct access
defined('_JEXEC') or die('Restricted Access');

// import joomla's filesystem classes
jimport('joomla.filesystem.folder');

// create a folder inside your images folder
if(JFolder::create(JPATH_ROOT.DS.'images'.DS.'events')) {
   echo "Folder created successfully";
} else {
   echo "Unable to create folder";
} ?>

Упакуйте это и установите, файл install..php должен находиться на верхнем уровне вашего zip-архива. Наконец, вам нужно будет добавить этот файл в список файлов компонентов, сразу после атрибута добавьте следующую строку:

<files>
<filename>install.componentname.php</filename>
</files>

Если папка создана успешно, будет указано, что папка создана успешно.

2 голосов
/ 15 марта 2011

вы можете указать собственный скрипт php, который будет запускаться при установке расширения, в файле манифеста вашего расширения [ 1 , 2 ].этот скрипт может создать вашу папку /images/events/.

В установщике есть некоторые различия между joomla 1.5 и 1.6:

1.5

  • Вы можете сделать это толькодля компонентов, а не для модулей или плагинов
  • для указания собственного сценария вы используете раздел <installfile/> файла манифеста

1.6

  • кроме того, для компонентов вы можете использовать пользовательский скрипт установки для модулей и плагинов, также
  • используйте <scriptfile/> раздел файла манифеста

[...] я вижу другой ответ был опубликован.посмотрите на это за 1,5;для 1.6 используйте <scriptfile/> и посмотрите на http://docs.joomla.org/Developers, особенно http://docs.joomla.org/How_to_use_the_filesystem_package.фактическое создание папки оставлено читателю в качестве упражнения.

0 голосов
/ 07 января 2012
<!-- Site Main Media File Copy Section -->
    <media destination="com_helloworld">
        <filename>image.png</filename>
        <filename>flash.swf</filename>
    </media>

http://docs.joomla.org/Components:xml_installfile

...