Как получить доступ к модулю в Joomla - PullRequest
1 голос
/ 27 апреля 2011

Я создал модуль календаря в Joomla. Мой основной файл называется jom_cal. Теперь со стороны администратора я отобразил календарь на левой панели. Далее, что я хочу сделать, - когда пользователь нажимает на дату в календаре, я хочу открыть лайтбокс, который покажет список некоторых записей из базы данных в лайтбокс. Я создал лайтбокс, нам просто нужно передать URL страницы, которую мы хотели бы отобразить в лайтбоксе. Теперь мой вопрос здесь, где я должен написать код для извлечения записей из базы данных и отображения в лайтбоксе, как в модуле, я думаю, что есть только один основной файл с тем же именем, что и модуль. Есть ли способ, которым я могу создать отдельный файл, который будет содержать код для отображения записей из моей базы данных, а затем, как я могу получить доступ к этому файлу (т.е. что будет URL для доступа к этому файлу).

Пожалуйста, наведите меня подходящим способом.

Спасибо - Атул

Ответы [ 3 ]

0 голосов
/ 28 апреля 2011

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

0 голосов
/ 22 мая 2011

Вы должны создать компонент, как ответили другие люди. После того как вы создали макет списка записей, в ссылке на страницу списка записей добавьте format = raw, чтобы отображать только выходные данные компонента, а не отображать окружающий шаблон HTML. Также нужно будет добавить view.raw.php в корень каталога представления для страницы списка записей.

Не уверен, как вы создали лайтбокс. Обычно я использую модальное окно mootools, которое отправляет сообщение ajax, чтобы получить содержимое страницы и отобразить его в лайтбоксе.

0 голосов
/ 27 апреля 2011

Если вы хотите оставаться в рамках Joomla, вам понадобится компонент, который поможет вам в этом.Модули по определению (определение Joomla) используются для рендеринга / отображения данных при загрузке страниц, поэтому любые данные для отображения должны быть извлечены из БД или любых других источников при загрузке страницы.Конечно, в Joomla 1.5 нет безопасного URL-доступа к файлу модуля.

Возможные решения

  1. Используйте вспомогательный компонент.
  2. Если вытащить все свои данные (которые будут отображаться) из БД при загрузке страницы и сохранить их в скрытых элементах на странице, а затем отобразить их в виде световых ящиков при нажатии, то сделайте это.Лично я не буду этого делать по многим причинам.

Ваш модуль, кажется, хочет много.Несколько вещей, чтобы уточнить это.Кто / что создал базу данных, откуда вы хотите отображать записи?это еще один компонент?если да, то у этого компонента, вероятно, будет меню получения этих данных, возможно, вызов ajax и т. д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...