Новости Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

👩‍💻 SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla.Компонент - менеджер цифровых проектов для Joomla! CMS. Компонент обеспечивает создание каталога цифровых проектов и предоставляет возможность скачивания, в том числе с использованием лицензионных ключей.👩‍💻 v.2.5.0. Что нового?Схемы структур данных для серверов обновлений. Теперь с SW JProjects вы может создавать сервер обновлений не только для расширений Joomla, но и свои собственные. Например, вам нужно, чтобы структура данных сервера обновлений была другая и формат должен быть, например, не XML, а JSON. Формирование структуры данных для сервера обновлений расширений Joomla вынесено в отдельный плагин. Вы можете создать свой собственный плагин и реализовать в нём нужную вам структуру данных, добавив или наоборот исключив отображаемые данные. Сервер обновлений в компоненте по-прежнему отображает информацию о списке проектов и их версиях, о конкретном проекте и его changelog.Можно выбрать схему данных сервера обновлений глобально для всего компонента, выбрать другую схему данных для категории проектов, а так же выбрать схему в каждом проекте.

Разработчикам в качестве образца можно посмотреть плагин схемы данных для Joomla в составе компонента или же плагин-образец JSON-схемы на GitHub.
Группа плагинов swjprojects. Для нужд компонента создана группа плагинов swjprojects. В частности, в этой группе находится плагин структуры данных Joomla расширений для сервера обновлений.Изменение языковых констант. Изменены некоторые языковые константы в панели администратора. Если вы делали переопределение констант - переопределите их снова.👩‍💻 Joomla 6. Внесены изменения для корректной установки и работы компонента на Joomla 6. Компонент успешно протестирован на Joomla 6-beta2.Минимальная версия Joomla - 5. Подняты минимальные системные требования: Joomla 5.0.0 и PHP 8.1.
- Страница расширения👉 Плагин-образец кастомной JSON-схемы данных для сервера обновлений на GitHub.- GitHub расширения- Документация на GitHub- Joomla Extensions Directory#joomla #расширения

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

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

sanekk

  • Захожу иногда
  • 66
  • 0 / 0
sh404SEF + IceVmCart
« : 01.06.2011, 14:55:20 »
Всем привет столкнулся с такой проблемой в своем интернет магазине. Я установил модуль мини корзины IceVmCart. он работал замечательно с включенными

Установками Search Engine Optimization
 Включить SEO                          Да
 Использовать mod_rewrite    Да  
 Добавить суффикс к URL    Да

В мини корзине при добавлении товара отображались картинки товара.
Когда я установил sh404SEF и включил его, картинки при добавлении в мини корзине пропали!
Кто сталкивался с этой проблемой или знает как ее решить?
« Последнее редактирование: 01.06.2011, 15:03:37 от sanekk »
*

sanekk

  • Захожу иногда
  • 66
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #1 : 11.06.2011, 13:04:05 »
много уважаемые гуру помогите пожалуйста разобраться  !
*

sanekk

  • Захожу иногда
  • 66
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #2 : 30.08.2011, 13:05:42 »
вообщем разобрался нужно сделать пере направление через .htaccess. вот только как пока не как не могу разобраться.

вот ссылка как пример старого адреса картинки:

http://stovatt.ru/components/com_virtuemart/show_image_in_imgtag.php?filename=resized%2F_________________4e2ada9b2e1a5_120x120.jpg&newxsize=130&newysize=130&fileout=

а вот нового:



Кто знает как можно сделать редирект через .htaccess чтобы вместо нового шло перенаправление на старые адреса?
*

master3000

  • Осваиваюсь на форуме
  • 32
  • 0 / 1
Re: sh404SEF + IceVmCart
« Ответ #3 : 08.11.2011, 14:30:24 »
Присоединяюсь к вопросу

Вот что нашел в комментариях:

Тоже долго рыл на форумах, нашел у немцев
лежит в components/com_virtuemart/themes/default/templates/common файл minicart.tpl.php
в нем ищем строку
<img src="&lt;?php echo $LiveSite ?&gt;&lt;br&gt;и пишем полный путь к папке&lt;br&gt;components/com_virtuemart/shop_image/product/ вместо стандартного параметра">
http://nauca.com.ua/modules/skachat-modul-korziny-dlya-virtuemart-icevmcart/

У меня картинка выводится:

<a href=\"" . $cart['url'] . "\">";
echo ps_product::image_tag( $thumb, "alt=\"".$cart['product_name']."\" class=\"ice-image\"");
echo "</a>";

В готовом варианте это:

<a href="/bryuki/30-bryuki">
<img src="http:// сайт/components/com_virtuemart/themes/default/images/noimage.gif" alt="Брюки" class="ice-image" border="0"/>
</a>

Как их скрестить ?

-----------------------------

Вот еще версия:

По решению проблем с родным SEF (отсутствие картинок), идем в
Цитата:
    Файл minicart.tpl.php скопируйте в папку ...componentes/com_virtuemart/themes/default/templates/common/
и пишем в нем полный путь к картинкам

$LiveSite ?>components/com_virtuemart/shop_image/product/
« Последнее редактирование: 08.11.2011, 14:53:00 от master3000 »
*

master3000

  • Осваиваюсь на форуме
  • 32
  • 0 / 1
Re: sh404SEF + IceVmCart
« Ответ #4 : 08.11.2011, 15:19:10 »
У Мэта из калифорнии таже проблема

Офф. ответ айсов: (Будем думать)

Привет, Мэтт
Мы собираемся сделать обновление для ice_vm_cart
Будем думать, эта функция также
до этого я рекомендую вам оставаться настроиться на нашем обновления область
www.icetheme.com/Joomla-Extensions/Extensions-Updates.html
Большое Спасибо!
http://www.icetheme.com/Forums/IceVmCart/24682-CLOSED-NO-Image-with-Joomla-SEF.html
*

master3000

  • Осваиваюсь на форуме
  • 32
  • 0 / 1
Re: sh404SEF + IceVmCart
« Ответ #5 : 08.11.2011, 15:49:47 »
-------------------------- РЕШЕНИЕ ----------------------------
Код трогать вообще не нужно

Достаточно выключить родное SEO Joomla

Админка Joomla -> Сайт -> Общие настройки -> Сайт -> Вкладка "Установки Search Engine Optimization":

Включить SEO                     Нет
Использовать mod_rewrite    Да
Добавить суффикс к URL    Нет
Нажимаем на + в моей репутации

sh404SEF, соответственно, ON

Готово!
« Последнее редактирование: 08.11.2011, 16:12:45 от master3000 »
*

Бурая_мишка

  • Новичок
  • 8
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #6 : 12.12.2011, 13:48:20 »
По решению проблем с родным SEF (отсутствие картинок), идем в
Цитата:
    Файл minicart.tpl.php скопируйте в папку ...componentes/com_virtuemart/themes/default/templates/common/
и пишем в нем полный путь к картинкам

$LiveSite ?>components/com_virtuemart/shop_image/product/


Не могли бы Вы подсказать куда именно в данном файле вставлять этот код? :)
*

Бурая_мишка

  • Новичок
  • 8
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #7 : 13.12.2011, 00:19:13 »
Есть решение для встроенного SEF, если кому понадобится. Подсказали на VirtueMart.net,  код для minicart.tpl.php:
Код
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );

if($empty_cart) { ?>
    
    <div style="margin: 0 auto; text-align:center">
    <?php if(!$vmMinicart) { ?>
   <p> <?php }
    echo $VM_LANG->_('PHPSHOP_EMPTY_CART')?>
    </p>
    </div>
<?php }
else {
$db = &JFactory::getDBO();
$ps_product = new ps_product;
    // Loop through each row and build the table
    foreach( $minicart as $idx => $cart ) {

foreach( $cart as $attr => $val ) {
// Using this we make all the variables available in the template
// translated example: $this->set( 'product_name', $product_name );
$this->set( $attr, $val );

}

        if(!$vmMinicart) { // Build Minicart
$product_thumb_image = $ps_product->get_field($_SESSION['cart'][$idx]["product_id"], "product_thumb_image");
echo '<div class="ice-basket-row '.(($idx%2==0)?'even':'odd').'">';
echo "<a href=\"" . $cart['url'] . "\">";
echo ps_product::image_tag( $product_thumb_image, "alt=\"".$cart['product_name']."\" class=\"ice-image\"");
echo "</a>";
?>
            
                <div class="ice-backet-wrapper">
                
                    <div class="ice-prod-descr">
                    <?php echo $cart['quantity'] ?>&nbsp;x&nbsp;<a href="<?php echo $cart['url'] ?>"><?php echo $cart['product_name'] ?></a>
                    </div>
                    <div class="ice-price" style="align: right">
                    <?php echo $cart['price'] ?>
                    </div>
                    
                    <div class="ice-attributes">
                    <?php echo $cart['attributes'];?>
                    </div>
                    
                </div>
            
           </div>
           <?php  
        }
    }
}
if(!$vmMinicart) { ?>
<?php } ?>
<div class="ice-cartinfo clearfix" style="clear:both">
    <div class="ice-totalproduct" >
    <?php echo $total_products ?>
    </div>
    <div class="ice-totalprice">
    <?php
   if ($total_price > 0)  
   echo 'На сумму: '.$total_price;
   else if ($total_price == 0)
   ?>
    </div>
</div>
   <?php if (!$empty_cart && !$vmMinicart) { ?>
   <div class="ice-showcart" align="center">
    <?php echo $show_cart ?>
   </div>
<?php }
echo $saved_cart;
?>

« Последнее редактирование: 13.12.2011, 00:25:22 от Бурая_мишка »
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Re: sh404SEF + IceVmCart
« Ответ #8 : 19.01.2012, 23:02:58 »
Есть:) Подсказали на VirtueMart.net, код для minicart.tpl.php:

Код
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );

if($empty_cart) { ?>
    
    <div style="margin: 0 auto; text-align:center">
    <?php if(!$vmMinicart) { ?>
   <p> <?php }
    echo $VM_LANG->_('PHPSHOP_EMPTY_CART')?>
    </p>
    </div>
<?php }
else {
$db = &JFactory::getDBO();
$ps_product = new ps_product;
    // Loop through each row and build the table
    foreach( $minicart as $idx => $cart ) {

foreach( $cart as $attr => $val ) {
// Using this we make all the variables available in the template
// translated example: $this->set( 'product_name', $product_name );
$this->set( $attr, $val );

}

        if(!$vmMinicart) { // Build Minicart
$product_thumb_image = $ps_product->get_field($_SESSION['cart'][$idx]["product_id"], "product_thumb_image");
echo '<div class="ice-basket-row '.(($idx%2==0)?'even':'odd').'">';
echo "<a href=\"" . $cart['url'] . "\">";
echo ps_product::image_tag( $product_thumb_image, "alt=\"".$cart['product_name']."\" class=\"ice-image\"");
echo "</a>";
?>
            
                <div class="ice-backet-wrapper">
                
                    <div class="ice-prod-descr">
                    <?php echo $cart['quantity'] ?>&nbsp;x&nbsp;<a href="<?php echo $cart['url'] ?>"><?php echo $cart['product_name'] ?></a>
                    </div>
                    <div class="ice-price" style="align: right">
                    <?php echo $cart['price'] ?>
                    </div>
                    
                    <div class="ice-attributes">
                    <?php echo $cart['attributes'];?>
                    </div>
                    
                </div>
            
           </div>
           <?php  
        }
    }
}
if(!$vmMinicart) { ?>
<?php } ?>
<div class="ice-cartinfo clearfix" style="clear:both">
    <div class="ice-totalproduct" >
    <?php echo $total_products ?>
    </div>
    <div class="ice-totalprice">
    <?php
   if ($total_price > 0)  
   echo 'На сумму: '.$total_price;
   else if ($total_price == 0)
   ?>
    </div>
</div>
   <?php if (!$empty_cart && !$vmMinicart) { ?>
   <div class="ice-showcart" align="center">
    <?php echo $show_cart ?>
   </div>
<?php }
echo $saved_cart;
?>


К сожалению и это не помогло! Изображение в корзине при вкл. SEF так и не показывает.
Точно нужно прописать в этом коде полный путь до папки с изображениями.
Цитировать
лежит в components/com_virtuemart/themes/default/templates/common файл minicart.tpl.php
в нем ищем строку
<img src="&lt;?php echo $LiveSite ?&gt;&lt;br&gt;и пишем полный путь к папке&lt;br&gt;components/com_virtuemart/shop_image/product/ вместо стандартного параметра">

Вот только не могу разобраться где именно прописать, т.к. там нет такой строчки.
Может разобрались уже?
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Re: sh404SEF + IceVmCart
« Ответ #9 : 20.01.2012, 01:05:55 »
Попробовала снова метод, описанный: "Бурая_мишка", заработало!
Извиняюсь за дезинформацию...

Спасибо большое!  :D
« Последнее редактирование: 20.01.2012, 01:09:11 от kreolka_8 »
*

Romano-spb

  • Новичок
  • 3
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #10 : 29.04.2012, 12:26:30 »
Код для решение для встроенного SEF от Бурая_мишка работает некорректно. Изображение товара в корзине отображается при вкл SEF и Artio JoomSEF нормально, но когда добавляешь несколько раз 1  и тот же товар, то в корзину добавляется другой товар (
*

SeMile

  • Новичок
  • 1
  • 0 / 0
Re: sh404SEF + IceVmCart
« Ответ #11 : 30.01.2013, 00:12:46 »
Есть решение для встроенного SEF, если кому понадобится. Подсказали на VirtueMart.net,  код для minicart.tpl.php:
Код
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );

if($empty_cart) { ?>
   
    <div style="margin: 0 auto; text-align:center">
    <?php if(!$vmMinicart) { ?>
   <p> <?php }
    echo $VM_LANG->_('PHPSHOP_EMPTY_CART')?>
    </p>
    </div>
<?php }
else {
$db = &JFactory::getDBO();
$ps_product = new ps_product;
    // Loop through each row and build the table
    foreach( $minicart as $idx => $cart ) {

foreach( $cart as $attr => $val ) {
// Using this we make all the variables available in the template
// translated example: $this->set( 'product_name', $product_name );
$this->set( $attr, $val );

}

        if(!$vmMinicart) { // Build Minicart
$product_thumb_image = $ps_product->get_field($_SESSION['cart'][$idx]["product_id"], "product_thumb_image");
echo '<div class="ice-basket-row '.(($idx%2==0)?'even':'odd').'">';
echo "<a href=\"" . $cart['url'] . "\">";
echo ps_product::image_tag( $product_thumb_image, "alt=\"".$cart['product_name']."\" class=\"ice-image\"");
echo "</a>";
?>
           
                <div class="ice-backet-wrapper">
               
                    <div class="ice-prod-descr">
                    <?php echo $cart['quantity'] ?>&nbsp;x&nbsp;<a href="<?php echo $cart['url'] ?>"><?php echo $cart['product_name'] ?></a>
                    </div>
                    <div class="ice-price" style="align: right">
                    <?php echo $cart['price'] ?>
                    </div>
                   
                    <div class="ice-attributes">
                    <?php echo $cart['attributes'];?>
                    </div>
                   
                </div>
           
           </div>
           <?php 
        }
    }
}
if(!$vmMinicart) { ?>
<?php } ?>
<div class="ice-cartinfo clearfix" style="clear:both">
    <div class="ice-totalproduct" >
    <?php echo $total_products ?>
    </div>
    <div class="ice-totalprice">
    <?php
   if ($total_price > 0)   
   echo 'На сумму: '.$total_price;
   else if ($total_price == 0)
   ?>
    </div>
</div>
   <?php if (!$empty_cart && !$vmMinicart) { ?>
   <div class="ice-showcart" align="center">
     <?php echo $show_cart ?>
   </div>
<?php }
echo $saved_cart;
?>

Огромное спасибо, специально зарегистрировался, что бы поблагодарить. Столкнулся с такой же проблемой, решил благодаря Вам, спасибо!

Код для решение для встроенного SEF от Бурая_мишка работает некорректно. Изображение товара в корзине отображается при вкл SEF и Artio JoomSEF нормально, но когда добавляешь несколько раз 1  и тот же товар, то в корзину добавляется другой товар (

Согласен, проблема имеет место быть, но у меня только при добавлении большого кол-ва товаров, больше 10-ти, но это не критично, так как это не потребуется.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

sh404SEF + OSMap Free

Автор xlenivecx

Ответов: 5
Просмотров: 3462
Последний ответ 14.12.2019, 22:34:33
от draff
Теги на страницах навигации sh404SEF

Автор alexey711

Ответов: 2
Просмотров: 3239
Последний ответ 25.06.2019, 15:02:55
от alexey711
Как выключить отображение кода модуля на странице 404 работающей через sh404SEF?

Автор Dim

Ответов: 1
Просмотров: 3554
Последний ответ 05.11.2018, 22:56:47
от Dim
Убрать слэши sh404SEF

Автор romagromov

Ответов: 1
Просмотров: 3774
Последний ответ 16.06.2018, 12:03:05
от romagromov
Управление 404 ссылками в sh404SEF

Автор Afman

Ответов: 0
Просмотров: 3708
Последний ответ 09.06.2018, 20:15:30
от Afman