Я создал пару плагинов для Joomla 3.2 и недавно начал использовать компонент для управления арендой квартир. Мне было интересно, существует ли какая-либо инфраструктура, в которой уже была создана базовая структура файлов / папок с файлами, необходимыми для быстрого запуска компонента.
Я не хочу заново создавать колесо при каждом запуске, а файлы и классы, необходимые для запуска компонента, имеют базовую необходимую структуру. Там уже есть один?
Если нет, то какой из стандартных компонентов Joomla будет хорошим примером для работы?
РЕДАКТИРОВАТЬ: увидев ответы, я думаю, что, возможно, «рамки» был плохим выбором терминов. Я не ищу ничего, что имеет собственную кодовую базу. Я искал что-то, что имеет структуру файлов / папок, общую для всех компонентов Joomla и необходимую для запуска, такую как контроллер, папка представлений, папка моделей и т. Д.
То, что я ищу, не должно иметь зависимостей, которые уже не являются частью основного кода Joomla.
Я нашел один для joomla 1.5, в котором были все необходимые файлы, и все, что вам нужно было сделать, это переименовать классы и файлы в соответствии с именем вашего компонента и установить его, и у вас будет базовое представление администратора, представление интерфейсного меню и т. Д. ... Я надеюсь, что кто-то там создал один для
источник
Ответы:
Одним из инструментов, который я использовал в прошлом, является Создатель компонентов: http://www.component-creator.com/en/ .
Этот инструмент позволяет вам набросать одну таблицу бесплатно (больше, если вы подпишетесь на платный пакет), а также другую общую информацию о самом компоненте. Затем вы можете загрузить установочный zip-файл, чтобы запустить компонент.
Для тех, кто в любом случае с радостью приступает к написанию кода, это может быть отличным простым методом для начала разработки компонента.
Есть также некоторые расширения, которые вы можете установить в Joomla, чтобы помочь вам в разработке других компонентов Joomla. Одним из примеров этого стиля помощника является это бесплатное расширение Easy Creator: http://extensions.joomla.org/extensions/miscellaneous/development/5908
Это может быть отличным дополнением для среды тестирования, смешанной с инструментом сборки в одном удобном пакете.
Существует еще один инструмент под названием Joomla Component Generator для простой и быстрой генерации компонентов. Это позволяет создавать неограниченное количество таблиц бесплатно. Есть платные пакеты, но покупать их не обязательно, если вам не нужно несколько просмотров. Он также генерирует устанавливаемый zip-файл для загрузки. Тест показывает преимущества этого генератора. Посмотрите на сгенерированный код и отступы.
http://www.componentgenerator.com/
источник
После написания многочисленных расширений для клиентов я обнаружил, что снова и снова повторяю множество одинаковых шаблонов. Чтобы сохранить вещи сухими, я создал «компонентную структуру», которая абстрагирует большинство общих задач, которые я выполняю, но до сих пор она использовалась только внутри моей компании. Ему не хватает многих функций, но он выполняет работу для того, что мне нужно.
Я сказал это, чтобы сказать это - разработайте свою собственную компонентную структуру таким же образом. Возьмите общие черты кода, который вы в настоящее время производите, и переместите его на уровень иерархии OO в свой собственный слой, который находится между вашим компонентом и Joomla. При таком подходе вы избегаете проблемы «если фреймворк рухнет», о которой упоминал Чад, и понимаете ее гораздо лучше. До сих пор это работало хорошо для меня.
источник
Я не люблю рекомендовать какие-либо «рамки» для такого рода вещей по нескольким причинам:
1) В CMS есть «фреймворк», и мне бы хотелось, чтобы, если нужно было «упростить» написание расширений, мы бы сосредоточились на основном коде фреймворка, а не на написании сторонних элементов.
2) Если вы пишете свое расширение на фреймворке, которое перестает существовать, вы скорее всего испорчены.
3) Использование ядра в идеале позволит улучшить обновления. Это не всегда так, поэтому существуют сторонние структуры для этого, но чем больше мы настаиваем на том, что это так, и ожидаем, тем больше будет на самом деле. Если мы не сосредоточимся на этом, это никогда не улучшится.
-
Таким образом, в Joomla есть «RAD Framework», называемый FoF (framework на framework). Я не использовал его, но это, как говорят, инструмент для экономии времени. Здесь есть некоторая документация:
https://www.akeebabackup.com/documentation/fof/getting-started-with-fof.html
Примечание. FoF включен в дистрибутив Joomla 3.2, поэтому вам не нужно устанавливать его, если вы используете расширение для Joomla 3.2+.
Наконец, если вы хотите остаться в ядре и использовать базовые классы MVC, в настоящее время все еще рекомендуется использовать устаревшие классы MVC (изменится, как только новый MVC будет тщательно изучен). Хорошим базовым расширением является компонент com_contact или com_banners. Они довольно просты, и вы можете выбрать такие вещи, как JForm и пользовательские модели.
источник
Я очень рекомендую Cook Self Service . Я считаю, что это небольшая плата, но она генерирует около 85% нашего основного образовательного компонента, экономя 1000 долларов для начала работы, и сгенерированный код был приятным и чистым для нашей модификации.
источник
Вы взглянули на компонент Joomla Hello World ? Я еще не смотрел на это, но похоже, что он имеет минимальное количество файлов, необходимых для создания компонента. Также, поскольку Joomla 3.2 включает Framework on Framework (FOF), вы рассматривали пример компонента To-Do FOF ? Я знаю, что у меня есть собственный компонент Joomla 3.x в моем списке дел, и это были два примера, которые я планировал использовать в начале проекта. Надеюсь, они тоже будут работать на вас.
источник
Мы разработали RB Framework поверх Joomla. Мы используем его для разработки наших компонентов (PayPlans, PayInvoice и т. Д.) ( Https://github.com/readybytes/rbframework )
Для этого у нас есть компонентный компоновщик ( https://github.com/readybytes/component-builder )
Выше рамки уменьшает много стресса, делая одни и те же вещи снова и снова.
Имп:
источник