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

Elimelech

  • Захожу иногда
  • 261
  • 2 / 0
Добрый день!
Вчера перевёл сайт meirbruk.net на https://meirbruk.net
В настройках Joomla влючил поддержку протокола https

Я прописал вот так:
Код
RewriteCond %{HTTP_HOST} ^www.meirbruk.net$ [NC]
RewriteRule ^(.*)$ https://meirbruk.net/$1 [R=301,L]

при этом в онлайн проверке редиректов пишет что у меня 303- redirect
 *ОХ-Х-Х*

или нужно вот так:
Код
RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{HTTP} =on
RewriteRule ^(.*)$ https://meirbruk.net/$1 [R=301,L]
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Добрый! Можно попробовать так:

Код
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:SSL} !=1 [NC]
RewriteRule ^(.*) https://meirbruk.net/$1 [L,R=301]
Но, как правило, современный хостинг имеет в панели управления соответствующую кнопку - что-то типа "Переадресовывать все запросы с HTTP на HTTPS" и дополнительного правила в .htaccess тогда не нужно.
*

Elimelech

  • Захожу иногда
  • 261
  • 2 / 0
Код
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

сделал так, вроде пока полёт нормальный. :)
*

Elimelech

  • Захожу иногда
  • 261
  • 2 / 0
Вставил вот такую конструкцию:
Код
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} ^www.meirbruk.net$ [NC]
RewriteRule ^(.*)$ https://meirbruk.net/$1 [R=301,L]

Ну тут если сайт имеет ссылку http://www.meirbruk.net то деалется двойной редирект: сначала перенаправляется сюда https://www.meirbruk.net/, а потом сюда: https://meirbruk.net/

А можно как-то это сделать одним редиректом? Спасибо за подсказку!
*

Elimelech

  • Захожу иногда
  • 261
  • 2 / 0
Вот так работает с одним редиректом:
Код
RewriteCond %{HTTP_HOST} ^www [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://meirbruk.net/$1 [L,R=301]
*

Elimelech

  • Захожу иногда
  • 261
  • 2 / 0
В вордпрессе недавно. Друг попросил посмотреть, что-то его сайт не перенаправляет с http в https

На Joomla это делал как вы мне тут посоветовали  так:
Код
RewriteEngine On
RewriteRule ^(.*)$ index.php [F,L]

RewriteCond %{HTTP_HOST} ^www [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://мой сайт.net/$1 [L,R=301]

А для Вордпресса эти правила такие же или нужно что-то менять?
Версия wordpress-5.3.2
Спасибо за подсказку!
*

akasperu

  • Новичок
  • 2
  • 0 / 0

Здравствуйте. В редиректах я новичок. Нужно решить вот эту проблему: Необходимо поставить общий 301 редирект всего сайта со страниц с «/» на конце без «/» на конце и со страниц с «www» на страницы без «www», заменить все ссылки на сайте с «www». Какой код нужно прописать, чтобы все работало?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать перенаправление из каталога на другой сайт?

Автор Debra

Ответов: 2
Просмотров: 7509
Последний ответ 07.04.2020, 22:18:15
от Debra
Как сделать раздел чтобы он не появлялся в навигации меню сайта?

Автор rebejer430

Ответов: 1
Просмотров: 3699
Последний ответ 05.03.2020, 12:53:40
от SeBun
Как сделать материал всегда первым

Автор Tuco

Ответов: 5
Просмотров: 27668
Последний ответ 23.10.2009, 09:09:23
от abiss
Как сделать прямые ссылки в компоненте Weblinks в Joomla 1.5

Автор smart

Ответов: 0
Просмотров: 37401
Последний ответ 23.07.2009, 02:01:12
от smart
Как сделать переадрессацию ссылок

Автор ..С...е...р...ы...й..

Ответов: 2
Просмотров: 17930
Последний ответ 15.07.2009, 14:28:44
от ..С...е...р...ы...й..