Новости Joomla

Загадочный параметр $live_site в configuration.php Joomla

Загадочный параметр $live_site в configuration.php Joomla

👩‍💻 Загадочный параметр $live_site в configuration.php Joomla. Зачем он нужен?Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:- для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов

Uri::root() и
Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.- для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера. Поэтому домен нужно указывать принудительно. Либо с помощью параметра командной строки
--live-site, например,
—live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет
https://site.rujoomla.php.Либо в параметре
$live_site в файле configuration.php, так как
CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.⚠️ Иначе в качестве хоста и url класса Uri будет установлено
https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр
$live_site можно из объекта приложения

protected function doExecute(InputInterface $input, OutputInterface $output): int    {         //...              $live_site = $this->getApplication()->get('live_site');         //...    }
и исходя из этого строить дальнейшую логику.@joomlafeed#joomla #разработка #php #cli

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks.Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида

{YOUTUBE}...{/YOUTUBE},
{MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.👩‍💻 v.7.0.0. Что нового?- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов
{YOUTUBE}...{/YOUTUBE}.- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8. - Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".
Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).@joomlafeed#joomla #расширения

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

Маэстро

  • Захожу иногда
  • 51
  • 0 / 0
Всем привет.
А можно ли как нибудь сделать так, чтобы при клике по миниатюрной фотки, которая выводится при выборе галереи, сразу открывалась полная версия картинки (в лайтбоксе), без промежутчной средней версии?

Datso Gallery 1.5 .

Готов заплатить за подобную модификацию.
*

Маэстро

  • Захожу иногда
  • 51
  • 0 / 0
Это вобще возможно сделать?
*

Jekos

  • Осваиваюсь на форуме
  • 31
  • 2 / 0
Спасибо.. что откликнулись на предложение.. Но вот сейчас сам умудрился это сделать..
Описываю как:
В файле datsogallery.php добавляем в начало  лайтбоксовские скрипты:
 if ($ad_lightbox){
    $lightbox  = "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/prototype.js\"></script>\n";
   $lightbox .= "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/scriptaculous.js?load=effects\"></script>\n";
   $lightbox .= "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/lightbox.js\"></script>\n";
   $lightbox .= "<link rel=\"stylesheet\" href=\"$gallerypath/js/lightbox/css/lightbox.css\" type=\"text/css\" media=\"screen\" />\n";
    $mainframe->addCustomHeadTag( $lightbox );
    }
Далее  в этом же файле находим строчку :
echo "<div align='center'><a href='" . sefRelToAbs("$dgurl&func=detail&catid=$catid&id=$row1->id") . "'>

и меняем её на

echo "<div align='center'><a rel='lightbox'  href='$originalpath$row1->imgthumbname'>

Готово...
Вся суть в том, что Датсо Гэллери использует одинаковые именна файлов для миниатюр и полноразмерных копий. Поэтому в имени файла в ссылке на оригинал используется имя миниатюры (так как имя оригинала мне получить не удалось), но берется этот файл  по адресу оригинальных фоток.

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




Ну тут вместо

echo "<div align='center'><a rel='lightbox'  href='$originalpath$row1->imgthumbname'>

надо ставить


echo "<a rel='ad_lightbox'  href='$originalpath$row1->imgoriginalname'>

Ибо imgthumbname это имя миниэскиза.

Счас докопался до того что открывается изображение большое но не лайтбоксом а просто как обычно по ссылке (Копаюсь в версии 1.4.1.)
« Последнее редактирование: 05.02.2008, 03:34:12 от Jekos »
*

Jekos

  • Осваиваюсь на форуме
  • 31
  • 2 / 0
Учитывая мои нулевые знания пхп постараюсь рассказать о том как я приделал лайтбокс к миниэскизу в версии 1.4.1. ;D

Итак, файл datsogallery.php

1. После строки $thumbnaildir       = $mosConfig_absolute_path . $ad_paththumbs . "/";

(данная строка будет только у тех, кто делал предыдущий хак по внедрению watermark на мини эскизы)

вставляем:

Код
if ($ad_lightbox){
    $lightbox  = "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/prototype.js\"></script>\n";
$lightbox .= "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/scriptaculous.js?load=effects\"></script>\n";
$lightbox .= "<script type=\"text/javascript\" src=\"$gallerypath/js/lightbox/js/lightbox.js\"></script>\n";
$lightbox .= "<link rel=\"stylesheet\" href=\"$gallerypath/js/lightbox/css/lightbox.css\" type=\"text/css\" media=\"screen\" />\n";
    $mainframe->addCustomHeadTag( $lightbox );
    } else {
    $standart_popup  = "<script type=\"text/javascript\" src=\"$gallerypath/sub_window.js\"></script>\n";
    $mainframe->addCustomHeadTag( $standart_popup );
    }

2. Я не помню что там было ранее  :laugh: у меня, но сейчас участок кода между строчками

Код
$dghits = _DG_HITS;
    $dgvotes = _DG_RATING;
    $dgcomment = _DG_COMMENT1;
$tle = ereg_replace('"', '', $row1->imgtitle);

и строчками

Код
if ($rowcounter % $ad_cp <> 0) {
for ($i = 1; $i <= ($ad_cp - ($rowcounter % $ad_cp)); $i++) {


 выглядит вот так: 
 
Код
   if ($ad_showtip) {

    echo "<strong>$tle</strong><br>";
   
echo "<div align='center'><a rel=\"lightbox\" href='$originalpath$row1->imgoriginalname' onclick=\"return popup('".$wm."oid=".$id."', '$tle')\"><img src='".$wm."tid=".$row1->id."' style='".$ad_imgstyle."' alt='".$tle."' /></a><br />";
} else {
    echo "<div align='center'><a rel='lightbox'  href='$originalpath$row1->imgoriginalname'>
<img src='$thumbnailpath$row1->imgthumbname' style='".$ad_imgstyle."' title='".$tle."' alt='".$tle."' /><div>$tle</div></a></div>";
    }
    echo "</td>\n";
    $rowcounter++;
    }
________________________________________________________________

Простите за извращеный подход, но в итоге получилось  ^-^

Единственная беда, на лайтбоксе перестал отображаться ватермарк  :'(
Если подскажете как его туда обратно запихать, буду очень рад

Работает всё тут:

http://rg-reklama.ru/component/option,com_datsogallery/Itemid,171/func,viewcategory/catid,67/

« Последнее редактирование: 20.03.2008, 00:32:31 от beliyadm »

Всё сделал, в опере работает а в IE почемуто не работает... В чом проблема интересно?
Если не сложно вылажите пожалуйста файл "datsogallery.php", хочу проверить, может я чтото не так сделал, хотя мне кажется всё придельно просто...

Всё, у меня не получается! Ктонибудь может сделать это за $ и сколько бы это стоило?
*

ageent

  • Захожу иногда
  • 122
  • 36 / 4
*

zulic

  • Осваиваюсь на форуме
  • 31
  • 0 / 0
Есть у кого-то готовый файл с изменениями для версии 1,62 ?
*

azizovslava

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Люди, подскажите плиз. Каким образом сделать тоже самое в модуле вывода случайных фото - mod_datsogallery_ultimate_copy
*

MOHCTPUK

  • Захожу иногда
  • 50
  • 5 / 6
  • d[-_-]b
Если не ошибаюсь мне тоже это надо а точнее:
Вот вошол в галерею, потом выбрал категорию, и напр. тут 20 русинков, вот и при нажатиии хочючтобы сразу оригинал показывался бы в LightBox, т.е. что бы пропустить часть страницы где написанно информация о картине.
???
*

apricot

  • Новичок
  • 3
  • 0 / 0
Спасибо помогло, сделал на 1.62.
На slimbox не получилось сделать, знаний в php почти нет.
Пришлось LightBox из 1.5 добавить.
Подскажите как теперь при открытии в LightBox на белом поле вывести название картинок и описание  !!!???!!!
Или как эти коды под slimbox подогнать.
« Последнее редактирование: 13.03.2009, 14:00:32 от apricot »
*

apricot

  • Новичок
  • 3
  • 0 / 0
Подскажите как теперь при открытии в LightBox на белом поле вывести название картинок и описание  !!!???!!!
Может кому пригодится.
Содержимое атрибута title - это описание, прилагаемое при просмотре к полно размерной фотографии.
Но title должен стоять в ссылке, т.е. в теге <a href="" title=""></a>. В коде выше title стоит в img.
А уже затем можно вывести и название фотки ($tle), и поле автора ($row1->imgauthor - если вписывется в ручную), и описание (сами найдете чем).
Вот так к примеру
Код
<a href="" title='".$tle."<br>".$row1->imgauthor."'></a>

Помогла эта статья: http://www.linkexchanger.su/2008/65.html
*

scaners

  • Захожу иногда
  • 131
  • 15 / 0
Честно говоря не совсем понятно. Объясните толком. Имеется Datso 1.6 Надо сделать, чтобы открывалось полноразмерное изображение сразу с миниатюры. Но без лайтбоксов всяких. Какую строчку и на что менять надо? Спасибо!
*

LegioNer

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Спасибо помогло, сделал на 1.62.
На slimbox не получилось сделать, знаний в php почти нет.
Пришлось LightBox из 1.5 добавить.
Подскажите как теперь при открытии в LightBox на белом поле вывести название картинок и описание  !
Или как эти коды под slimbox подогнать.

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

Хак вывода из превьюшки (малый эскиз) сразу в лайтбокс. [решение]

Автор Peroon

Ответов: 36
Просмотров: 12763
Последний ответ 09.02.2011, 10:56:04
от Peroon
teXtoniX DG. Измененая версия DG 1.8.3

Автор Peroon

Ответов: 8
Просмотров: 5637
Последний ответ 10.01.2011, 11:49:59
от anthophyta
От мини-эскизов сразу в лайтбокс. Как сделать? DatsoPic

Автор kans

Ответов: 15
Просмотров: 17732
Последний ответ 27.02.2010, 22:19:48
от Peroon