Новости Joomla

Совет по 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 Гость просматривают эту тему.
  • 7 Ответов
  • 4645 Просмотров
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Здравствуйте.

Используется Джумловский mootools.
Подскажите, пожалуйста, как сделать, чтобы клик по ссылки в модальном окне приводил к открытию страницы в основном окне, а не в модальном.
Заранее благодарю, уважаемые коллеги-программисты.

Скрипт для открытия модального окна:
Код
<script type="text/javascript">

window.addEvent('domready', function() {

SqueezeBox.initialize({});

$$('a.modal').each(function(el) {
el.addEvent('click', function(e) {
new Event(e).stop();
SqueezeBox.fromElement(el);
});
});
});
</script>

На ссылка для открытия модального окна
Код
<a class="modal" href="/01.html" rel="{handler: 'iframe', size: {x: 650, y: 375}}"></a>

В модальном окне открывается файл 01.html, который содержит в себе ссылку:
Код
<a href="www.ya.ru">ya.ru</a>
Открытие этой ссылки приводит к открытии страницы внутри модального окна.

Подскажите, пожалуйста, как сделать, чтобы эта ссылка открывалась не в модальном окне, а в основном окне браузера.
« Последнее редактирование: 26.06.2010, 00:01:56 от Vitaly163 »
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Для понятности нарисовал схему
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Повесь на нее
Код: html4strict
onclick="window.parent.document.getElementById('sbox-window').close();"
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Lex, спасибо за решение! Подниму вашу репутацию.
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Повесь на нее
Код: html4strict
onclick="window.parent.document.getElementById('sbox-window').close();"

Почему то получается только с ya.ru так, как Вы описали.
Подскажите пожалуйста, как сделать, чтобы был такой же эффект для других ссылок.
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Попробовал сделать так:

В файл 01.html содержит функцию go2Page(url), которая отвечает за переход по ссылке url. При щелчке на ссылку вызывается эта функция:
Код
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru-ru" lang="ru-ru" >
        <head>
                  <meta http-equiv="content-type" content="text/html; charset=utf-8" />


<script type="text/javascript" language="Javascript">
        function go2Page(url) {
            document.location = url;
            return false;
        }
</script>
</head>
<body>
<a href='#' onclick='return go2Page("http://www.google.ru");'>google.ru</a>
</body>
</html>

К сожалению результат тот же: ссылка открывается внутри модального окна...
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Ну так добавь.
<a href='#' onclick='return go2Page("http://www.google.ru"); window.parent.document.getElementById("sbox-window").close();'>google.ru</a>
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Vitaly163

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Ну так добавь.
<a href='#' onclick='return go2Page("http://www.google.ru"); window.parent.document.getElementById("sbox-window").close();'>google.ru</a>

Попробовал. К сожалению результат тот же: ссылка открывается внутри модального окна.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор snoopik

Ответов: 9
Просмотров: 6898
Последний ответ 21.03.2019, 04:50:20
от vasmed
Переход на PHP 7, не пускает в админку Invalid Token

Автор murzuk

Ответов: 37
Просмотров: 4812
Последний ответ 07.04.2018, 05:52:09
от capricorn
Убрал в настройках материалов "Заголовок как ссылка" - "нет". И в разделе ссылки с заголовков исчезл

Автор Adrian1111

Ответов: 6
Просмотров: 3165
Последний ответ 22.03.2018, 22:17:44
от palexa
Изображение-ссылка в материале

Автор Omedius

Ответов: 4
Просмотров: 2333
Последний ответ 02.07.2017, 21:11:10
от vipiusss
Принципиален ли для SEO переход с Joomla 1.5 на 3.0

Автор doroga81

Ответов: 6
Просмотров: 1195
Последний ответ 22.10.2016, 14:46:53
от voland