Новости Joomla

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™

Первый выпуск журнала NorrNext в честь 20-й годовщины Joomla™. Интервью с волонтёрами 🎈Ну что, друзья, вот и настал этот долгожданный момент. Мы выпустили первое издание собственного журнала под эгидой NorrNext, который включает в себя интервью с видными деятелями сообщества из разных стран и континентов.Общий нарратив: показать, что нас объединяет (Joomla) и узнать больше о людях, которые вносят свой вклад в развитие платформы в своих сообществах. 20 лет — это много. Давайте же узнаем о коллегах 🎁 Первый цикл включает такие страны, как Австрия, Испания, Латвия, Россия, Румыния, Тайланд, Черногория, Чехия.⚙️ С кем интервью: ✔️ Владимир Елисеев 🇷🇺✔️ Дмитрий Рекун 🇱🇻✔️ Дмитрий Цымбал 🇷🇺✔️ Евгений Сивоконь 🇷🇺 ✔️ Сергей Толкачёв 🇷🇺✔️ Dénes Székely 🇷🇴✔️ Jan Pavelka 🇨🇿✔️ Miljan Vujosevic 🇲🇪✔️ Sergio Iglesias 🇪🇸✔️ Sigrid Gramlinger 🇦🇹✔️ Pisan Chueatchatchai 🇹🇭‼️ Новые интервью будут добавляться до конца декабря 2025. Заходите по ссылке время от времени💡👉 Читать далее

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

slovoblud

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
  • Починяю примуса
Использую стандартный модуль доставки. Нужно сделать так чтобы некоторые товары нельзя было покупать из за границы. То есть чтобы некоторые товары могли купить покупатели только из определенной страны (в моем случае это Украина). В принципе у меня уже установлен хак который позволяет привязать тариф доставки к конкретным странам, но вот как привязать товар к тарифу доставки я что то не пойму. В идеале хотелось бы получить просто чекбокс в карточке товара типа: "Разрешить доставку товара за границу да/нет" но это в идеале, а так я бы попробовал любые доступные варианты, решения этой проблемы.
 
*

fsv

  • Moderator
  • 2781
  • 411 / 2
В идеале хотелось бы получить просто чекбокс в карточке товара типа: "Разрешить доставку товара за границу да/нет"

Можно и так.
"Стандартным" модулем стараюсь не пользоваться из-за его громоздкости. На каждый вид доставки проще сделать свой индивидуальный модуль, учитывающий все хотелки и все взаимосвязи, в т.ч. с адресами, с оплатами. А стандартный хакни ради одной доставки, пачка других слетит.
Если в "персональном"модуле, то сначала из user_info получите страну доставки, если не Украина, то сделайте там перебор товаров корзины на проверку доп.поля (чекбокс). Если есть в корзине товары для внутреннего потребления, вместо радиокнопки с ценой можно вывести текст-предупреждение, можно и товары перечислить, которые запрещены к вывозу. Фрагменты кода можно подсмотреть, расковыряв другие не сложные модули доставок, принцип один.
Веб-разработка: заказ. Только новая разработка.
*

slovoblud

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
  • Починяю примуса
Да просто уже все настроено для стандартного модуля по этому для него и спрашиваю решение. Хочу в файле get_shipping_method.tpl.php сделать проверку страны только вот не знаю как вытащить страну из базы. Не подскажите как можно вообще вытаскивать какой либо параметр из карточки товара чтобы его потом использовать в этом файле?  И как вытащить страну из user_info?
*

fsv

  • Moderator
  • 2781
  • 411 / 2
как вытащить страну из user_info?

Если вы не предоставляете возможность выбирать дополнительные адреса доставок, то ничего не надо запрашивать, страна есть в массиве данных авторизованного пользователя - $auth['country'] - если включить отладку, увидите.
Если есть доп. адреса, то страна адреса доставки может не совпадать со страной покупателя, и лучше ее уточнить:
Код: php
$db = new ps_DB;
$q = "SELECT country FROM #__{vm}_user_info WHERE ";
$q .= "user_info_id='". $d["ship_to_info_id"] . "'";
$db->query($q);
$db->next_record();
$country = $db->f("country"); 
Веб-разработка: заказ. Только новая разработка.
*

slovoblud

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
  • Починяю примуса
Спасибо. Вчера ковырял в принципе где то почти также страну вытащить получилось. Но теперь еще нужно вытащить дополнительный параметр из карточки товара. Делаю так:
Код
$peremennaya = "SELECT product_length FROM #__{vm}_product WHERE product_id=185" ;
 
Здесь product_id написал в ручную просто чтобы попробовать вытащит он что то или нет. Теперь по идее нужно сделать так чтобы в product_id= подставлялся id товара который лежит в корзине, но вот как это сделать я пока не понял. И еще одна сложность в корзине  может быть не один товар. Так что я думаю написать условие чтобы проверялся определенный параметр каждого товара в корзине и если хоть один товар запрещен к отправке то чтобы заказ оформить было нельзя. Но опять же не знаю как это сделать. По идее наверное нужно вытаскивать в массив нужный мне параметр всех товаров что в корзине и проверять каждый параметр по очереди, но опять же как их все вытащить не знаю.
*

fsv

  • Moderator
  • 2781
  • 411 / 2
нужно вытаскивать в массив нужный мне параметр всех товаров что в корзине и проверять каждый параметр по очереди
      
Код: php
global $cart;

for ($i=0;$i<$cart["idx"];$i++) {

   $q = "SELECT * FROM #__{vm}_product " ;
   $q .= "WHERE product_id= " . $cart[$i]["product_id"];
   $db->query( $q ) ;
   $db->next_record() ;
   $product_rows[$i]['product_length'] = $cart[$i]['product_length'];   

   if ($product_rows[$i]['product_length'] > 2000 ) {
      echo "very long";
   }

}
Веб-разработка: заказ. Только новая разработка.
*

slovoblud

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
  • Починяю примуса
fsv что то не хочет работать этот код уже вставлял его и в standard_shipping.php и в get_shipping_method.tpl.php и  в basket_b2c.html.php и все равно не работает, выдаёт белую страницу и кодировка слетает, хотя код вроде правильный. В чем проблема может быть?
*

fsv

  • Moderator
  • 2781
  • 411 / 2
fsv что то не хочет работать этот код уже вставлял его и в standard_shipping.php и в get_shipping_method.tpl.php и  в basket_b2c.html.php и все равно не работает, выдаёт белую страницу и кодировка слетает, хотя код вроде правильный. В чем проблема может быть?

Этот код надо использовать в файле класса метода доставки (в вашем случае, в standard_shipping.php) в function list_rates.
Если белая страница, значит не так всунули.
Веб-разработка: заказ. Только новая разработка.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор alibedog

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

Автор al_13

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

Автор baltazors

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

Автор demonm

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

Автор El_nik

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