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

BoBaN

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
  • http://it-m.by/
присоединяюсь к pikachu + Laita
Цитировать
В магазине 2 валюты - Доллары и Рубли. Товары забиты в долларовой цене, а для отображения на фронтенде у пользователей есть выбор - в какой валюте показывать цену (mod_currency_selector).

В магазине есть 3 типа доставки:

Бесплатная, если заказ от 2000 долларов
Платная, если заказ до 2000 долларов
Самовывоз (при любом заказе)

Все условия для этих типов доставок вписаны, т.е минимальная сумма заказа, максимальная, вес, индекс и прочее.

Если цена во фронтенде стоит в долларах - то при оформлении заказа всё работает как нужно (т.е до 2000 долларов показываются 2 вида доставки - платная и самовывоз, и от 2000 долларов показываются - бесплатная и самовывоз), но стОит отображение валюты поменять на рубли (допустим товар стоит 80 долларов, после замены на показ в рублях, цена показывается 2400 рублей), то доставка предлагается бесплатной, как будто покупатель заказывает товар ОТ 2000 долларов с бесплатной доставкой.

Как я понимаю, ошибка именно в валюте, т.е магазин не считает доллары и рубли за разные валюты, и обращает внимание только на цифру 2000. Помогите найти ошибку. Спасибо.
Цитировать
У меня такая же проблема.
Помогите пожалуйста найти решение!
часа 3 сидел не мог понять в чём же всё-таки дело... Действительно, похоже эта штука работает не с валютой а с цифрой, которую она отказывается конвертировать :( . И это есть просто УЖАСНО.
Люди, кто шарит в PHP немного... помогите пожалуйста. Нужно сделать, что бы минимальная стоимость для доставки была не просто цифрой, а привязана к определённой валюте...
*

FLAGG

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Огромное спасибо!
Все заработало почти сразу: первоначально не обратил внимания на диапазон допустимых индексов, и индекс, указанный в адресе доставки в него не попадал. Как следствие, на этапе выбора варианта доставки получал :"Ошибка. Выберите другой вариант доставки". Поменял диапазон на "000000"-"999999" - и все ОК:)
*

BoBaN

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
  • http://it-m.by/
эта штука корректно работает только с одной валютой. Если же на сайте больше чем одна валюта - работает не совершенно неправильно
*

Timon_Crazy

  • Захожу иногда
  • 364
  • 31 / 4
  • Лицензнаци
эта штука корректно работает только с одной валютой. Если же на сайте больше чем одна валюта - работает не совершенно неправильно
Что совершенно логично, так идет операция с цифрами, а не с валютой.

не могли бы описать как Вам надо?
и для какой версии
ЧаВо - FAQ - Вопросы
--
Сщастливый безумец -- не говори спасибо: + поставь не ставь минус - поругай.
*

Timon_Crazy

  • Захожу иногда
  • 364
  • 31 / 4
  • Лицензнаци
Вот! Адаптировал для VM 1.0.15. Нужно было немного изменить обращения к переменным ;). На всякий случай прикладываю измененные файлы, там внутри изменения прокомментированы.

Спасибо за проделанную Вами работу. но у вас есть ошибки, благодаря которым это не работает.
С Вашего позволения выложу исправленную версию для 1.0.15 и прокомментирую тут ошибки:
В файле: standard_shipping.php
$$q .= "shipping_rate_minimum_cost <= '" . $order_total . "'AND ";
надо
$q .= "shipping_rate_minimum_cost <= '" . $order_total . "'AND ";
Иначе неправильно производиться выборка по минимальной сумме доставки.

В файле shipping.rate_list.php
Вы не указали комментарий правки
в строчках
               $VM_LANG->_PHPSHOP_SHIPPING_RATE_LIST_RATE_WEND => '',
               $VM_LANG->_PHPSHOP_RATE_FORM_MINIMUM_COST => '',
                                        $VM_LANG->_PHPSHOP_RATE_FORM_MAXIMUM_COST => '',
надо
$VM_LANG->_PHPSHOP_SHIPPING_RATE_LIST_RATE_WEND => '',

//Правка 11
//////////////////////////////////////////////////////////////////////////
               $VM_LANG->_PHPSHOP_RATE_FORM_MINIMUM_COST => '',
                                        $VM_LANG->_PHPSHOP_RATE_FORM_MAXIMUM_COST => '',
//////////////////////////////////////////////////////////////////////////
это сделано только потому что те кто не вставляет Ваши файлы, а вносит изменения самостоятельно мог понять что вносить


В файле: ps_shipping.php
после строки
$q .= "shipping_rate_weight_end,shipping_rate_value,shipping_rate_package_fee,";
надо добавить
$q .= "shipping_rate_minimum_cost,shipping_rate_maximum_cost,";

иначе не происходит добавление нового тарифа.



[вложение удалено Администратором]
« Последнее редактирование: 03.08.2010, 22:35:14 от Timon_Crazy »
ЧаВо - FAQ - Вопросы
--
Сщастливый безумец -- не говори спасибо: + поставь не ставь минус - поругай.

а тоже самое но для количества товара можно сделать?
*

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Спасибо большое! То что нужно!

И маленький глупый вопрос. Это будет мой первый sql запрос в базе данных. Окно запроса в phpMyAdmin я нашел, я так понимаю, надо туда просто вставить код и нажать ОК.

Вот только приведенные запросы кончаются точками с запятой  ;
А там в окне запроса есть внизу опция "Разделитель" и там тоже по умолчанию стоит точка с запятой. Ее надо стереть или оставить? Просто боюсь, если оставить, точка с запятой еще раз автоматом проставится, и будет дублирование.
Простой вопрос: стереть или нет, ответьте, пожалуйста!
*

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Ну никто не ответил, но на свой страх и риск решил попробовать - пишу для таких же нубов. Опцию Разделитель трогать не надо, пусть там остается ; по умолчанию. Эта опция не ставит разделитель, а распознает его в запросе, так что все прошло отлично, в таблицах появились новые поля.
*

Azorrr

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Еще раз спасибо за решение!  :D
Сделал две платные доставки, бесплатную доставку по Москве от 2000 руб., по России от 3000 руб. А кто где находится, определяется по индексу. Большинство покупателей из Москвы, поэтому индекс по умолчанию равен 999999 (такой индекс я для москвичей назначил). Москвичам не надо в это поле вообще заходить (многие и не знают свой индекс), а кто по почте заказывает, те поменяют индекс на свой.
*

Sergem

  • Захожу иногда
  • 53
  • 0 / 0
Отличное решение!
Только вот как быть, если у тебя один вариант доставки?
Я в админке отключаю опцию с выбором варианта, т.к. не логично выбирать из одного одно!
При этом в итоговой таблице оформления заказа пропадает строчка доставки и цены...
Как быть чтобы в итоговой таблице доставка оставалась? Помогите друзья!
*

Roluken

  • Новичок
  • 3
  • 0 / 0
Спасибо, все сделал по инструкции, с одной валютой все работает.
*

Sergem

  • Захожу иногда
  • 53
  • 0 / 0
как быть то с одним вариантом?

Отличное решение!
Только вот как быть, если у тебя один вариант доставки?
Я в админке отключаю опцию с выбором варианта, т.к. не логично выбирать из одного одно!
При этом в итоговой таблице оформления заказа пропадает строчка доставки и цены...
Как быть чтобы в итоговой таблице доставка оставалась? Помогите друзья!
Присоединяюсь к вопросу!

А в остальном разобрался!
*

Nik33

  • Осваиваюсь на форуме
  • 36
  • 0 / 2
После обновления "лисапед" следует вернуть на место.

В моем случае 1.1.4 -> 1.1.6, при обновлении был обновлен следующий файл:
7. /administrator/components/com_virtuemart/classes/shipping/standard_shipping.php

В нем следует заново внести изменения о инструкции из первого сообщения и все снова будет работать.
*

supercom

  • Захожу иногда
  • 53
  • 1 / 0
.....

В файле: ps_shipping.php
после строки
$q .= "shipping_rate_weight_end,shipping_rate_value,shipping_rate_package_fee,";
надо добавить
$q .= "shipping_rate_minimum_cost,shipping_rate_maximum_cost,";

иначе не происходит добавление нового тарифа.


Для начала скажу большое спасибо за проделанную работу
теперь несколько вопросов:
Я заменил все файлы предложенными, при добавлении нового тарифа доставки, после сохранения не отображаются тарифы, т.е. совсем не сохраняются, что делать?? подскажите пожалуйста

vm 1.0.15

Огромное спасибо автору за труд :D

Но, к сожалению, так же как и у Gremlin, при всем внешнем благополучии тариф не создается.
(VM 1.1.2, Joomla! 1.5.14 Stable, MySQL 5.0.75-0ubuntu10.2)

На оффоруме в указанной теме кто-то пишет, что проблема в лишней запятой. Увы, я ее так и не смог найти.
_____________________________________________________________________________________
Ошибка найдена: я так и не создал поля "shipping_rate_minimum_cost" и "shipping_rate_maximum_cost" в таблице jos_vm_shipping_rate. Создал вручную через phpmyadmin.
Теперь все работает.
Благодарю всех за внимание)

Респект Автору темы! У меня ВСЁ заработало..

Чтобы правильно добавлялся тариф нужно (после изменений, описанных Автором выше:)) заменить в функции rate_add (administrator/components/com_virtuemart/classes/ps_shipping.php)

$fields = array( 'shipping_carrier_name' => vmGet($d, 'shipping_carrier_name'),
на
$fields = array('shipping_rate_name' => vmGet($d, 'shipping_rate_name'),

после изменения - тарифы стали добавляться.
*

Ice

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
ребята а подскажите пожалуйста...
сделал все по мануалу... выжает ошибку при попытке обращения к Варианты и Тарифы доставки

Parse error: syntax error, unexpected T_IF, expecting T_FUNCTION in /home/******/public_html/administrator/components/com_virtuemart/classes/ps_shipping.php on line 490

VirtueMart 1.1.7 stable и Joomla 1.5.22
*

Ice

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
закомментировал 490 строку, начало работать, но при выставлении значений и попытки добавления теперь пишет

Fatal error: Call to undefined method ps_shipping::rate_add() in /home/****/public_html/components/com_virtuemart/virtuemart_parser.php on line 246

246 строка
$ok = $$classname->$funcParams["method"]($vars);

:( пожалуйста хелп
« Последнее редактирование: 14.03.2011, 14:21:58 от Ice »
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
Тут бы проверить внимательно все исправления - где-то ошибка... Я как раз вчера на VM1.1.7 в очередной раз применял этот хак - все по прежнему работает :).
*

Ice

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Тут бы проверить внимательно все исправления - где-то ошибка... Я как раз вчера на VM1.1.7 в очередной раз применял этот хак - все по прежнему работает :).
действительно так и было... не было одной запятой и в другом месте скобки...
спасибо все заработало!
*

ASkidkin

  • Захожу иногда
  • 103
  • 3 / 0
итак, все вроде сделал, создал новые тарифы на доставку, настроил, у меня 3 варианта доставки, Курьером, почтой и транспортной службой, но в магазине при оформлении заказа все равно показан только один вариант - Standard Shipping и сумма всегда стоит - 31.60 грн. не могу понять откуда она берется, ведь даже если я меняю сумму в тарифах на доставку то все равно остается 31,6 уже всю голову изломал, кто подскажет? и как сделать чтобы вместо Standard Shipping появились мои три метода доставки?
_______________________________
после осмотра всех настроек разобрался откуда взялась сумма 31,6 (был включен еще один левый вариант доставки), но его хоть показывало при оформлении заказа, а вот когда я его отключил и оставил только мною созданный то на странице выбора варианта доставки видно только само предложение выбрать а вариантов нет, при попытке пойти дальше выдает ошибку и просит все же выбрать, думал что дело  в рууских названиях моих вариантов, изменил на латинские но толку нет, прошу помочь
« Последнее редактирование: 25.03.2011, 20:56:49 от ASkidkin »
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
Масса доставки в тарифах доставки прописана? Индексы прописаны? Такое поведение как у вас (при условии, что хак применен верно и ошибок нет) характерно для неверно заданных условий. Модуль доставки проверяет заказ по массе заказа, индексу клиента и сумме заказа и предлагает вариант из имеющихся, который (или которые) попадают под эти рамки. Обратите внимание на индекс - 6 цифр, если не зададите, то работать не будет ;)
*

ASkidkin

  • Захожу иногда
  • 103
  • 3 / 0
масса прописана от 00000000,0 до 99999999,9
индексы 000000 до 999999
даже сделал хак на проверку веса в кг.
такой момент, у меня в магазине клиент не регистрируется, а при каждом заказе вводит мыло, имя, телефон и Адрес доставки, индекс при этом он не вводит, может в этом причина?, если так то как мне отключить валидацию на индекс?

вот скрин моих настроек тарифа
« Последнее редактирование: 25.03.2011, 23:34:48 от ASkidkin »
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
Сейчас не могу точно сказать, но помнится где-то, если индекс не задан ему присваивается дефолтное значение то ли 00000 (5 нулей) то ли 5 девяток и он не попадает в диапазон, соответственно и тариф не выбирается. Завтра днем доберусь до рабочего компа и посмотрю точно ;).
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
В файле administrator/components/com_virtuemart/classes/ps_shipping.php
В районе 305 (у меня) строки идет такой код:
Код
		if( $d["shipping_rate_zip_start"] == "") {
$d["shipping_rate_zip_start"] = '00000';
}
if ($d["shipping_rate_zip_end"] == "") {
$d["shipping_rate_zip_end"] = '99999';
}
Я менял '00000' на '000000' ну и соот-но 99999 на 999999. Правда это работает только вводе тарифов доставки... Есть мнение, что стоит закомментировать такой код:
Код
			if( is_numeric( $zip ) ) {
$q .= "(shipping_rate_zip_start <= '" . $zip . "' OR  LENGTH(shipping_rate_zip_start) = 0 ) AND " ;
$q .= "(shipping_rate_zip_end >= '" . $zip . "' OR  LENGTH(shipping_rate_zip_end) = 0 ) AND " ;
}
идущий с 71-й строки в файле administrator/components/com_virtuemart/classes/shipping/standard_shipping.php
А вообще следует проверить все по шагам, проверьте с 76-й строки файл standard_shipping.php - там есть правка в коде сразу за местом работы с zip-кодами (индексами) - может ошибочку внесли, метод доставки - Standart Shipping - другие работать не будут!
*

ASkidkin

  • Захожу иногда
  • 103
  • 3 / 0
и не знаю что сказать, прибавил знаки в коде, строки закоментировал, все равно не выводятся мои варианты доставки, просто написано "Выберите вариант доставки" и дальше пусто.
Кстати проделал еще такой эксперимент, к заполняемым полям при оформлении заказа добавил Индекс чтобы человек заполнил, никого результата
« Последнее редактирование: 27.03.2011, 19:26:02 от ASkidkin »
*

ASkidkin

  • Захожу иногда
  • 103
  • 3 / 0
если я включаю еще какойто кроме стандаотного способа расчета доставки, например фиксированный то он выводится, также заметил что если отключаю стандартный вариант доставки то в окне уменьшается немного пустого пространства, в исходном коде заметил теги <br> - 3 штуки, как раз после каждого из моих вариантов доставки, тоесть они какбы и выводятся но невидимые, как их показать все же? думал может изза русского языка, переназвал латинскими все равно нет. у меня при оформлении заказа все разбито на шаги, тоесть разделены выбор доставки и оплаты, в одном из видео уроков видел что стандартно оплата и доставка находятся на одном шаге, может в этом причина, я уже думаю даже на фазу луны :) вообщем благодарю за любую помощь
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
Ну тогда давайте доступ в админку и ftp иначе не разберемся :(. Ну или, если не жалко, ставьте магазин с нуля и внимательно по шагам... Может еще какие хаки были - что-то наложилось. Однозначно - луна тут не при чем  ;D
*

ASkidkin

  • Захожу иногда
  • 103
  • 3 / 0
боюсь с доступом не получится, сайт несколько лет как рабочий, я делал не я, может и были какеи-то правки, однозначно ответить не могу, взял файл standart_shipping.php из чистой сборки 1,1,4 но картина не прояснилась, завтра попробую чистые оригинальные файлы остальные поменять, если нет то наверное придется отказаться от этого занятия, слишком уже много времени съело, да и я не при делах кто там что делал до меня, но хотелось бы сделать конечно
*

Gremlin

  • Захожу иногда
  • 293
  • 11 / 0
Вообще я этот хак применял много раз на нескольких версиях VM - он не капризный и всегда работает ;), наверное все-таки где-то ошибка или настройки.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль доставки "Почтой России"

Автор alibedog

Ответов: 104
Просмотров: 57752
Последний ответ 13.07.2021, 17:36:09
от SolopoV
Модуль доставки Укрпочта

Автор al_13

Ответов: 13
Просмотров: 8214
Последний ответ 13.05.2021, 12:57:59
от nnnata
Уведомление о заказе в зависимости от варианта доставки

Автор baltazors

Ответов: 0
Просмотров: 3247
Последний ответ 07.06.2017, 11:44:10
от baltazors
Модуль доставки - самовывоз. Как сделать?

Автор demonm

Ответов: 18
Просмотров: 9751
Последний ответ 29.04.2017, 17:31:56
от princeyury
Варианты доставки из админки

Автор El_nik

Ответов: 7
Просмотров: 3632
Последний ответ 27.04.2017, 10:51:38
от El_nik