Новости Joomla

Веб-ассет Fancybox.js для Joomla v.6.0.9

Веб-ассет Fancybox.js для Joomla v.6.0.9.В Joomla 4 и Joomla 5 появилась концепция Web Assets и WebAssetManager, с помощью которого можно управлять подключениями css, js файлов, подключением. Все css и js файлы включаются в общий реестр ассетов, затем выстраивается граф зависимостей и в итоге на генерируемую страницу подключается только то что нужно на данной странице. Поскольку веб-ассеты можно добавлять с помощью плагинов (ссылка на статью ниже) - можно сказать, что появилось новое направление для плагинов - веб-ассеты. Вы можете устанавливать плагины, включающие веб-ассеты и использовать их как зависимости в самых разных местах Joomla: в шаблоне, в макетах модулей и плагинов. Одним из таких плагинов веб-ассетов является WT Fancybox.js. Плагин добавляет в Joomla WebAssets Registry css и js популярного скрипта галереи изображений fancybox.js, который потом легко можно использовать в коде:
use Joomla\CMS\Factory;$wa = Factory::getApplication()->getDocument()->getWebAssetManager();$wa->usePreset('wtfancybox'); // Local file $wa->usePreset('wtfancybox-remote'); // Use from CDN
Плагин использует систему обновлений Joomla, поэтому с появлением новых версий вы сможете получать их на своих сайтах естественным для Joomla путём. 👩‍💻 Спасибо за работу по упаковке ассета в плагин участнику нашего сообщества Сергею Сергевнину (
@gresserg).- Скачать WT Fancybox.js для Joomla- Статья на JPath.ru Как правильно подключать JavaScript и CSS в Joomla 4- Статья на Хабре: Использование WebAssetsManager Joomla 4 (Joomla 5) и добавление собственных пресетов с помощью плагина#joomla #расширения #webdev

Совет по Joomla: $db->getQuery(true) стал устаревшим

Совет по Joomla: $db->getQuery(true) стал устаревшим

👩‍💻 Совет по Joomla: $db->getQuery(true) стал устаревшим.Раньше при создании запросов в базу данных мы всегда получали объект запроса с помощью метода

getQuery(). Если передавался параметр
$new =
true, то получали новый запрос. Если без - последний.

use Joomla\CMS\Factory;$db = Factory::getContainer()->get('DatabaseDriver');$query = $db->getQuery(new: true);// и строим запрос
Под капот Joomla 4 вошёл Joomla Framework (PHP фреймворк а-ля Laravel, Yii и т.д.), а для Joomla 5 он обновился - версия 3.4.1 вышла 6 октября 2023г. В методе фреймворка есть примечание о том, что параметр
$new, который передавался в метод
getQuery() помечен как устаревший и будет удалён в версии фреймворка 4.0.
The parameter $new is deprecated and will be removed in 4.0, use %s::createQuery() instead.В Joomla 4 версия Joomla Framework была 2.x., в Joomla 5 - 3.x. Поэтому есть предположение, что с выходом Joomla 6 обновится и версия фреймворка - станет 4.0. Поэтому для получения объекта для новых запросов следует использовать метод
createQuery(). Он уже представлен в ядре и широко используется. При этом метод
getQuery() останется, но, скорее всего, будет выполнять функцию только геттера - получения текущего запроса.
@joomlafeed#joomla #php #разработка

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

Sponsor

  • Захожу иногда
  • 108
  • 6 / 0
Всем привет!
У меня Zoo 2.3.2 лицензия.
Никак не могу разобраться.
При добавлении новых материаллов, на главной не появляются автоматически новые материалы. Нужно заходить в админку и каждому материалу выставлять Frontpage "да". Как это сделать автоматически?
« Последнее редактирование: 29.10.2011, 13:43:17 от Sponsor »
*

Sponsor

  • Захожу иногда
  • 108
  • 6 / 0
Re: Новые материаллы
« Ответ #1 : 29.10.2011, 13:15:59 »
К сожалению подходит только к версии 2.4 а к 2.3 не подходит.
Прошу помочь. Готов заплатить.

1) В файле \administrator\components\com_zoo\controllers\submission.php после кода


Код
$this->lists['select_tooltip'] = $this->app->html->_('select.booleanlist', 'params[show_tooltip]', null, $this->submission->showTooltip());
добавляем


Код
$this->lists['select_frontpage']  = $this->app->html->_('select.booleanlist', 'params[select_frontpage]', null, $this->submission->showFrontpage());

В этом же файле код


         
Код
$submission->getParams()
->clear()
                ->set('form.', @$post['params']['form'])
                ->set('trusted_mode', @$post['params']['trusted_mode'])
->set('show_tooltip', @$post['params']['show_tooltip'])
->set('email_notification', @$post['params']['email_notification']);

заменяем на


         
Код
$submission->getParams()
->clear()
                ->set('form.', @$post['params']['form'])
                ->set('trusted_mode', @$post['params']['trusted_mode'])
->set('show_tooltip', @$post['params']['show_tooltip'])
->set('email_notification', @$post['params']['email_notification'])
->set('select_frontpage', @$post['params']['select_frontpage']);

2) В файле \administrator\components\com_zoo\views\submission\tmpl\edit.php после строк


Код
<div class="element element-tooltip">
<strong><?php echo JText::_('Tooltip'); ?></strong>
<?php echo $this->lists['select_tooltip']; ?>
</div>
добавляем


Код
<div class="element element-frontpage">
<strong><?php echo JText::_('Frontpage'); ?></strong>
<?php echo $this->lists['select_frontpage']; ?>
</div>

3) В файле \administrator\components\com_zoo\classes\submission.php после строк

Код
   public function showTooltip() {
        return (bool) $this->getParams()->get('show_tooltip', true);
    }
добавляем

Код
public function showFrontpage() {
        return (bool) $this->getParams()->get('select_frontpage', true);
    }

4)В файле \components\com_zoo\controllers\submission.php после кода

Код
// set tags
                    $tags = $form->hasError('tags')? $form->getTaintedValue('tags') : $form->getValue('tags');
                    $this->item->setTags($tags);

                } else {

вставляем

Код
if ($this->submission->showFrontpage()) {
                        $categories[] = 0;
                    }

5)Идем в настройки нужной подачи материалов и переключаем параметр "Титульная страница"  в  "да"
« Последнее редактирование: 29.10.2011, 13:31:59 от Sponsor »
*

tarkasha

  • Захожу иногда
  • 95
  • 0 / 0
Всем привет!
У меня Zoo 2.3.2 лицензия.
Никак не могу разобраться.
При добавлении новых материаллов, на главной не появляются автоматически новые материалы. Нужно заходить в админку и каждому материалу выставлять Frontpage "да". Как это сделать автоматически?

Такая же проблема zoo 2.5.8
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Кракозябры в описании Item Zoo

Автор 7ssoft

Ответов: 4
Просмотров: 1444
Последний ответ 15.01.2015, 18:03:52
от 7ssoft
ZOO как сделать автоматическое добавление Item в Frontpage?

Автор d91me

Ответов: 33
Просмотров: 8839
Последний ответ 29.12.2014, 11:44:46
от dmi_alex
Добавление итемов непосредственно через базу данных

Автор tarkasha

Ответов: 0
Просмотров: 1248
Последний ответ 01.12.2014, 13:37:43
от tarkasha
Вывод item-ов из нескольких категорий

Автор No_Mosk

Ответов: 0
Просмотров: 1194
Последний ответ 24.06.2014, 22:51:46
от No_Mosk
Неограниченное добавление элементов в редактировании Item-а, Zoo V 3.1.2

Автор olf

Ответов: 1
Просмотров: 1523
Последний ответ 03.05.2014, 13:36:31
от likrion