Новости Joomla

Вышли релизы безопасности Joomla 6.1.3 и Joomla 5.4.8

Релиз безопасности Joomla 6.1.3 и Joomla 5.4.8

Проект Joomla! рад сообщить о выходе Joomla 6.1.3 и Joomla 5.4.8. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Цитировать
Ведь есть закрывающий тег:
при каком условии он будет выведен?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
при каком условии он будет выведен?
Понял =) Благодарю!
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
Выявилась неприятная проблема с этой функцией, не работает она должным образом. Впервые возникла необходимость добавлять атрибуты к товару и тут то трабл и вылез, а именно при смене атрибута цена не изменяется, а старая цена меняется.

Не долго думая, вспомнил, что я же недавно манипуляции в product_default.php с ценой делал. Вернул стандартный код:
Код
<?php if ($this->product->_display_price){?>
            <div class="prod_price jshop_price">
            <span class="jshop_price_text"><?php print _JSHOP_PRICE?>:</span> <span id="block_price"><?php print formatprice($this->product->getPriceCalculate())?><?php print $this->product->_tmp_var_price_ext;?></span>
            </div>
            <?php }?>

И теперь все работает.

dmitry_stas, получается, что в коде где-то ошибка? Или возможно тут какой-то конфликт возникает?

Окончательный вариант кода получился вот таким, как Вы советовали:

Код
			<?php if ($product->_display_price){?>        
            <div class="prod_price jshop_price">
            <span class="jshop_price_text">
<?php print _JSHOP_PRICE?>:
</span>
            <?php if ($product->product_price <=0){?>
<?php print _UTOCHNITE_U_MENEDZHERA_TOVAR;?>
            <?php }else{?>
            <?php print formatprice($this->product->getPriceCalculate())?>
            <?php }?>
            </div>
            <?php }?>

Заранее благодарю!
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
обновление блока цены происходит через его ИД
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Good_user

  • Захожу иногда
  • 149
  • 5 / 1
обновление блока цены происходит через его ИД
nevigen, искренне благодарю за практически молниеносный ответ!

Я убрал <span id="block_price">, тогда не понял зачем он нужен. А он оказывается такую важную роль играл...
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
мегаважную ! все ИД обычно важны...
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

юрий 009

  • Захожу иногда
  • 341
  • 5 / 1
подскажите пожалуйста как сделать или возможно ли такое вообще:
чтобы, когда цена 0 - уточняйте у менеджера
а когда цена 1 - не беспокойте менеджера :)
*

koT9pa

  • Новичок
  • 3
  • 0 / 0
Добрый день! А где поменять что бы в списке товаров поменялась Если цена 0 то Уточните у менеджера
Вот тут


В карточке товара сделал


просто я связал joomlashoping связан с 1С , хочу в 1С Если товара нету то цена 0 и выгрузить на сайт и все )
« Последнее редактирование: 14.12.2015, 12:17:03 от koT9pa »
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
а перечень файлов шаблона есть в ФАКе
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
подскажите пожалуйста как сделать или возможно ли такое вообще:
чтобы, когда цена 0 - уточняйте у менеджера
а когда цена 1 - не беспокойте менеджера :)
это в смысле так же, как на картинке?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

юрий 009

  • Захожу иногда
  • 341
  • 5 / 1
это в смысле так же, как на картинке?
нет это все должно быть в карточке товара, то есть два условия для цены:
если цена 0 - уточняйте у менеджера,
а если цена 1 - уточняйте у производителя товара
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну хорошо, а проблема тогда в чем? что то с условием не получается?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
*

юрий 009

  • Захожу иногда
  • 341
  • 5 / 1
да не получалось но сейчас все получилось
Код
	 <?php if ($this->product->_display_price){?>  
            <div class="prod_price jshop_price">

            <span class="jshop_price_text">
<?php print _JSHOP_PRICE?>:
</span>

            <?php if ($product->product_price ==0){?>
<?php print _UTOCHNITE_U_MENEDZHERA_TOVAR;?>


           <?php } elseif ($product->product_price ==1){?>
  <?php print _UTOCHNITE_U_VIROBNIKA_TOVARU;?>
 
<?php }else{?>
       <span id="block_price"><?php print formatprice($this->product->getPriceCalculate())?><?php print $this->product->_tmp_var_price_ext;?></span>

<?php }?>
            </div>
            <?php }?>

да все работает но есть одно но если у товара есть атрибут и его выбрать то цена все равно не поменяется а остается _UTOCHNITE_U_VIROBNIKA_TOVARU
« Последнее редактирование: 14.12.2015, 15:24:25 от юрий 009 »
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
блок цены имеет ИД и обновляется по нему.

У вас все условия вне него.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

юрий 009

  • Захожу иногда
  • 341
  • 5 / 1
блок цены имеет ИД и обновляется по нему.

У вас все условия вне него.
а с этого момента подробнее :)
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну у вас <span id="block_price"> выводится только в самом последнем else, а надо чтобы везде
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

koT9pa

  • Новичок
  • 3
  • 0 / 0
А можете помочь как сделать что при количестве 0 выводило цену уточните (в поле где цена) В условиях курса моей страны лучший вариант
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
А можете помочь как сделать что при количестве 0 выводило цену уточните (в поле где цена) В условиях курса моей страны лучший вариант
а вот то что на 2-х страницах до Вашего поста это то по вашему, не помощь ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

koT9pa

  • Новичок
  • 3
  • 0 / 0
Код
<?php if ($product->_display_price){?>        
            <div class="prod_price jshop_price">
            <span class="jshop_price_text">
<?php print _JSHOP_PRICE?>:
</span>
            <?php if ($product->qty_in_stock <=0){?>
<?php print _UTOCHNITE_U_MENEDZHERA_TOVAR;?>
            <?php }else{?>
            <?php print formatprice($this->product->getPriceCalculate())?>
            <?php }?>
            </div>
            <?php }?>

qty_in_stock эта функция отвечает за кол-во ?
 делаю в файле components/com_jshopping/templates/default/product/product_default
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
qty_in_stock - это кол-во на складе, если включено а настйроках

но это тема про цену, создайте свою новую про кол-во, чтобы остальным если будут искать было понятно.
ну и есть если что платный плагин у разрабов компонента "Уведомить о наличии"
« Последнее редактирование: 17.12.2015, 10:12:15 от nevigen »
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

юрий 009

  • Захожу иногда
  • 341
  • 5 / 1
ну у вас <span id="block_price"> выводится только в самом последнем else, а надо чтобы везде

Спасибо. я что-то сам  не догадался что он должен быть в каждом из условий.




Код
	 <?php if ($this->product->_display_price){?>  
            <div class="prod_price jshop_price">

            <span class="jshop_price_text">
<?php print _JSHOP_PRICE?>:
</span>

            <?php if ($product->product_price ==0){?>
<?php print _UTOCHNITE_U_MENEDZHERA_TOVAR;?>


           <?php } elseif ($product->product_price ==1){?>



  <div class="prod_qty_input">
     
                <?php print _JSHOP_QUANTITY?>:&nbsp;
                   
<input type="number" min="0" name="quantity" id="quantity" onkeyup="reloadPrices();" class="inputbox" value="<?php print $this->default_count_product?>" /><?php print $this->_tmp_qty_unit;?>       
    </div>



<div class = "jshop_price3">
<span id="block_price">
   <?php print _UTOCHNITE_U_VIROBNIKA_TOVARU;?> 
<?php print $this->product->_tmp_var_price_ext;?>
</div>



<input type="submit" class="buttonCART" value="<?php print _JSHOP_ADD_TO_CART?>" onclick="jQuery('#to').val('cart');" />
                <?php if ($this->enable_wishlist){?>
                    <input type="submit" class="button" value="<?php print _JSHOP_ADD_TO_WISHLIST?>" onclick="jQuery('#to').val('wishlist');" />
                <?php }?>
                <?php print $this->_tmp_product_html_buttons;?>
           
            <div id="jshop_image_loading" style="display:none"></div>



<?php }else{?>
       <span id="block_price"><?php print formatprice($this->product->getPriceCalculate())?><?php print $this->product->_tmp_var_price_ext;?></span>

<?php }?>
            </div>



да я знаю, что в коде есть дырки но у меня работает и так
нет сейчас времени ковирятися в нем чтобы исправить
*

nevigen

  • Moderator
  • 10452
  • 863 / 25
  • http://n*****n.com
не в каждом, а все условия должны быть в блоке с ИД
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

pobo

  • Захожу иногда
  • 65
  • 0 / 0
Вопрос в продолжении темы.
Как то не логично у меня получается, в списке товаров - уточняйте цену, в карточке товара -уточняйте цену, при этом товар можно добавить в корзину.
Может я чего упустил)))
Можно ли запретить добавлять в корзину товар с нулевой ценой?

*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
запретить нельзя, но можно точно также в шаблоне скрыть кнопку Купить
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

cirip

  • Захожу иногда
  • 114
  • 0 / 0
Подскажите пожалуйста, как эти условия прописать и где? Шаблон стоит от JoomShopping kit V2 и в файле . /components/com_jshopping/templates/default/product/product_default.php нет такой строки что бы прописать условия с ценой.
Вот с этим кодом не получается
КОД У МЕНЯ В ШАБЛОНЕ
Код
<?php defined('_JEXEC') or die('Restricted access');
$product = $this->product;
include(dirname(__FILE__)."/load.js.php");
include(dirname(__FILE__)."/../plugin_params.php");
include_once(dirname(__FILE__)."/__array_list_categories.php");
if ($on_mod_inproducts) {
    include(dirname(__FILE__)."/_addmodule.php");
}

if (!in_array($this->product->product_id, $prod_seo_exclude_arr) && !in_array($this->category_id, $categ_seo_exclude_arr)) {
    $document =  JFactory::getDocument();
    if ($on_seo_title=="1") {
        $get_title = $document->getTitle();
        if ($noempty_seo_exclude!="1" || ($noempty_seo_exclude=="1" && !$get_title)) {
            $document->setTitle($prod_title_prefix." ".htmlspecialchars($cnp)." ".$prod_title_name_prefix." ".htmlspecialchars($this->product->name)." ".$prod_title_suffix);
        }
    }
    if ($on_seo_descr) {
        $get_metadata_decsr = $document->getMetadata('description');
        if ($noempty_seo_exclude!="1" || ($noempty_seo_exclude=="1" && !$get_metadata_decsr)) {
            $manufacturer_seo="";
            if ($on_seo_pm=="1") {
                $manufacturer_seo = $prefix_seo_pm." ".htmlspecialchars($this->product->manufacturer_info->name)." ".$suffix_seo_pm;
            }
            $document->setMetaData('description', trim($prod_descr_prefix." ".rtrim(htmlspecialchars($category_name),", ")." ".$prod_descr_name_prefix." ".htmlspecialchars($this->product->name)." ".$prod_descr_suffix." ".$manufacturer_seo));
        }
    }
}
?>
<div class="jshop productfull rp-brooksite" data-id="<?php print $this->product->product_id;?>">
<div class="productfull-main">
        <?php
            if ($ualayout && $ualayout=="mobile" && $mobile_card_view) {
                include(dirname(__FILE__)."/productfull_mobile.php");
            } else {
                include(dirname(__FILE__)."/productfull_main_".$templ_type.".php");
            }
        ?>
    </div>

<?php if ($show_tabs_descr!="1" || $on_tabs!="1"){?>
    <div class="jshop_prod_description">
        <?php print $this->product->description; ?>
    </div>
    <?php print $this->_tmp_product_html_after_description;?>
    <?php } ?>
   
    <?php if ($this->product->product_url!=""){?>
    <div class="prod_url">
        <a target="_blank" href="<?php print $this->product->product_url;?>"><?php print _JSHOP_READ_MORE?></a>
    </div>
    <?php }?>
     
    <?php //Tabs
if ($on_tabs=="1"){
$brwser = new JBrowser;
if ($typeTabs=="Collapse" || $brwser->isMobile()){
include(dirname(__FILE__)."/collapse.php");
} else {
include(dirname(__FILE__)."/tabs.php");
}
} else {
include(dirname(__FILE__)."/no_tabs.php");
}?>
   
    <?php if ($this->config->product_show_button_back && $ualayout!="mobile"){?>
        <div class="button_back">
        <input type="button" class="btn list-btn button" value="&larr; <?php print _JSHOP_BACK;?>" onclick="<?php print $this->product->button_back_js_click;?>" />
        </div>
    <?php }?>
<?php print $this->_tmp_product_html_end;?>
</div>
В коде по пути http://ваш_сайт/components/com_jshopping/templates/ваш_шаблон/list_products/product.php вообще нет такого.
Код
<?php defined('_JEXEC') or die('Restricted access');
include(dirname(__FILE__)."/../plugin_params.php");
$stv = $session->get('toView','');
print $product->_tmp_var_start;
if ($ualayout && $ualayout=="mobile" && $mobile_list_view) {
include(dirname(__FILE__)."/mobileview.php");
} else {
if ($stv=="toGrid" || !$stv){
include(dirname(__FILE__)."/gridview.php");
}
if ($stv=="toList"){
include(dirname(__FILE__)."/listview.php");
}
if ($stv=="toSlim"){
include(dirname(__FILE__)."/slimview.php");
}
}
print $product->_tmp_var_end;?>
« Последнее редактирование: 08.10.2020, 21:32:06 от cirip »
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Ну так в компоненте в шаблонах зачем вы смотрите дефолт?
Смотрите ваш шаблон
*

cirip

  • Захожу иногда
  • 114
  • 0 / 0
Ну так в компоненте в шаблонах зачем вы смотрите дефолт?
Смотрите ваш шаблон
Я и смотрю в своём шаблоне путь немного перепутал. Последний код это код в моём шаблоне. А такого который был написал в обсуждение где искать нет такого.
*

a-vikalingvo

  • Захожу иногда
  • 51
  • 7 / 0
Дальше Вам сюда  include(dirname(__FILE__)."/productfull_main_".$templ_type.".php");
*

a-vikalingvo

  • Захожу иногда
  • 51
  • 7 / 0
Посмотрите что в этой переменной  $templ_type и ищете такой файл
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести артикул вместо кода товара в письмо клиента

Автор antony2606

Ответов: 2
Просмотров: 4193
Последний ответ 09.02.2021, 17:01:25
от antony2606
Вывести данные базовой цены

Автор intcorp

Ответов: 3
Просмотров: 1215
Последний ответ 22.11.2018, 17:58:53
от lexxbry
Изменить иконку если у товара нет изображения, всплывающее изображение товара

Автор Kitokedoki

Ответов: 5
Просмотров: 2806
Последний ответ 01.04.2018, 11:11:05
от Biss
Вставить пробел в цену товара

Автор Mick_20

Ответов: 2
Просмотров: 1215
Последний ответ 22.02.2018, 09:37:31
от Mick_20
Скрыть старую цену?

Автор chip_n

Ответов: 8
Просмотров: 3422
Последний ответ 28.11.2017, 13:29:19
от dmitry_stas