Это нормально для расширения Joomla, чтобы иметь и компонент, и плагин? - PullRequest
0 голосов
/ 02 ноября 2011

Подрядчик построил для нас расширение Joomla 1.5, и меня смущает архитектурный выбор, который он сделал.Я не хардкорный пользователь Joomla, поэтому я не знаю, нормально ли он построен.

При установке расширения я получаю две отдельные части:

  • Компонент * , который имеет общесистемные настройки (например, параметр, который включает и отключает функции для сайта в целом)
  • A плагин часть, в которой есть настройки, связанные с контентом (например, настройки, которые определяют, к каким категориям контента и статьям применять компоненты)

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

Вопросы для тех, кто мудрее и опытнее меня:

  1. Это нормально для расширения досостоять как из компонента, так и из плагина?
  2. Является ли технически осуществимым , чтобы объединить какую-либо конкретную функциональность в один компонент или в один плагин?
  3. Если ответ на вопрос № 2 положительный, обычно желательно объединить функциональность?

Надеюсь, этот вопрос не слишком расплывчатый.Спасибо за чтение.

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Ответ - это зависит.Для расширения весьма обычно иметь компонент, модуль (и) и плагин (ы) или любую комбинацию из 3. Прежде всего важно понять разницу в расширениях, чтобы определить, какие из них вам понадобятся.

  1. Плагин - это код, который запускается различными событиями, которые происходят во время выполнения платформы Joomla.Существует несколько типов событий и несколько различных событий в этих типах.Когда плагин запускается, он выполняет любой код, который у вас есть.Это может быть что угодно: от вставки нового контента, изменения поведения по умолчанию, Joomla или другого расширения, или до всего, о чем вы только можете подумать.Больше информации о плагинах и событиях - http://docs.joomla.org/Plugin

  2. Модуль - модуль очень просто используется для отображения контента в позиции модуля.Контент может быть создан самим модулем или извлечен из компонента.Модули - это все, что находится на странице за пределами основной области содержимого, где отображается компонент.

  3. Компоненты - компоненты немного сложнее.Они обычно используются для создания совершенно нового типа контента и имеют много экземпляров этого контента - классифицированные объявления, списки товаров, продукты и т. Д. Компоненты очень часто добавляют дополнительную функциональность, связанную с новыми типами контента, такими как расчет доставки, способы оплаты, пользовательский контент и т. д.

Как только вы поймете, как каждый из них предназначен для взаимодействия с Joomla, вы можете определить, нужен ли вашему расширению компонент и плагин.

2 голосов
/ 02 ноября 2011
  1. Это не всегда тот случай, когда вам нужен компонент и плагин, но есть много веских причин для этого.
  2. Нет, во многих случаях это невозможно

Компоненты и плагины в Joomla имеют совершенно другой диапазон: компоненты в интерфейсе просто реагируют, если они вызываются напрямую (например, /index.php?option=com_your_component), но плагины (особенно контентные плагины) эффективны для всехпо странице.Вы часто нуждаетесь в них обоих, например, если у вас есть компонент для отображения изображений: ваш компонент может показывать вам целую страницу со всеми галереями, а ваш плагин позволяет включать изображения или слайд-шоу в обычные статьи.

...