Новости Joomla

Свои типы полей в 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 для атрибута addfieldprefixnamespace 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

Компания JetBrains рассказала о своей поддержке Joomla

Компания JetBrains рассказала о своей поддержке Joomla

JetBrains - один из мировых лидеров в разработке программного обеспечения для разработчиков. Её программные продукты - это IDE - профессиональные среды разработки, которые отличаются от простого блокнота/редактора с плагинами набором всевозможных инструментов для разработчиков, глубоким анализом кодовой базы, подсказками по ней и по языку программирования, отладкой ошибок и многим-многим другим. Одним из самых известных продуктов компании является IDE PHP Storm, который можно назвать отраслевым стандартом PHP-разработчика.

В статье How PhpStorm Helps Maintain PHP Open-Source Projects: Interviews and Real-World Examples в блоге компании описываются Open Source проекты, которым JetBrains оказывает поддержку (это могут быть бесплатные лицензии для разработчиков для некоммерческих проектов).

В список попали:

  • PHPUnit - фреймворк для unit-тестирования в PHP
  • Doctrine DBAL - библиотека для PHP, которая предоставляет лёгкий и гибкий слой для коммуникации с базой данных. Она поддерживает различные базы данных через единый и согласованный API.
  • CodeIgniter — популярный MVC-фреймворк для разработки на PHP
  • Joomla! - наша любимая CMS.

Эти названия (кроме "Joomla") чаще всего не слышат вебмастера и разработчики обычных сайтов и интернет-магазинов. Но эти названия хорошо знакомы PHP-разработчикам, которые создают сложные и высоконагруженные проекты и микросервисы. То, что Joomla оказалась в одном ряду с такими программными инструментами - делает ей честь.

🙏 За ссылку спасибо участнику нашего сообщества Ринату Кажетову (@rkazhet).

Подпишитесь на @joomlafeed

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

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
 *ОХ-Х-Х* Ребят, помогите, начальство режет)) Т.е. суть такая - есть сайт ломбарда, который юридически ломбардом не является, но очень хочеть попадать в выдачу по запросам со словом ломбард. Раньше весь сайт был оптимизирован под запросы с "ломбардом", но теперь органы начали прижимать. Контент на сайте переделан под комиссионный магазин со скрытыми блоками с текстом под ломбард, но каждый адрес страницы так же содержит слово lombard, что позволяет до сих пор появляться в поиске по "ломбардным" запросам. Но теперь нужно и адреса зачистить, а это явный вылет из поиска. Есть ли какие-то плагины или методы подменять визуальный адрес страницы, но чтобы роботы видели исходный адрес? Извините, если не в тот раздел вопрос. *suicide*
« Последнее редактирование: 04.04.2019, 17:59:03 от WOOHer »
*

stendapuss

  • Давно я тут
  • 945
  • 20 / 0
  • Valera Stankevich
скрытыми блоками с текстом под ломбард
Вас за скрытые блоки поисковики обуют. Из поиска в обще вылетите.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Вас за скрытые блоки поисковики обуют. Из поиска в обще вылетите.

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

Плюс, из своего опыта - в скрытых блоках действительно удобно писать ключи. Второй год прячу ключи именно в таких блоках и еще ни разу не было вылета, все работает стабильно. Могу примеры привести даже.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
*ОХ-Х-Х* Ребят, помогите, начальство режет)) Т.е. суть такая - есть сайт ломбарда, который юридически ломбардом не является, но очень хочеть попадать в выдачу по запросам со словом ломбард. Раньше весь сайт был оптимизирован под запросы с "ломбардом", но теперь органы начали прижимать. Контент на сайте переделан под комиссионный магазин со скрытыми блоками с текстом под ломбард, но каждый адрес страницы так же содержит слово lombard, что позволяет до сих пор появляться в поиске по "ломбардным" запросам. Но теперь нужно и адреса зачистить, а это явный вылет из поиска. Есть ли какие-то плагины или методы подменять визуальный адрес страницы, но чтобы роботы видели исходный адрес? Извините, если не в тот раздел вопрос. *suicide*

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

Да и вообще, переезд страниц дело обычное, позиции обычно не теряются при этом, если все правильно сделать.

https://yandex.ru/support/webmaster/recommendations/changing-site-structure.html
« Последнее редактирование: 05.04.2019, 19:14:16 от dm-krv »
*

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Ключи поисковым роботом берутся отнюдь не из адреса страницы
Т.е. вы хотите сказать, что ссылки можно не затачивать под ключи!? Вроде всегда это было важно...
*

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Да и вообще, переезд страниц дело обычное, позиции обычно не теряются при этом, если все правильно сделать.
У меня задача не переехать, а спрятать ссылки со словом lombard. Просто я думал, что если модифицирую ссылки, удалив это слово, то по запросу "ломбард" мы в поиске просядем, т.к. итак из текста и заголовков пришлось убрать (кроме скрытых блоков), т.е. релевантность страницы уже под угрозой.
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
У меня задача не переехать, а спрятать ссылки со словом lombard. Просто я думал, что если модифицирую ссылки, удалив это слово, то по запросу "ломбард" мы в поиске просядем, т.к. итак из текста и заголовков пришлось убрать (кроме скрытых блоков), т.е. релевантность страницы уже под угрозой.

Вообще никогда не заморачивался адресом страницы, по ощущениям это никак не влияет на позиции. Цель у вас какая, спрятать от посетителя, чтобы он не видел в адресной строке слово lombard или цель убрать слово lombard из ссылок в Яндексе?
*

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Цель у вас какая
Спрятать от "ненужного" посетителя))
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Спрятать от "ненужного" посетителя))

Где спрятать? На сайте или в поиске?
*

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
На сайте или в поиске?
На сайте (от контролирующих органов).
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
На сайте (от контролирующих органов).

Ну так на сайте вы бог и царь. Например посетитель оказался на странице site.ru/lombard используя js вы можете легко его переадресовать на страницу site.ru/123 и уже там показать содержимое страницы /lombard

Или вы хотите как-то определить, что заход выполняется сотрудником роскомпозора и показать ему заглушку? Так боюсь это невозможно, таких фильтров не существует.
*

WOOHer

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
используя js вы можете легко его переадресовать на страницу site.ru/123
а разве робот также не перейдет на эту страницу?
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
а разве робот также не перейдет на эту страницу?

Если переадресация выполняется js кодом, то страница как была, так и останется в поиске, а на конечной странице /123 можно спокойно выставить noindex, чтобы он не попал в поиск, как дубль.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Если переадресация выполняется js кодом, то страница как была, так и останется в поиске, а на конечной странице /123 можно спокойно выставить noindex, чтобы он не попал в поиск, как дубль.
Чуть-чуть не так, капельку.
Вскоре алгоритмы увидят клоакинг и выкинут сайт из поиска навсегда
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Чуть-чуть не так, капельку.
Вскоре алгоритмы увидят клоакинг и выкинут сайт из поиска навсегда

Черт его знает, но вот на сайте одного из клиентов, прикрутил скрипт, который по IP адресу определяет город и перекидывает клиента при помощи js на под домен относящийся конкретно к его городу.

Грубо говоря, открываешь сайт омск.сайт.рф а тебя мгновенно уносит на самара.сайт.рф - такая схема висит уже примерно пол года, полет нормальный, все страницы и под домены нормально держатся в индексе.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Черт его знает, но вот на сайте одного из клиентов, прикрутил скрипт, который по IP адресу определяет город и перекидывает клиента при помощи js на под домен относящийся конкретно к его городу.

Грубо говоря, открываешь сайт омск.сайт.рф а тебя мгновенно уносит на самара.сайт.рф - такая схема висит уже примерно пол года, полет нормальный, все страницы и под домены нормально держатся в индексе.
геопозиционарование != клоакинг
Почитайте что это и какие санкции грозят
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
геопозиционарование != клоакинг
Почитайте что это и какие санкции грозят

Но технически для робота это выглядит одинаково! И так и эдак js кодом выполняется переадресация сразу после захода.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Но технически для робота это выглядит одинаково! И так и эдак js кодом выполняется переадресация сразу после захода.
Там есть разные боты, да и асессоры тоже
*

dm-krv

  • Завсегдатай
  • 1028
  • 28 / 0
Там есть разные боты, да и асессоры тоже

Я в любом случае не поминаю, каким таким образом бот Яндекс должен определять, что вот здесь код переадресацию делают правильно, а вот тут нет. Даже если действительно есть какие-то критерии допуска, запутать javascript не проблема. Например, можно контент с /lombard показывать на случайном под домене и как бы тогда уже и не придраться.
*

kiev

  • Захожу иногда
  • 118
  • 0 / 3
  • Маэстро!
За скрытый текст вы можете получить бан. Почитайте Яндекс блог.

https://www.amen.in.ua/mark/chapter-13.html
« Последнее редактирование: 11.02.2021, 17:52:57 от kiev »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Редирект со страниц *.php на главную через htaccess ~

Автор kiev

Ответов: 0
Просмотров: 2527
Последний ответ 07.02.2021, 15:29:04
от kiev
Как прописать "canonical" для всех страниц с поддомена на домен?

Автор misteri27

Ответов: 11
Просмотров: 6482
Последний ответ 12.09.2020, 10:41:07
от webzepa
Дубли страниц: сравнение плагинов “sef Wizard for Joomla” и “JL No Doubles”

Автор shop-user

Ответов: 2
Просмотров: 1762
Последний ответ 08.01.2019, 14:36:18
от zikkuratvk
Редирект без изменения адреса

Автор dm-krv

Ответов: 2
Просмотров: 1134
Последний ответ 09.10.2017, 15:53:22
от dm-krv
Решение проблемы с дублями страниц в Joomla 1.5

Автор TwistedAndy

Ответов: 360
Просмотров: 146503
Последний ответ 11.05.2017, 19:24:24
от sherza