Новости Joomla

Свои типы полей в Joomla.

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

Это большая тема, о которой можно говорить очень много. Самое главное, что возможности применения ограничиваются только вашей больной фантазией. Вы строите интерфейс своего модуля или плагина и вам нужно подтянуть данные из сторонней системы (список чего-нибудь по какому-нибудь API), чтобы сохранить выбранный id в Joomla. Или сделать какую-то проверку и в зависимости от неё показать то или иное сообщение пользователю. Для этого подойдут свои пользовательские типы полей. Интерфейс Joomla по большей части описан в XML-файлах. У каждого из них свои параметры. Некоторые не описаны в документации (manual.joomla.org), поэтому самым любопытным будет полезно заглянуть в собственно файлы фреймворка по пути

libraries/src/Form/FormField.php, а так же в
libraries/src/Form/Fields. У каждого класса поля перечислены его специфические свойства, которые можно описывать в XML. А в своём типе поля вы можете устанавливать эти значения программно. В моём модуле WT Quick links под капотом происходят изменения. Теперь для работы (в админке) ему нужен вспомогательный плагин. А в самом модуле нам бы проверить, а не выключен ли он? В Joomla есть тип поля Note - заметка. Его можно использовать для вывода примечаний.

<field type="note" name="your_note_for_user" label="Заголовок примечания" title="Альтернативный способ для заголовка" description="Текст примечания" class="col-12 alert alert-info" heading="h1" close="true" />

heading - указывать уровень заголовка.
close - позволяет закрыть это примечание. В классе поля
libraries/src/Form/Field/NoteField.php описана логика вывода. И в принципе оно нам подходит для нашей задачи. Но оно будет выводить сообщение всегда, а нам нужно только тогда, когда плагин отключён. Поэтому берём и создаём свой класс поля, который мы унаследуем от
NoteField. Это значит, что у нас в руках будет весь инструментарий стандартного поля
Note + то, что мы сами добавим. В XML-манифест добавляем наше поле

<field type="systempluginstatus" name="systempluginstatus" addfieldprefix="Joomla\Module\Wtquicklinks\Site\Fields"/>

-

type - имя файла и класса,-
addfieldprefix - указываем namespace к нашему классу, может быть любой нам нужный-
name - нельзя полю без имени...Это означает, что Joomla будет использовать класс поля из файла
modules/mod_wt_quick_links/src/Fields/SystempluginstatusField.php.А в классе поля будет написано следующее:

<?php // namespace для атрибута addfieldprefix namespace Joomla\Module\Wtquicklinks\Site\Fields; // нельзя напрямую обращаться к этому файлу defined('_JEXEC') or die; // подключаем родительский класс для переопределения use Joomla\CMS\Form\Field\NoteField; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\PluginHelper; // имя класса и имя файла точь-в-точь class SystempluginstatusField extends NoteField { protected $type = 'Systempluginstatus'; protected function getLabel() { // если плагин не включён if(PluginHelper::isEnabled('system','wtquicklinks')) { // меняем свойства родительского класса $this->class = 'alert alert-danger w-100'; $this->element['label'] = '⚠️ А-а-а-а!'; $this->element['description'] = 'Плагин не включён!!'; // и просто рендерим его с нашими свойствами return parent::getLabel(); } // А иначе всё хорошо, скрываем поле из виду. $this->parentclass = 'd-none'; return ''; } }

Просто и удобно. И людям приятно, что о них позаботились и рассказали почему что-то не работает. @webtolkru#joomla #php #webdev #разработка

Обновлена информация в Плане развития Joomla

👩‍💻 Обновлена информация в Плане развития Joomla.Здесь собрана информация о датах релизов, описаны принципы версионирования, указаны ответственные за релизы, а так же даты окончания поддержки релизов. Опираясь на эту информацию вы можете планировать развитие ваших интернет-проектов.👩‍💻 Что нового?⛔️ Joomla 4.Дата окончания исправления ошибок безопасности в версии 4.x - 14 октября 2025г. ⚠️ После этой даты Joomla 4 прекратит получать какие-либо обновления, в том числе безопасности - вообще. Рекомендуем обновить ваши сайты до актуальной Joomla 5.✅ Joomla 5.- Дата окончания исправления ошибок в версии 5.x - 13 октября 2026г.- Дата окончания исправления ошибок безопасности в версии 5.x - 12 октября 2027 года.- Текущая актуальная (на момент написания заметки) версия - 5.3.1.- Опубликовано расписание выхода релизов Joomla 5.4. Стабильный релиз ожидается 14 октября 2025 года.✅ Joomla 6.- Дата окончания исправления ошибок в версии 6.x - 17 октября 2028г.- Дата окончания исправления ошибок безопасности в версии 6.x - 16 октября 2029г.- Опубликовано расписание выхода релизов Joomla 6.0. Стабильный релиз ожидается 14 октября 2025 года.- Для разработчиков уже доступна Joomla 6.0.0-alpha1.✅ Joomla! Framework.Обновлена информация о Joomla! Framework - полноценном PHP-фреймворке для разработки. Он в версиях 1.х и 2.х был самостоятельным параллельным проектом, однако начиная с версии Joomla 4.0 стал её основой. Добавлена информация о Joomla! Framework 3.x, который вышел 6 октября 2023 года. Его можно использовать в тех случаях, когда вам в проекте не нужна CMS Joomla целиком.Подробнее на сайте Joomla-сообщества Joomlaportal.ru#joomla #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 76365 Просмотров

Всем привет! имеется вопрос (возможно тупой): как в материал вставить ссылку на другой материал? Где взять ссылку на материал? пытаюсь добавить сначала в меню ссылку, но не получается
« Последнее редактирование: 26.10.2009, 19:16:43 от PaLyCH »
*

item32

  • Захожу иногда
  • 53
  • 10 / 2
*

VETERINAR

  • Давно я тут
  • 855
  • 165 / 14
  • Kiss my shiny metal ass!
Использую для этих целей визуальный редактор JCE и плагин к нему jce_advlink. Очень удобно.
*

kefir

  • Захожу иногда
  • 61
  • 3 / 0
*

Dober

  • Новичок
  • 9
  • 0 / 0
ссылка на материал у тебя написана в адресной строке браузера.... скопируй ее и вставь в текст другого материала....
*

Tureckiy

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
В каждой статье есть ссылка в окне редактирования данной статьи, которую походу можно копированить и всталять где это необходимо!
*

oxxx

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Близкая к ТЕМЕ проблема!

Сайт: stom-mba.ru
Joomla 1.5.9.
Раздел: "Отзывы"

Не работает ссылка-кнопка внутри сайта

Стояла задача: создать кнопку, ведущую на материал, не привязанный какому-либо пункту меню (но находящийся в списке материалов сайта)

Я сделал кнопку-ссылку с таким кодом:
<a href="http://stom-mba.ru/index.php?option=com_content&amp;view=article&amp;id=64&amp;Itemid=64"><input name="sentknop" type="button" value="Отправить отзыв" /></a>
--------------(эту строку получил временно опубликовав материал, привязав его к пункту меню)-------------
-> в Опере всё правильно работает, а в IE (Internet Exploerer) кнопка не фунциклирует !

тогда я установил com_linkr
с помощью него установил ссылку
он сделал такой код:
<a href="index.php?option=com_content&view=article&id=64:sentform">Отправить отзыв</a>
она заработала и в IE!

НО: сделать кнопку из неё сделав редактором такой код:
<a href="index.php?option=com_content&view=article&id=64:sentform"><input name="sentknop" type="button" value="Отправить отзыв" /></a>
не получилось!
кнопка в Exploerer'e НЕ работает!

в чём причина?
Как правильно прописать кнопку-ссылку?
*

oxxx

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
to Vlad_Vita:

кнопка не стоит, потому, что не работает в IЕ (см выше)

почему? сам не знаю...
почему-то даже не работала кнопка "на главную" внутри формы (на страничке "Спасибо")
(её тоже пришлось сделать просто ссылкой)


а на счёт сервака... не знаю, может хостер реселлинговый...
SteadyHost называется
*

Надежда Вдовкина

  • Захожу иногда
  • 68
  • 1 / 0
Цитировать
Всем привет! имеется вопрос (возможно тупой): как в материал вставить ссылку на другой материал? Где взять ссылку на материал? пытаюсь добавить сначала в меню ссылку, но не получается

У меня недавно был точно такой же вопрос, меня научили. Попробую объяснить:

1. Сначала надо понять, откуда взять саму эту ссылку, которую надо будет вставлять. Для этого входим в тот материал, на который будем ссылаться (например, через пункт меню, если на него есть ссылка из меню) и из адресной строки браузера вырезаем часть адреса, которая начинается с "index" (например, в моем случае это вот такое - index.php?option=com_content&view=article&id=2&Itemid=110) (скопировали в буфер обмена)

2. В том месте, куда надо эту ссылку вставить, сначала пишем нужные слова, например: "Нужный материал - здесь", дальше выделяем слово "здесь", при этом в верхней части текстового редактора, в котором вы это набираете, активизируется значок, похожий на цепочку. На него надо нажать, откроется окошечко, в которое надо вставить ту ссылочку, которая у нас в буфере обмена. Нажимаем кнопку "вставить". Все готово! Слово "здесь" превратилось в активную ссылку, по которой теперь можно перейти.

Удачи!


Писали про неработающую ссылка-кнопку внутри сайта!

Вот у меня тоже не работает эта кнопка-ссылка, при чем при нажатии на нее окно появляется. но обсалютно белое!
и при чем, еще неделю назад все работало!

Кто-нибудь может объяснить, что случилось и что делать?
*

rocki

  • Новичок
  • 9
  • 0 / 0
Скажите. А как сделать так чтобы ссылка вела на определенный раздел страницы.
Т.е. к примеру у меня 3 блога новостей. И я хочу сделать маодуль с 3-мя ссылками чтобы он при нажатии на оные перекидывал меня на начало определнного раздела. Допустим у меня "Новости авто" находится внизу главной страницы и при загрузке страницы сразу не виден, но есть блок "Новости" где есть ссылка "Новости Авто" и при нажатии на нее меня перекидывает сразу вниз главной страницы.

Помогите реализовать...


Спасибо
*

businessprowm

  • Новичок
  • 5
  • 0 / 0
У меня недавно был точно такой же вопрос, меня научили. Попробую объяснить:

1. Сначала надо понять, откуда взять саму эту ссылку, которую надо будет вставлять. Для этого входим в тот материал, на который будем ссылаться (например, через пункт меню, если на него есть ссылка из меню) и из адресной строки браузера вырезаем часть адреса, которая начинается с "index" (например, в моем случае это вот такое - index.php?option=com_content&view=article&id=2&Itemid=110) (скопировали в буфер обмена)

2. В том месте, куда надо эту ссылку вставить, сначала пишем нужные слова, например: "Нужный материал - здесь", дальше выделяем слово "здесь", при этом в верхней части текстового редактора, в котором вы это набираете, активизируется значок, похожий на цепочку. На него надо нажать, откроется окошечко, в которое надо вставить ту ссылочку, которая у нас в буфере обмена. Нажимаем кнопку "вставить". Все готово! Слово "здесь" превратилось в активную ссылку, по которой теперь можно перейти.

Удачи!

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

Конкретно на примере:

У меня есть:
Раздел - "Программы"
в ней
Категория - "SEO"
а в ней
Статья - "AllSubmitter"

Также есть, как бы, вспомогательная статья для статьи AllSubmitter, назавём её "Изменения", не привязанная ни к одному разделу, категории.

Так вот как мне в статье про "AllSubmitter" вставить ссылочку на статью "Изменения"?

Заранее благодарен!

*

rocki

  • Новичок
  • 9
  • 0 / 0
Это просто... А вот как именно раздобыть ссылку на материал который находиться в базе но не к какому разделу не принадлежит, то есть сам по себе, и через пункты меню я его вызвать не могу, что бы потом скопировать адрес из адресной строки...


В админке есть параметр такой как id материала. Создали документ, ему присвоился этот айди (пример 007). И ссылка будет на него выглядеть

http://mysite.ru/index.php?option=com_content&view=article&id=007

ну и не забываем про то что надо чтобы материал был опубликован.
*

businessprowm

  • Новичок
  • 5
  • 0 / 0
http://joomlaforum.ru/index.php/topic,12755.0.html


Самым простым способом создания ссылки на статичный материал является добавления в какое-либо меню пункта, ссылающегося на этот материал. Однако, это не всегда удобно.Особенно, если нужно быстро в какую-то статью добавить 2-3 ссылки на другие статичные.

На самом деле, все достаточно просто: ссылки на статичное содержание не сильно отличаются от ссылок на детальный просмотр материалов и имеют следующий вид:

mysite.ru/index.php?option=com_content&task=view&id=XXX

где XXX это число, представляющее собой идентификатор материала.

Посмотреть этот идентификатор для конкретной статьи можно в колонке ID списка статичных материалов Менеджера статичных материалов административной панели Joomla.

Однако, чтобы эта ссылка была более корректной, к ней лучше все-таки добавить еще параметр Itemid (идентификатор пункта меню). Так как реального пункта меню у нас для этого материала нет, можно добавить любой, который более-менее подходит по смыслу (чтобы корректно отображался pathway). Самым простым решением будет использование Itemid=1 (Главная страница).

Таким образом, ссылка на статичный преобретает вид:

mysite.ru/index.php?option=com_content&task=view&id=XXX&Itemid=1
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Удалить ID материала

Автор adel68

Ответов: 0
Просмотров: 2942
Последний ответ 25.06.2021, 19:31:40
от adel68
Как сделать перенаправление из каталога на другой сайт?

Автор Debra

Ответов: 2
Просмотров: 7443
Последний ответ 07.04.2020, 22:18:15
от Debra
Один материал в нескольких категориях (мультикатегории)

Автор Legion Leonhart

Ответов: 9
Просмотров: 134763
Последний ответ 18.03.2018, 15:47:30
от neo63
Как написать код на Java и вставить его в Joomla-сайт?

Автор geodx

Ответов: 9
Просмотров: 5282
Последний ответ 27.02.2018, 16:15:59
от effrit
Удаляется текст после кавычек в заголовке

Автор palexa

Ответов: 0
Просмотров: 8898
Последний ответ 02.08.2010, 01:14:55
от palexa