Новости Joomla

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором представлены новости, интервью, рецензии и есть небольшой магазин на JoomShopping. Возникла необходимость внутри Joomla статей вставлять упоминание релиза и кнопочку «добавить в корзину». Я взял плагин WT JShopping products anywhere Сергея Толкачева (@webtolkru). Плагин отображает название товара и ссылку. При помощи напильника, ИИ и навыков вёрстки появился

Uikit макет для шаблонов на базе Yootheme Pro.Учитываается мобильная версия - телефоны и ipad.Кнопка добавления в корзину работает по Ajax и появляется всплывающее окно (Notification Bar от Uikit) с информацией.Пока это базовый вариант, требующий доведения до лоска, однако он уже работает и его можно применять на проектах.Взять макет можно здесь.А плагин вставки товаров в материалы можно забрать здесь.Приветствуется доведение до ума и оформление в виде PR.

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

👩‍💻 WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla.Пакет плагинов галереи изображений и видео для вставки в материалы и модули Joomla, а так же везде, где работают плагины группы

content. Поддержка собственных макетов вывода для галерей. Смешанные фото+видео галереи. Плагин создан как замена Simple Image Gallery и поддерживает синтаксис
{gallery}{/gallery}.👩‍💻 v.1.2.3. Что нового?- Обработка вступительного и полного текста для материалов Joomla. Добавлена обработка шорткодов в полном и вступительном текстах материалов Joomla.- Системные требования. Повышены минимальные требования до Joomla 5 и PHP 8.1.- Мелкие правки. Исправлена ошибка работы макета по умолчанию в плагине контента.- Joomla 6. Пакет плагинов успешно протестирован на Joomla 6.
Страница расширения.GitHub расширенияJoomla Extensions Directory@joomlafeed#joomla #расширения

Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

👩‍💻 Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list.При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте
default для полей. Когда это нужно?Когда Ваши пользователи устанавливают плагин и НЕ заходят в настройки - в коде вы можете использовать значения по умолчанию с помощью класса
Registry (
писал об этом ранее) и всегда быть уверенным, что хоть какие-то жизненно необходимые параметры к вам придут всегда. 🧐 Но как сделать то же самое для интерфейса админки?Пользователя нужно направлять, предлагать очевидный работоспособный сценарий для начала, а дальше он уже сам разберется. Когда человек заходит в параметры свежеустановленного плагина в
Form ещё нет данных и параметры по умолчанию выставляются из атрибутов
default в xml-полях.
<field name="showdesc" type="radio"                       label="PLG_CFI_PARAM_SHOWDESC"                       class="btn-group btn-group-yesno"                       default="1">                    <option value="0">JNO</option>                    <option value="1">JYES</option>                </field>
Здесь по умолчанию будет включено "Да". И если пользователь не переключит параметр, то при сохранении мы ожидаемо получим "да" в
params плагина.Для поля списков
type=&quot;list&quot; можно указать значение по умолчанию и многие знают, что его можно указать только одно.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default="id"                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
Но у нас поле с множественным выбором (атрибут
multiple) и хотелось бы указать несколько значений по умолчанию...Оказывается, так можно сделать. Для этого в атрибуте
default нужно указать json с нужными параметрами в виде
{int}key : {string} value.Например, default='{"0":"id","1":"title"}'.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default='{"0":"id","1":"title"}'                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
⚠️ Обратите внимание на кавычки! Поскольку
json_decode не понимает одинарные кавычки собственно
json нужно писать с двойными, а значение для атрибута
default писать в одинарные.🙏 За подсказанное решение огромное спасибо участникам нашего сообщества - разработчикам Дмитрию Васюкову (@fictionlabs) и Игорю Бердичевскому (@septdir).@joomlafeed#joomla #разработка #webdev #development

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

aleks

  • Захожу иногда
  • 54
  • 0 / 0
Есть свой компонент, который выводит в качестве параметра разные куски php-кода, хранящиеся статично в файлах
 
пытаюсь вставить в компонент вывод модулей в позиции mypos через плагин

Код: php
echo '{loadposition mypos}';

не работает. В HTML коде отображается

Код: html4strict
{loadposition mypos}

также не работает вариант со вставкой через

Код: php
echo $gantry->displayModules('mypos','standard','standard');

В HTML коде отображается
Код: html4strict
<jdoc:include type="modules" name="kurs-a" style="standard">
</jdoc:include>

Т.е. такое впечатление, что плагины (стандартные и gantry) не обрабатываются компонентом.

Как включить обработку выводимого контекста плагинами Joomla?
Надеюсь это решит мои проблемы

P.S. Ниже конструкция вывода модуля без jdoc работает, но теряется форматирование и CSS стилей и суффиксов модулей
Код: php
$document   = & JFactory::getDocument();
$renderer   = $document->loadRenderer('modules');
$options    = array('style' => 'xhtml');
$position   = 'kurs-a';
echo $renderer->render($position, $options, null);

Прошу помощи.
*

art-apple

  • Захожу иногда
  • 386
  • 61 / 2
P.S. Ниже конструкция вывода модуля без jdoc работает, но теряется форматирование и CSS стилей и суффиксов модулей
Код: php
$document   = & JFactory::getDocument();
$renderer   = $document->loadRenderer('modules');
$options    = array('style' => 'xhtml');
$position   = 'kurs-a';
echo $renderer->render($position, $options, null);

Прошу помощи.
так вы вместо XHTML поставьте свой стиль, на сколько я понял у вас - standard
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
так вы вместо XHTML поставьте свой стиль, на сколько я понял у вас - standard

стиль standard не помогает
все равно отображаются модули неверно, т.е. не так как по умолчанию, когда используются стандартная привязка модулей к элементам меню
 
то есть сочетание обрамляющих div-ов совершенно разное
суфикс у модуля "box3 title1"

в стандартном варианте
Код: html4strict
<div class="box3 title1">
                    <div class="rt-block">
            <div class="module-surround">
<div class="module-title">
<h2 class="title" style="visibility: visible;"><span>Платежные</span> реквизиты</h2>
            <div class="module-border"></div>
        </div>
                <div class="module-content">
<div class="custombox3 title1">
 
далее сам код модуля

в моем варианте

Код: html4strict
<div class="component-content rt-joomla">
 <div style="float:right;width:230px;">
<div class="moduletablebox3 title1">
<h3 style="visibility: visible;"><span>Платежные</span> реквизиты</h3>
<div class="custombox3 title1">
далее сам код модуля


Вариант 1. либо имитировать такое же сочетание обрамляющих дивов
Вариант 2. либо разрешить плагины в этом компоненты

второй мне кажется более правильным
« Последнее редактирование: 20.01.2013, 14:09:18 от aleks »
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
Несколько модулей в 1 статье
Код: php-brief
<?php echo JHTML::_('content.prepare', '{loadposition mypos}'); ?>

куда этот код вставлять?

нашел статью http://www.jdevelop.info/articles/14-develop-joomla/220-obrabotka-dannykh-s-pomoshchyu-plaginov-joomla-2-5
описана обработка данных с помощью с помощью плагинов для Joomla 2.5

в ней описаны подобных два приема, но не понятно куда код вставлять?

мой компонент очень простой, там не используется стандартная компонентная модель
просто выводит имя php-файла который передается в параметре pdoc

Код: php
$config = JFactory::getConfig();
$live_site = $config->get('live_site');

 $mosConfig_live_site=$config->get('live_site');
 $mosConfig_absolute_path=$config->get('mosConfig_absolute_path');

 $pdoc=$_GET["pdoc"];
 
 if (isset($pdoc))
{
$str=$mosConfig_absolute_path."/text/pdoc/$pdoc.php";
if (file_exists ($str))
{
$kurs_connect = mysql_connect($dbhost,$dbuname, $dbpass);
include($str);
}
else
{
?>
<script>
location = "index.php";
</script>
<?
};
}
else
{
?>
<script>
  location = "index.php";
</script>
<?

};
*

art-apple

  • Захожу иногда
  • 386
  • 61 / 2
стиль standard не помогает
Ну значит другой стиль нужно указать, да и что вообще мешает создать свой стиль? и оформить как нужно?
Какой-то огород городите...
*

art-apple

  • Захожу иногда
  • 386
  • 61 / 2
куда этот код вставлять?
Елы палы... В компонент свой. Что-то я перестаю верить что вы пишите свой компонент...
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
$config = JFactory::getConfig();
         $live_site = $config->get('live_site');
 
 $mosConfig_live_site=$config->get('live_site');
 $mosConfig_absolute_path=$config->get('mosConfig_absolute_path');

Код: php-brief
echo JPATH_ROOT;
$pdoc=$_GET["pdoc"];
 
 if (isset($pdoc))

Код: php-brief
$app= JFactory::getApplication();
$pdoc = $app->input->getString('pdoc');
if ($pdoc)

Код: php-brief
$filename = JPATH_ROOT.'/text/pdoc/'.$pdoc.'.php';
if(JFile::exists($filename)) require_once $filename;
//...
$app->redirect(JURI::base());

$kurs_connect = mysql_connect($dbhost,$dbuname, $dbpass);
В Joomla есть свое API для работами с базами. Пару примеров
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
В Joomla есть свое API для работами с базами. Пару примеров

а что насчет подключения плагинов и обработка ими кода, который генерируется кусками php-кода, который задан в файлах (через параметр pdoc)?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Несколько модулей в 1 статье. Читали пост
Чем не устраивает <?php echo JHTML::_('content.prepare', 'обрабатываемы контент плагином'); ?>
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
Несколько модулей в 1 статье. Читали пост
Чем не устраивает <?php echo JHTML::_('content.prepare', 'обрабатываемы контент плагином'); ?>

в том то и вопрос
что у меня инклудится в компоненте кусок php-кода
в этом куске кода задан {loadposition mypos}

куда я должен вставить?
Код: php
<?php echo JHTML::_('content.prepare', '{loadposition mypos}'); ?>

в конец компонент сразу после вставки ?
в конец инклудимого php-кода ?

эта конструкция работает после или до кода?

куда?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Цитировать
в том то и вопрос
что у меня инклудится в компоненте кусок php-кода
И что из этого. Код по особенному начал обрабатываться? >:(
Цитировать
в этом куске кода задан {loadposition mypos}
Вы вызываете плагин который парсит строку '{loadposition mypos}' и выводит модули в позиции mypos
Вам же дали ссылку где приведены примеры вывода модулей без участия плагинa вывода модуля
Цитировать
куда я должен вставить? :laugh:
туда где нужен вывод
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
короче, как распарсить {loadposition mypos} вручную?
в $pdoc имя файла 

Код: php
$pdoc=$_GET["pdoc"];
if (isset($pdoc))
{
if (file_exists ($str))
{
include($str);
                }
}

вот можно сказать весь код компонента
в само тело компонента вставляется кусок php кода с {loadposition mypos}

и как мне его распарсить?
может как-то обработать вывод?
*

mohax

  • Давно я тут
  • 901
  • 66 / 3
мде. вставьте в подключаемый файл в то место в коде, где Вы хотите сделать вывод модуля своего
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Зачем тогда файл вам Вы можете передавать только позицию модулей
Код: php-brief
<?php
$app= JFactory::getApplication();
$poz = $app->input->getString('poz');
if ($poz)
{
$modules =& JModuleHelper::getModules($poz);
foreach ($modules as $module)
  {
     echo JModuleHelper::renderModule($module);
  }
}
?>
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
Зачем тогда файл вам Вы можете передавать только позицию модулей

Это хороший вариант, потому что возможно сделать как сам движок оформляет блок-модуль в div'ы (тем самым проэмулировать обработку плагинами)
А какой код можно использовать для вывода по этой схеме модуля с нужным наименованием?   
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
только вот маленькая проблемка возникает
когда используется код
Код: php
$document   = & JFactory::getDocument();
$renderer   = $document->loadRenderer('modules');
$options    = array('style' => 'xhtml');
$position   = 'mypos';
echo $renderer->render($position, $options, null);

выводится в том числе title модуля, суффикс отрабатывает
да и сам он как модуль выглядит

если же через код, который приведен выше, то
Код: php
echo JModuleHelper::renderModule($module);
тайтла нет

*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
хотелось бы понять, как с помощью класса JModuleHelper вытащить суффикс модуля (sfx)
и его тайтл

или в качестве альтернативы
использовать
Код: php
echo $renderer->render($position, $options, null);
но в цикле с выводом отдельного модуля ?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
aleks вы опять уверен велосипедите.
Вам не хватает заголовка. Правьте modules.php вашего шаблона.
Код: php-brief
function modChrome_none($module, &$params, &$attribs)
{
         echo $module->title;
echo $module->content;
}
И опять же стоит ли делать компонент, который по параметру модуль вызывает. Если это модуль один (одного типа). То передавайте ему параметры(вызывайте его с нужными параметрами $options) или прямо в модуле считывайте параметры.
*

aleks

  • Захожу иногда
  • 54
  • 0 / 0
На самом деле, как я уже говорил, компонент инклюдит различные файлы с php-кодом
один из php-файлов взаимодействует с "третьей" базой данных (не joomla) выводя нужные мне сущности

но к этому выводу хотелось бы подтянуть стандартный механизм модулей

я пытался делать через {loadpositions }
но не обрабатывается плагинами заинклуженный код
скорее, моя реализация компонента несколько хромает, НО

выше предложено несколько вариантов, которые в принципе интересны и могут задачу решить

фактически ваш вариант устраивает перебора в цикле и вывод через
Код: php
echo JModuleHelper::renderModule($module);

но не выводиться title
и я не знаю суффикс у модуля

если бы вы подсказали как его получить, используя объектную модель JModuleHelper
я бы тему закрыл

в варианте с
Код: php
echo $renderer->render($position, $options, null);
научить бы выводить в цикле модуль чтобы блоки div расставлять с суффиксами и то же вопрос бы закрыл

в общем остается только надеятся на помощь знатоков объектной модели Joomla
:)
*

mohax

  • Давно я тут
  • 901
  • 66 / 3
А var_dump($module) что выдает Вы смотрели?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Порядок плагинов на странице

Автор intcorp

Ответов: 5
Просмотров: 2057
Последний ответ 26.04.2017, 23:51:10
от UN_Tony
Как в пункте меню сделать ссылку на свой php-файл?

Автор larin_

Ответов: 1
Просмотров: 1064
Последний ответ 28.12.2016, 22:13:17
от effrit
Компонент для он-лайн бронирования авиабилетов. Что посоветуете?

Автор MadagAskar

Ответов: 2
Просмотров: 2626
Последний ответ 05.10.2016, 16:08:07
от marissia
Как вставить компонент, созданный как меню, в материал?

Автор makc9I

Ответов: 12
Просмотров: 3506
Последний ответ 11.09.2016, 11:45:52
от makc9I
Как подключить библиотеку Joomla в свой php файл?

Автор kowap

Ответов: 5
Просмотров: 6043
Последний ответ 13.02.2016, 13:49:55
от buyanov