Новости Joomla

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

Релиз безопасности Joomla 6.1.4 и Joomla 5.4.9

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

JoomShift - компонент переноса контента между Joomla сайтами.

‍ JoomShift - компонент переноса контента между Joomla сайтами.

JoomShift - компонент переноса контента между Joomla сайтами.Он позволяет экспортировать модули, меню, материалы, категории, пользовательские поля и пользователей в виде переносимых JSON/ZIP-файлов, а затем импортировать их в любую другую установку Joomla.

Возможности компонента:- Модули — полная настройка, назначение пунктов меню, позиционирование и содержимое SP Page Builder.
-Меню — иерархия родительских/дочерних элементов, типы элементов, ссылки, уровни доступа и параметры. Отсутствующие типы меню создаются автоматически, а элементы, указывающие на неустановленные компоненты, пропускаются с предупреждением.
-Статьи и категории — контент, метаданные, изображения и иерархия категорий.
-Пользовательские поля — группы полей, определения, ограничения по категориям и значения (включая поля с несколькими значениями) — экспортируются и автоматически создаются заново на целевом сайте.
-Пользователи — данные профиля, назначения групп и хэши паролей, чтобы учетные записи работали сразу после импорта.
-Кросс-версииJoomla - компонент адаптируется к различиям в схеме базы данных между версиями Joomla.
-Создан для крупных сайтов — постраничные списки (20/50/100/250строк) и автоматический пакетный экспорт для сайтов с более чем 500 элементами, поэтому он продолжает работать на обычном хостинге.
-Опция перезаписи — обновляет совпадающие элементы при повторном импорте вместо создания дубликатов.
-Drag-n-drop импорт с подробным отчетом о том, что было импортировано, обновлено или пропущено, и почему.

На момент написания заметки для скачивания необходима регистрация/логин на сайте разработчика.

-Joomla Extensions Directory-Страница расширения#joomla#расширения

Модуль joomLab JS Ajax Cart позволит организовать в Вашем интернет-магазине на компоненте JoomShopping удобную AJAX корзину с возможностью добавлять товары и изменять их количество без перезагрузки страницы.

Модуль joomLab JS Ajax Cart позволит организовать в Вашем интернет-магазине на компоненте JoomShopping удобную AJAX корзину с возможностью добавлять товары и изменять их количество без перезагрузки страницы.

Кроме этого, в состав пакета установки входит плагин, который позволяет выводить атрибуты товара в список всех товаров, менять эти атрибуты и добавлять товар в корзину из списка товаров. Если атрибутов много, то их можно выводить в всплывающем (модальном окне).

В модуле предусмотрено 2 макета дизайна для Bootstrap и UIkit и максимальная кастомизация для переопределения макетов в шаблон.Демо расширенияСтраница расширения

Видео в Telegram

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

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Подскажите какие файлы править - не могу разобраться, и поиск не помог.
« Последнее редактирование: 30.08.2011, 23:59:22 от Katerina01 »
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Ребят, никто не знает как поменять местами описание и товары на странице производителя?
Нужно чтобы сначала шли товары а потом описание.
*

fsv

  • Moderator
  • 2796
  • 414 / 2
Ребят, никто не знает как поменять местами описание и товары на странице производителя?
Нужно чтобы сначала шли товары а потом описание.

Сначала уточню, правильно ли я понял.
Вы хотите на странице всех товаров конкретного производителя типа
/index.php?option=com_virtuemart&page=shop.browse&manufacturer_id=1&Itemid=2  ,
на которую можно попасть, используя модуль mod_virtuemart_manufacturers ,
оставить вверху название производителя, а описание производителя переместить вниз под товары?
Если да, то:

\administrator\components\com_virtuemart\html\shop.browse.php
вывод в хедере названия и описания (с картинкой, если есть) производителя примерно в стр.128-138
elseif( $manufacturer_id) {
      $db->query( "SELECT manufacturer_id, mf_name, mf_desc FROM #__{vm}_manufacturer WHERE manufacturer_id='$manufacturer_id'");
      $db->next_record();
      $mainframe->setPageTitle( $db->f("mf_name") );

      $browsepage_lbl = shopMakeHtmlSafe( $db->f("mf_name") );
      $tpl->set( 'browsepage_lbl', $browsepage_lbl );
      $browsepage_lbltext = $db->f("mf_desc");
      $tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
      $browsepage_header = $tpl->fetch( 'browse/includes/browse_header_manufacturer.tpl.php' );
   }

Если вверху надо убрать описание производителя, а его название оставить, закомментируйте стр.
$tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
Если и название также убрать, то закомментируйте стр.
$tpl->set( 'browsepage_lbl', $browsepage_lbl );

Вверху убрали. Внизу можно вставить над пагинацией. Для этого

после примерно стр.476,477
$tpl->set( 'products', $products );
$tpl->set( 'search_string', $search_string );
вставьте

if( $manufacturer_id) {
      $db->query( "SELECT manufacturer_id, mf_name, mf_desc FROM #__{vm}_manufacturer WHERE manufacturer_id='$manufacturer_id'");
      $db->next_record();
      $mainframe->setPageTitle( $db->f("mf_name") );
      $browsepage_lbl = shopMakeHtmlSafe( $db->f("mf_name") );
      $tpl->set( 'browsepage_lbl', $browsepage_lbl );
      $browsepage_lbltext = $db->f("mf_desc");
      $tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
      $browsepage_header = $tpl->fetch( 'browse/includes/ browse_pagenav.tpl.php' );
   }



а также в
\components\com_virtuemart\themes\default\templates\browse\includes\browse_pagenav.tpl.php
после проверки Direct Access (и до <?php if(!@is_object( $pagenav)) return;  ?>) в стр.3
вставить
<h3><?php echo $browsepage_lbl ?></h3>
<div class="browseDesc"><?php echo $browsepage_lbltext ?></div>





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

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
И снова fsv спешит на помощь! Еще +1 от меня  :D

А теперь к делу.
Да Вы правильно меня поняли. Нужно название производителя оставить вверху, а само описание перенести вниз.
Решение, которое Вы указали работает, но при одном условии - если работает пагинация!
В shop.browse.php код относящийся к пагинации у меня закомментирован - соответственно нет пагинации и нет описания производителей(((.

Куда еще, кроме browse_pagenav.tpl.php, можно запихнуть вывод
<div class="browseDesc"><?php echo $browsepage_lbltext ?></div> ?
Последнее, что у меня выводится на странице производителей - "недавно просмотренные товары" (по-моему это browse_notables.tpl.php)



*

fsv

  • Moderator
  • 2796
  • 414 / 2
"Недавно просмотренные товары" - recent.tpl.php , который не в группе шаблонов browse (в папке common).
Если пагинация совсем не нужна, можно попробовать в browse_pagenav.tpl.php после вышеуказанной вставки все удалить. То есть шаблон пагинации будет для вывода "чего-хочу". А в shop.browse.php пагинацию можно тогда не комментировать.
Веб-разработка: заказ. Только новая разработка.
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Цитировать
...можно попробовать в browse_pagenav.tpl.php после вышеуказанной вставки все удалить. То есть шаблон пагинации будет для вывода "чего-хочу". А в shop.browse.php пагинацию можно тогда не комментировать.
Я пока так и сделала. Но у меня на счет пагинации есть задумка, о которой наверное лучше рассказать в отдельной теме))
И все же больше нет вариантов, кроме как browse_pagenav.tpl.php?
*

fsv

  • Moderator
  • 2796
  • 414 / 2
И все же больше нет вариантов, кроме как browse_pagenav.tpl.php?

Сходу в recent не получилось. Надо "колупать" дальше. Но сейчас уже сплю...
Веб-разработка: заказ. Только новая разработка.
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
У меня еще такая идея есть:
Создаем browse_pagenav2.tpl.php в него пишем наш див.
Потом в shop.browse.php:
Код
$tpl->set( 'products', $products );
$tpl->set( 'search_string', $search_string );

if( $manufacturer_id) {
      $db->query( "SELECT manufacturer_id, mf_name, mf_desc FROM #__{vm}_manufacturer WHERE manufacturer_id='$manufacturer_id'");
      $db->next_record();
      $mainframe->setPageTitle( $db->f("mf_name") );
      $browsepage_lbl = shopMakeHtmlSafe( $db->f("mf_name") );
      $tpl->set( 'browsepage_lbl', $browsepage_lbl );
      $browsepage_lbltext = $db->f("mf_desc");
      $tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
      $browsepage_header = $tpl->fetch( 'browse/includes/browse_pagenav2.tpl.php' );
   }
           if ( $num_rows > 1 ) {
$browsepage_footer = $tpl->fetch( 'browse/includes/browse_pagenav2.tpl.php' );
                 $tpl->set( 'browsepage_footer', $browsepage_footer );
           }

// if ( $num_rows > 1 ) {
// $browsepage_footer = $tpl->fetch( 'browse/includes/browse_pagenav.tpl.php' );
// $tpl->set( 'browsepage_footer', $browsepage_footer );
// } else {
// $tpl->set( 'browsepage_footer', '' );
// }


Как бы работает...
Но что бы сделать такое  :-* с этим if ( $num_rows > 1 ), чтобы когда понадобится разкомментировать пагинацию это все вместе работало?
Сейчас если это сделать,то будет показана только пагинация((
Надеюсь смысл понятен ;)
*

fsv

  • Moderator
  • 2796
  • 414 / 2
Смысл понятен. Но ваш вариант сходу затрудняюсь.
Другое не очень понятно. Зачем дальше править shop.browse.php.

Если пагинация совсем временно не нужна, можно попробовать в browse_pagenav.tpl.php после вышеуказанной вставки все удалить. ... А в shop.browse.php пагинацию можно тогда не комментировать.

Когда опять нужна станет пагинация, в browse_pagenav.tpl.php вернуть удаленные строки. И будет и описание производителя, и пагинация.
Или это вам не подходит из-за вашей "задумки с пагинацией"?

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

fsv

  • Moderator
  • 2796
  • 414 / 2
Еще вариант. Кажется, лучше того, что предложил ранее. В смысле универсальнее для раздельной работы над шаблонами browse.

Вариант вывода информации в дополнительно созданном для этого шаблоне в футере browse над пагинацией.

1. Делаем копию browse_header_manufacturer.tpl.php и переименовываем ее в browse_footer_manufacturer.tpl.php. Ложим новый шаблон в ту же папку
\components\com_virtuemart\themes\default\templates\browse\includes\  .

2. Смотрим настройки темы VM -> Product List Style
если «Product Listing with a table (default)», то вы используете шаблон  browse_layouttable.tpl.php
если «Flat Product List (fixed to 1 product per row, using a table)», то вы используете шаблон  browse_listtable.tpl.php
если «Product List (no table, div-based)», то вы используете шаблон browse_notables.tpl.php
В папке \www\components\com_virtuemart\themes\default\templates\browse\includes\
открываете используемый шаблон.
Пусть это будет browse_notables.tpl.php.
перед
echo $browsepage_footer;
вставляете
echo $browsepage_footer_mf;

3. \administrator\components\com_virtuemart\html\shop.browse.php
после примерно стр.476,477
$tpl->set( 'products', $products );
$tpl->set( 'search_string', $search_string );
вставьте

Код
if( $manufacturer_id) {
$db->query( "SELECT manufacturer_id, mf_name, mf_desc FROM #__{vm}_manufacturer WHERE manufacturer_id='$manufacturer_id'");
$db->next_record();
$mainframe->setPageTitle( $db->f("mf_name") );
$browsepage_lbl = shopMakeHtmlSafe( $db->f("mf_name") );
$tpl->set( 'browsepage_lbl', $browsepage_lbl );
$browsepage_lbltext = $db->f("mf_desc");
$tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
$browsepage_footer_mf = $tpl->fetch( 'browse/includes/browse_footer_manufacturer.tpl.php' );
$tpl->set( 'browsepage_footer_mf', $browsepage_footer_mf );
}


« Последнее редактирование: 01.09.2011, 13:38:15 от fsv »
Веб-разработка: заказ. Только новая разработка.
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
 fsv, вот этот вариант идеален, думаю всем подойдет! :D
Теперь с описанием можно творить все что угодно!
Еще раз спасибо, fsv.
 
*

SolopoV

  • Давно я тут
  • 577
  • 16 / 0
  • зеленею...
У меня после такого хака, описания производителей "протянулись" по всем категориям товаров, а не только на "страницах производителей".

Что-то поковырял и получилось нормально, единственное, что не смог сделать, что бы описание, показывалось только на первой странице товаров производителя, а не на всех.

Содержимое browse_footer_manufacturer.tpl.php
Код
<div><?php echo $browsepage_lbltext ?></div>

Содержимое browse_header_manufacturer.tpl.php
Код
<div><h2>Тра-та-та от <span class="whites"><?php echo $browsepage_lbl ?></span></h2></div>

Блок "elseif( $manufacturer_id)" (ориентир. со строки 136) в shop.browse.php с title и desc... заменил на свой
Код
	elseif( $manufacturer_id) {
$db->query( "SELECT manufacturer_id, mf_name, mf_desc FROM #__{vm}_manufacturer WHERE manufacturer_id='$manufacturer_id'");
$db->next_record();
$mainframe->setPageTitle( $db->f("mf_name") );
$browsepage_lbl = shopMakeHtmlSafe( $db->f("mf_name") );
$tpl->set( 'browsepage_lbl', $browsepage_lbl );
$browsepage_lbltext = $db->f("mf_desc");
$tpl->set( 'browsepage_lbltext', $browsepage_lbltext );
$mainframe->prependMetaTag( "description", substr(strip_tags($browsepage_lbl.'. '.$browsepage_lbltext), 0, 220) );
$browsepage_header = $tpl->fetch( 'browse/includes/browse_header_manufacturer.tpl.php' );
$browsepage_footer_mf = $tpl->fetch( 'browse/includes/browse_footer_manufacturer.tpl.php' );
$tpl->set( 'browsepage_footer_mf', $browsepage_footer_mf );
}
Пункт третий из предыдущих постов не делал.
Если кто знает, как вывести описание только на первой странице, напишите пожалуйста.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Описание категории опустить под товары

Автор angelo4ek-001

Ответов: 5
Просмотров: 4271
Последний ответ 12.11.2015, 01:53:39
от fsv
VirtueMart -как убрать слово "КАТЕГОРИИ" на первой странице магазина

Автор stalker828

Ответов: 12
Просмотров: 11535
Последний ответ 30.07.2014, 11:51:16
от ZAIRA
Не заполняется "Описание категории"

Автор atlantavto2011

Ответов: 0
Просмотров: 1990
Последний ответ 07.07.2014, 18:21:48
от atlantavto2011
Убрать авторизацию с сайта.

Автор Chebyrek

Ответов: 8
Просмотров: 11148
Последний ответ 31.05.2014, 11:25:44
от Andreiand
Как убрать границы у таблицы?

Автор mernata

Ответов: 2
Просмотров: 3054
Последний ответ 31.03.2014, 09:04:30
от mernata