Новости Joomla

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+). При отображении форм компонента в админке раньше разработчикам нужно было описывать скрытые поля в лейаутах. И выглядело это так:

<?php     // Это файл в /layouts/components/com_component/your_layout.php?><input type="hidden" name="task" value=""><input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"><input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"><?php echo HTMLHelper::_('form.token'); ?>
Начиная с Joomla 5.3 добавлен новый способ добавления таких полей (их называют control fields) - программно. И теперь это можно сделать просто в Controller / View.
// В Controller/View добавляем поля$this->form  ->addControlField('task', '')  ->addControlField('return', $input->getBase64('return', ''))  ->addControlField('forcedLanguage', $forcedLanguage);
А в layout'е просто используем метод
renderControlFields()
// В layout формыecho $this->form->renderControlFields();
Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.Смотреть
Pull Request@joomlafeed#joomla #разработка #php

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

Новая итерация компонента продолжает развиваться, ведь с v.4.x компонент был переписан практически с нуля.

v.4.1.0. Что нового?

Редактирование метаданных изображений. Теперь метаданные можно не только читать, но и напрямую редактировать и записывать обратно в изображение JPG. Поддерживаются данные EXIF ​​и IPTC.

Полная совместимость с Joomla! 4.x, 5.x и 6.x. Компонент почистили от устаревших методов в коде.

Заметно ускорили загрузку больших галерей. Списки в админке, особенно для очень больших галерей ( >30 000 изображений), теперь загружаются значительно быстрее.

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

Множество мелких исправлений ошибок и оптимизаций.

Сайт проекта

GitHub расширения

Скачать

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

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Здравствуйте!

Обнаружил, что в развернутом на вебсервере сайте, в базе данных нет таблицы session и при попытке открыть сайт выводится
Цитировать
Error displaying the error page: Application Instantiation Error: Table 'antilopagoldsu.#__session' doesn't exist SQL=DELETE FROM `#__session` WHERE `time` < '1482378891'

Открыл phpMyAdmin и попробовал создать таблицу с помощью запроса:
Код
CREATE TABLE `ytgb1_session` (
  `session_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `client_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
  `guest` tinyint(4) unsigned DEFAULT '1',
  `time` varchar(14) COLLATE utf8mb4_unicode_ci DEFAULT '',
  `data` longtext COLLATE utf8mb4_unicode_ci,
  `userid` int(11) DEFAULT '0',
  `username` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT '',
  PRIMARY KEY (`session_id`),
  KEY `userid` (`userid`),
  KEY `time` (`time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

что в ответ вернуло ошибку:
Цитировать
#1146 - Table 'a.ytgb1_session' doesn't exist

Что это может значить?
« Последнее редактирование: 22.12.2016, 11:52:42 от borro »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а сервер поддерживает utf8mb4 ? попробуйте просто utf8
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
а сервер поддерживает utf8mb4 ? попробуйте просто utf8
Попробовал такое:
Код
CREATE TABLE `ytgb1_session` (
 `session_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
 `client_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
 `guest` tinyint(4) unsigned DEFAULT '1',
 `time` varchar(14) COLLATE utf8mb4_unicode_ci DEFAULT '',
 `data` longtext COLLATE utf8mb4_unicode_ci,
 `userid` int(11) DEFAULT '0',
 `username` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT '',
 PRIMARY KEY (`session_id`),
 KEY `userid` (`userid`),
 KEY `time` (`time`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
то же сообщение, не создаётся таблица
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
не особо увидел разницу между запросами.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
не особо увидел разницу между запросами.
Разница в последней строке
Код
ENGINE=MyISAM DEFAULT CHARSET=utf8
Скажите, может ли не остановка локального сервера причинить вред базе данных, затирая в ней системные таблицы сайта?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
разница в последней строке это хорошо. а то что поля создаются с utf8mb4_unicode_ci - то не важно?

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

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
лучше всего удалите всю базу и разверните ее заново.
или - удалите sql запросом "несуществующую" таблицу 'a.ytgb1_session и снова выполните ваш sql скрипт ее создания.
скорее всего произошел сбой MySQL сервера и эта таблица "потерялась". и зачем вам MyISAM а не InnoDB?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Всем спасибо.

Не знаю, что точно произошло. У меня было 7 флэшек с одинаковыми портативными вебсерверами(и соответственно сайтом на них). Я их по очереди тестировал. Похоже дело было в неостанове этих отдельных серверов после окончания работы с ними, и похоже в глюках запуска сервера базы данных MySQL. Периодически я видел в phpMyAdmin, что в базе данных вполовину меньше таблиц, чем положено.

Что это было, кто-нибудь может объяснить? :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 422
Последний ответ 16.06.2025, 16:40:04
от Fati
Помогите с БАГом в панели администратора Joomla 3

Автор akteon25

Ответов: 2
Просмотров: 1357
Последний ответ 26.02.2025, 16:41:56
от akteon25
Версии РНР и Joomla 3

Автор Ebelous

Ответов: 8
Просмотров: 3092
Последний ответ 27.01.2025, 20:38:45
от pavelrer
Trouble Upgrading from Joomla 3.8 to 3.9

Автор melissa00

Ответов: 0
Просмотров: 1913
Последний ответ 26.07.2024, 10:03:51
от melissa00
SP polls в Joomla 3.8.2

Автор wawont

Ответов: 2
Просмотров: 3568
Последний ответ 22.02.2024, 21:03:15
от Zegeberg