2013-09-26 3 views
1

Я attmpting тянуть все необходимые файлы, которые составляют ядра componnent WebLinks из моего 2.5 установки Joomla в отдельный каталог, так что я могу используйте его для создания настраиваемого компонента с дополнительными полями.Использования ядра Joomla компонент в качестве основы для пользовательского компонента

Мои проблемы:

  1. Я не могу показаться, чтобы выяснить все файлы, необходимые для вырываться, чтобы потом преуспевающим заново установить пользовательский компонент
  2. я не могу выяснить все переименование, которое необходимо выполнить в пользовательском компоненте, чтобы гарантировать, что он не повредит основную установку при ее повторной установке.

Кто-нибудь сделал это раньше? Я посмотрел на создание настраиваемого компонента с нуля, и это кажется слишком большим количеством работы для не-веб-разработчика. Это также кажется излишним, чтобы добавить пару полей.

+2

я рекомендовал бы использовать что-то вроде бесплатной версии этого получить устанавливаемую файл: http://www.notwebdesign.com/joomla-component-creator/. Затем настройте его с кодом из основного компонента. Получение правильного названия может быть довольно сложным. –

ответ

2

Сделайте чистую копию (вне корневого каталога) структуры папок компонента, как того требует файл манифеста компонента (xml в администраторе/components/com_weblinks).

Для этого необходимо установить и завершить.

Теперь выполните следующие команды, если вы находитесь в Linux или OSX; или загрузить Cygwin, если вы на окнах

grep -rl oldname . |xargs sed -i -e 's/oldname/newname/g' 
grep -rl Oldname . |xargs sed -i -e 's/Oldname/Newname/g' 
grep -rl OLDNAME . |xargs sed -i -e 's/OLDNAME/NEWNAME/g' 
rename 's/oldname/newname/g' * 

Убедитесь, что вы переименовали все вхождения:

grep -rli oldname . 

Если ничего не приходит, вы хорошо идти; else, просто grep и pipe to sed, как показано выше. Убедитесь, что вы никогда не используете замену без учета регистра: это наверняка сломает ваш код.

Корректируйте манифест .xml вручную.

Повторная упаковка и попробуйте установить. Прочитайте все сообщения об ошибках (или журнал ошибок, если это не ясно), у вас должно быть мало проблем с созданием установочного пакета). Повторная установка не приводит к повреждению (если вы не ошиблись в файлах .xml).

PS: Это отвечает на ваш вопрос, но, возможно, предложение Дэвида-Фриша может быть проще и эффективнее в вашем случае, вы получаете всю структуру компонентов, созданную в аккуратном и простеньком стиле, с небольшой избыточностью в редактировании интерфейса но в целом отличный старт. Они переместились на new site.

+0

Я думаю, что этот путь определенно так, как я хочу, но я, возможно, принял преждевременно. У меня возникли проблемы с просмотром не найденных ошибок сейчас: 'Просмотр не найден [имя, тип, префикс]: c4meweblinks, html, c4meweblinksView'. Есть идеи? Я просмотрел документы Joomla об именовании, и все это кажется хорошим. – goji

+1

Хотя я никогда не проверял это, было указано, что числа в названиях имен вызывают проблемы (переименуйте c4me в cforme); кроме этого, имя представления должно соответствовать его папке и компоненту, но, я думаю, вы получили это право. –

+0

Оказывается, это больше связано с причудой в компоненте основных веб-ссылок. Компонент предполагает, что ваше множественное имя администратора будет тем же именем, что и компонент. Dooing 'JFactory :: getApplication() -> input-> set ('view', $ view);' перед вызовом 'parent :: display();' в контроллере исправлено его. Думаю, это никогда не предназначалось для настройки. – goji

1

Вы можете легко создать новый компонент, используя официальный представитель joomla tutorials.

Сначала вы должны идентифицировать вас как требование компонента требуется передний конец и задний конец или SQL таблиц и т.д.

Следующим шагом является определение вас требование соответствия Joomla официальные обучающие программы, которые вы можете легко получить из статей в этом серию.

В конце этого урока вы можете скачать компонент com_helloworld.

Просто распакуйте пакет и переименуйте все вхождение hellowolrd из структуры папок, если вы используете IDE, например Dreamweaver, просто достигаете этого, используя параметры поиска папок.

Это переименует вас заполнить com_helloworld папка содержит helloword текст.

Последний шаг - переименовать ваши файлы на все случаи возникновения вашего helloworld в вашем файле, на котором установлено новое имя вашего компонента. и папка тоже

Затем пакет и задача завершены.!

Надежда это имеет смысл ..

Смежные вопросы