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

p.slavik

  • Захожу иногда
  • 71
  • 8 / 0
  • В неволе, блин...
На форуме поддержки компонента обнаружил мануал по добавлению дополнительных полей, думаю, будет полезно не только мне.

Автор: yarivtubul
Источник: http://dj-extensions.com/
Перевод: p.slavik

Прежде чем я начну, отмечу, что данное учебное руководство основано на советах пользователя dontysk.
ОК, предположим, мы хотим добавить в наши объявления поле телефонного номера, названное 'phone'.
Для этого мы должны внести изменения в базу данных, бэкэнд и фронтэнд.

Шаг 1 — База данных.

Найдите таблицу jos_djcf_items в Вашей базе данных. Для этого я использую  phpMyAdmin. В структуре таблицы Вы найдёте все существующие поля, здесь же необходимо добавить поле 'phone'. Убедитесь, что Вы правильно определили кодировку и другие параметры.

Шаг 2 — Бэкэнд.

Шаг 2.1 — папка 'tables'.

Откройте файл: /public_html/administrator/components/com_djclassifieds/tables/items.php
Сразу после строки 45 -
Код
var $intro_desc = null; 
добавьте следующее:
Код
var $phone = null;

Шаг 2.2 — папка 'views'.

Откройте  в редакторе файл: /public_html/administrator/components/com_djclassifieds/views/edititem/tmpl/default.php
Сразу после строки 120, после части "intro_desc" , добавьте следующее:

Код
<tr> 
<td width="100" align="right" class="key">
<?php echo JText::_('PHONE');?>
</td>
<td>
<?php //echo $editor->display( 'phone', $this->nl->phone, '100%', '100', '40', '10',false );
?>
<textarea id="phone" name="phone" rows="2" cols="20" class="inputbox"><?php echo $this->nl->phone; ?></textarea>
</td>
</tr>

Шаг 3 — Фронтэнд.

Шаг 3.1.1 — папка Views/AddItem

Откройте в редакторе файл: /public_html/components/com_djclassifieds/views/additem/tmpl/default.php
После строки 101 добавьте следующее:

Код
<tr>
<td width="100" align="right" class="label"><?php echo JText::_('phone');?><div id="ile">(10)</div>
</td>
<td><textarea id="phone" name="phone" rows="1" cols="10" class="inputbox" onkeyup="checkt();" onkeydown="checkt();"><?php echo $this->nl->phone; ?></textarea>
</td>
</tr>

Шаг 3.1.2 — Views/AddItem

В этом же файле, в alert разделе, после строки 230 добавьте:

Код
}else if(document.getElementById("phone").value==''){ 
alert("<?php echo JText::_('Please enter a phone number');?>");

Шаг 3.2 — папка Views/ShowItem.

Откройте в редакторе файл:
/public_html/components/com_djclassifieds/views/showitem/tmpl/default.php

После строки 84 добавьте:

Код
<div class="row"> 
<span><?php echo JText::_('PHONE'); ?><?php echo $i->phone;?></span>
</div>

Шаг 4 — добавление Jtext тэгов в языковые файлы.
Бэкэнд  - /public_html/administrator/language/en-GB/en-GB.com_djclassifieds.ini
Фронтэнд - /public_html/language/en-GB/en-GB.com_djclassifieds.ini
Не забываем сохранять в UTF-8.
Добавьте в эти, а также во все другие языковые файлы, после строки:
SHORT_DESCRIPTION=Description
строку:
PHONE=phone

Вот и всё!
Наслаждайтесь.
Yariv
« Последнее редактирование: 08.11.2010, 23:16:21 от p.slavik »
*

klop5

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
Слушайте, все сделал по инструкции, а как теперь сделать что бы телефон отображался в обьявлениях?
*

p.slavik

  • Захожу иногда
  • 71
  • 8 / 0
  • В неволе, блин...
Слушайте, все сделал по инструкции, а как теперь сделать что бы телефон отображался в обьявлениях?
Шаг 3.2 (последний) как раз добавляет строку "Phone" в шаблон отображения объявления. Посмотрите ещё раз всё внимательно - всё ли сделали правильно. Номера строк могут несколько отличаться - то есть надо просто по коду ориентироваться. Но там вроде всё понятно. У меня с добавлением доп. полей проблем не возникло - всё работает. Ну и само-собой кэш стоит почистить, после внесения изменений...
*

klop5

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
Да, спасибо! нашел проблему.
Я еще добавил отображение телефона, там где отображаются категории и под ними объявления.

В файл default.php в папке public_html/components/com_djclassifieds/views/show/tmpl
Нужно добавить
Код
<th>
<?php if($order=="phone"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=phone<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('phone');?>
</a>
</th>

Будет выглядеть вот так
Код
<table class="dj-items" width="100%">
<tr class="main_title">
<th colspan="2" class="name">
<?php if($order=="name"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=title<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Title');?></a>
</th>
<th>
<?php if($order=="category"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=category<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Category');?></a>
</th>
<th>
<?php if($order=="description"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=description<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Description');?></a>
</th>
<th>
<?php if($order=="phone"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=phone<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('phone');?></a>
</th>
<th>
<?php if($order=="date"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=date<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Added');?></a>
</th>
<th>
<?php if($order=="display"){$class="active";}else{$class="normal";}?><a class="<?php echo $class; ?>" href="index.php?option=com_djclassifieds&view=show&cid=<?php echo $main_id; ?>&order=display<?php if($sw){ echo '&search='.$sw; }?>"><?php echo JText::_('Displayed');?></a>
</th>
</tr>

Еще добавить вот это:
Код
echo '<td class="phone">'.$i->phone.'</td>';

Будет выглядеть вот так:
Код
		echo '</td>';
echo '<td class="name">';
echo '<a class="title" href="index.php?option=com_djclassifieds&view=showitem&cid='.$i->cat_id.'&id='.$i->id.'&Itemid='.$Itemid.'">'.$i->name.'</a>';
echo '</td>';
echo '<td class="cat_name">'.$i->c_name.'</td>';
echo '<td class="description"><a class="title" href="index.php?option=com_djclassifieds&view=showitem&cid='.$i->cat_id.'&id='.$i->id.'&Itemid='.$Itemid.'">'.$i->intro_desc.'</a></td>';
echo '<td class="phone">'.$i->phone.'</td>';
echo '<td class="date_start">'.$i->date_start.'</td>';
echo '<td class="date_exp" align="center">'.$i->display.'</td>';
echo '</tr>';
}

Ну и изменить параметр с 6 на 7
Код
echo '<tr class="row'.$row.'"><td class="pag" colspan="7" >';	  


Думаю понятно написал! ^-^
« Последнее редактирование: 02.01.2011, 10:30:45 от klop5 »
*

swarows

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
вопросик, а как добавить не текстовое поле а выплывающий список?
*

stranger

  • Новичок
  • 1
  • 0 / 0
Имеется сайт http://lv22.ru/. Компонет dj-classifieds был выбран как наиболее приемлемый, но при работе с ним появились некоторые сложности.
1. Если в указании контактов есть кавычки, объявление некорректно отображается на главной
2. Хотелось бы убрать количество просмотров за ненадобностью, а вместо них указывать город. Вышеприведённая схема для этих манипуляций подойдёт?
3. "продавец" исправить на "подал объявление"
Подскажите хотя бы что-то
*

Calal

  • Новичок
  • 1
  • 0 / 0
Is it possible to hide specific areas classified dj hello to visitors
e.g.
Phone:
Please Login to see the phone number, go to sleep.

Is it possible to do so?

Is it possible to do so?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Поиск в админке DJ-Classifieds

Автор shop-user

Ответов: 1
Просмотров: 2683
Последний ответ 30.11.2022, 09:49:33
от Leo1986
Добавить к dj classifieds прямую оплату и доставку УкрПошта

Автор Alex_gs

Ответов: 0
Просмотров: 3317
Последний ответ 11.01.2022, 14:55:25
от Alex_gs
Не добавляются фото к объявлениям DJ-Classifieds 3.6.4

Автор spaun0982

Ответов: 7
Просмотров: 4630
Последний ответ 03.11.2021, 12:59:49
от igorMas
Как включить emoji в dj-classifieds?

Автор inkvizitr

Ответов: 0
Просмотров: 2896
Последний ответ 09.03.2021, 19:24:36
от inkvizitr
Можно ли в DJ-Classifieds создать несколько адресов для одного объявления?

Автор Kijv

Ответов: 0
Просмотров: 2913
Последний ответ 15.02.2021, 11:38:49
от Kijv