Новости Joomla

WT Set elements v.1.0.0: плагин поля для RadicalMart

WT Set elements v.1.0.0: плагин поля для RadicalMart

👩‍💻 WT Set elements v.1.0.0: плагин поля для RadicalMart.Плагин пользовательского поля компонента интернет-магазина для Joomla - RadicalMart (@radicalmart). Плагин позволяет создавать набор элементов, включающих заголовок, изображение и краткое описание и выбирать необходимые из них в товаре. Отображать наборы элементов можно в виде товара и в списке товаров (в своих макетах). От клиента поступил запрос на возможность добавления для товаров в RadicalMart списка повторяемых элементов. Это должен был быть редактируемый в одном месте список функций и режимов, которые могли относиться к разным товарам одной категории в разных сочетаниях. Во вкладке параметров "Отображение" вы можете выбрать отображать или нет элементы в категории товаров и/или карточке товара. Для каждого вида возможно выбрать собственный макет. Файлы макета находятся в /layouts/plugins/radicalmart_fields/wtsetelements. Вы можете использовать свои файлы макета в формате .php, разместив их в этой папке. Кроме того, файлы макетов можно переопределить стандартным способом Joomla, после чего они будут доступны по адресу: /templates/YOUR_TEMPLATE/html/layouts/plugins/radicalmart_fields/wtsetelements.Плагин предполагает самостоятельную разработку макетов вывода. Макеты "из коробки" следует рассматривать как образец для создания собственных.Плагин бесплатный. Протестирован на Joomla 5.3.3 и RadicalMart 2.2.4.Плагин разработан в соавторстве участниками нашего сообщества: Сергеем Сергевниным (@gresserg) и Сергеем Толкачёвым (@sergeytolkachyov).Страница расширенияGitHub расширения@joomlafeed#joomla #расширения #radicalmart

IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla

IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla

👩‍💻 IWS.BY VK app widget - Виджет приложения ВКонтакте для Joomla.Модуль «Виджет приложения ВКонтакте» для Joomla поможет добавить на сайт виджет с карточкой приложения или игры из социальной сети ВКонтакте.У вас возникла потребность отобразить информацию о ваших приложениях или играх на сайте с кнопкой перехода в социальную сеть, то этот модуль для Вас. Вам не придется хранить информацию о приложении у себя на сайте, все данные получаются через публичное API социальной сети ВКонтакте. Хранение информации на стороне ВКонтакте позволит Вам не нагружать базу данных сайта.В модуле имеется всего несколько опций и полей, которые максимально упрощают публикацию виджета. Первая опция позволяет подключить публичное API социальной сети ВКонтакте, необходимое для работы виджетов. Следующее поле потребует ввести идентификатор приложения или игры, присвоенный в социальной сети ВКонтакте. Следующая опция позволит выбрать вид отображаемой информации в виджете.Модуль имеет 3 варианта отображения:- карточка- участники- кнопкаПоддерживаемые версии Joomla: Joomla 3, Joomla 4, Joomla 5.Страница расширенияJoomla Extensions Directory#joomla #расширения #vk

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 #расширения

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

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
По аналогии с этой темой (спасибо, fsv), пытался добавить условие "product_parent_id=0", но видимо добавляю его не туда.
Подскажите кто сталкивался с этим модулем, в какие места добавить это условие?
P.S. добавлял его в это место
Код
$query = "SELECT a.*  "
     . " FROM #__vm_product a, #__vm_product_category_xref c"
     . " WHERE a.product_id=c.product_id"
          . " AND   c.category_id='" . $_GET["category_id"] . "'"
          . " AND   a.product_name LIKE '" . $keywordabc . "%'  "
          . $limit_enable;
Код модуля mod_vm_alphasearch_ml.php
Код
<?php
/**
* VM alpha-numeric search  -  version 3
* English and Russian letters now available !
*

* @copyright (C) 2010 copyrights Romik Jan
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU/GPL version 2
*
*/


//only for DEBUG !
//error_reporting(E_ALL);

// Get module options
$show_rus_letters       = $params->get('show_rus_letters', '');
$show_ukr_letters       = $params->get('show_ukr_letters', '');
$show_eng_letters       = $params->get('show_eng_letters', '');
$show_numbers           = $params->get('show_numbers', '');
$set_def_keyword        = $params->get('set_def_keyword','');
$limit_enable           = $params->get('limit_enable','0');
$enable_anchor          = $params->get('enable_anchor', '');
$letters_color          = $params->get('letters_color', '');
$letters_bg_color       = $params->get('letters_bg_color', '');
$letters_font_size      = $params->get('letters_font_size', '');
$letters_font_family    = $params->get('letters_font_family', 'Courier New');
$letter_top_color       = $params->get('letter_top_color', '');
$letter_top_bg_color    = $params->get('letter_top_bg_color', '');
$letter_top_font_size   = $params->get('letter_top_font_size', '');
$product_link_color     = $params->get('product_link_color', '');
$product_link_bg_color  = $params->get('product_link_bg_color', 'white');
$product_link_font_size = $params->get('product_link_font_size', '');
$custom_style           = $params->get('custom_style', '');
?>

<style type="text/css">

#sidenav #navigation_header {
  margin: 0px;
}

#sidenav #navigation {
margin-left: 4px;
background: white;
}

.linksDiv .top_letter {
<?php if($letter_top_color != null) echo "  color: $letter_top_color; \n"?>
<?php if($letter_top_font_size != null) echo "  font-size: ".$letter_top_font_size."; \n"?>
<?php if($letter_top_bg_color != null) echo "  background-color: $letter_top_bg_color; \n"?>
  font-weight: bold;
  padding: 3px 0pt 3px 8px;
  margin-top: 10px;
}

.eng, .rus, .ukr, .num {
  padding: 0px;
  margin-bottom: 5px;
}

.num {
  text-align: center; }

#navigation_header .letter, #navigation_header .number {
<?php if($letters_color != null) echo "  color: $letters_color; \n"?>
<?php if($letters_font_size != null) echo "  font-size: ".$letters_font_size."; \n"?>
<?php echo "  font-family: ".$letters_font_family."; \n"?>
<?php if($letters_bg_color != null) echo "  background-color: $letters_bg_color; \n"?>
  font-weight: bold;
  border: 0px;
  margin: 1px;
  padding: 0px;
  padding-left:  3px;
  padding-right: 3px;
}

#navigation_header .letter:hover, #navigation_header .number:hover {
  text-decoration: none;
  background-color: white;
  margin: 0px;
  border: 1px solid <?php if($letters_color != null) echo "$letters_color; \n"; else echo "red; \n";?>
}

#navigation_header .clean {
  text-decoration: none;
}

#navigation_header .active {
  text-decoration: none;
  margin: 0px;
  border: 1px solid <?php if($letters_color != null) echo "$letters_color; \n"; else echo "red; \n";?>
}

#navigation_header .active:hover {
  text-decoration: none;
  background-color: transparent;
}

.product_found {
  position: relative;
  padding: 3px 5px 3px 8px;
  /*
  background: white none repeat scroll 0% 0%;
  */
<?php echo "  background-color: $product_link_bg_color; \n"?>
}

.product_found a.products {
<?php if($product_link_color != null) echo "  color: $product_link_color; \n"?>
<?php if($product_link_font_size != null) echo "  font-size: ".$product_link_font_size."; \n"?>
}


/* Custom CSS-style for alpha-numeric search module */
<?php if($custom_style != null) echo "$custom_style\n"?>

</style>
<div id="sidenav">
     <div id="navigation_header">


<!-- <div id="chooseProduct" class="smcopy" style="padding: 8px; font-weight: bold; color: rgb(103, 58, 105);"> -->
<?php

$anchor_label = 'vm_alphasearch_en_ru'; // this is anchor, where we will return, if this option is on
$num_link_label = '# (0-9)';  // this is label for link of number search


if ($limit_enable != 0) $limit_enable = " LIMIT $limit_enable";
else                    $limit_enable = null;

echo "<a nohref name='$anchor_label'></a>";

// We choose the default letter and don't search anything ...
if (isset($set_def_keyword) && $set_def_keyword != '0' && $_GET['keywordabc'] == null) {
  // Initialize array of letters. Not beautiful, but work very good !
  $alpabet_ru_en_ua = array (
                           // ... rus letters
                           "01_ru" => "А", "02_ru" => "Б", "03_ru" => "В", "04_ru" => "Г", "05_ru" => "Д", "06_ru" => "Е", "07_ru" => "Ж",
                           "08_ru" => "З", "09_ru" => "И", "10_ru" => "К", "11_ru" => "Л", "12_ru" => "М", "13_ru" => "Н", "14_ru" => "О",
                           "15_ru" => "П", "16_ru" => "Р", "17_ru" => "С", "18_ru" => "Т", "19_ru" => "У", "20_ru" => "Ф", "21_ru" => "Х",
                           "22_ru" => "Ц", "23_ru" => "Ч", "24_ru" => "Ш", "25_ru" => "Щ", "26_ru" => "Ъ", "27_ru" => "Ы", "28_ru" => "Ь",
                           "29_ru" => "Э", "30_ru" => "Ю", "31_ru" => "Я",
                           // ... ua letters
                           "01_ua" => "А", "02_ua" => "Б", "03_ua" => "В", "04_ua" => "Г", "05_ua" => "Д", "06_ua" => "Е", "07_ua" => "Є",
                           "08_ua" => "Ж", "09_ua" => "З", "10_ua" => "И", "11_ua" => "І", "12_ua" => "Ї", "13_ua" => "Й", "14_ua" => "К",
                           "15_ua" => "Л", "16_ua" => "М", "17_ua" => "Н", "18_ua" => "О", "19_ua" => "П", "20_ua" => "Р", "21_ua" => "С",
                           "22_ua" => "Т", "23_ua" => "У", "24_ua" => "Ф", "25_ua" => "Х", "26_ua" => "Ц", "27_ua" => "Ч", "28_ua" => "Ш",
                           "29_ua" => "Щ", "30_ua" => "Ю", "31_ua" => "Я",
                           // ... eng letters
                           "01_en" => "A", "02_en" => "B", "03_en" => "C", "04_en" => "D", "05_en" => "E", "06_en" => "F", "07_en" => "G",
                           "08_en" => "H", "09_en" => "I", "10_en" => "J", "11_en" => "K", "12_en" => "L", "13_en" => "M", "14_en" => "N",
                           "15_en" => "O", "16_en" => "P", "17_en" => "Q", "18_en" => "R", "19_en" => "S", "20_en" => "T", "21_en" => "U",
                           "22_en" => "V", "23_en" => "W", "24_en" => "X", "25_en" => "Y", "26_en" => "Z",
                            );

  foreach ($alpabet_ru_en_ua as $letters => $values) {
    if ($letters == $set_def_keyword) { $keywordabc = $alpabet_ru_en_ua[$letters]; break; }
  }
}// ... or get keyword for search
else $keywordabc = $_GET['keywordabc'];

// destroy this array. I'll be missing you :'(   But you don't need me any more :P
unset($alpabet_ru_en_ua);


function PrintLetters_EN_RU($alphabet, $enable_anchor, $anchor_label, $keywordabc) // BEGIN function PrintLetters_EN_RU
{
  switch ($alphabet) {
    case 'eng':
      $first_letter = "A";
      $last_letter  = "Z";
      break;
    case 'rus':
      $first_letter = "&#1040";
      $last_letter  = "&#1071";
      break;
    default:
      echo "I dont know what is language your using. David Blain, get out ! O_o";
    break;
  }

  echo "<div class='$alphabet'>";
  
  switch ($enable_anchor) {
    case 1 :
      $anchor_label = "#$anchor_label";
      $css_style = "anchor";
      break;
    default:
      $anchor_label = null;
      $css_style = "clean";
      break;
  }
  
  for($i=$first_letter;$i<=$last_letter;$i++) {
    if($keywordabc == $i)  echo "<a class='letter $css_style active' nohref>" . $i . "</a> ";
    else                   echo "<a class='letter $css_style' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=" . $i . "$anchor_label'>" . $i . "</a> ";

    if($i == $last_letter) break; // print the last letter and get out of this circle
  }
  
  echo "</div>";

} // END function PrintLetters



function PrintLetters_UA($alphabet, $enable_anchor, $anchor_label, $keywordabc) // BEGIN function PrintLetters_UA
{
  $alphabet_ua = array (   "&#1040", "&#1041", "&#1042", "&#1043", "&#1044",
                           "&#1045", "&#1028", "&#1046", "&#1047", "&#1048",
                           "&#1030", "&#1031", "&#1049", "&#1050", "&#1051",
                           "&#1052", "&#1053", "&#1054", "&#1055", "&#1056",
                           "&#1057", "&#1058", "&#1059", "&#1060", "&#1061",
                           "&#1062", "&#1063", "&#1064", "&#1065", "&#1066",
                           "&#1070", "&#1071" );

  echo "<div class='$alphabet'>";
  switch ($enable_anchor) {
    case 1 :
      for($i=0;$i<count($alphabet_ua);$i++) {
       if($keywordabc == $alphabet_ua[$i])  { echo "<a class='letter anchor active' nohref>" . $alphabet_ua[$i] . "</a> "; }
        else                   { echo "<a class='letter anchor' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=" . $alphabet_ua[$i] . "#$anchor_label'>" . $alphabet_ua[$i] . "</a> "; }
      }
      break;
    default:
      for($i=0;$i<count($alphabet_ua);$i++) {
       if($keywordabc == $alphabet_ua[$i])  { echo "<a class='letter clean active' nohref>" . $alphabet_ua[$i] . "</a> "; }
        else                   { echo "<a class='letter clean' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=" . $alphabet_ua[$i] . "'>" . $alphabet_ua[$i] . "</a> "; }
      }
      break;
  }
  echo "</div>";

} // END function PrintLetters_UA



function PrintNumbers($enable_anchor, $anchor_label, $num_link_label, $keywordabc)
{
  echo "<div class='num'>";
  switch ($enable_anchor) {
    case 1 :
     if($keywordabc == "1")  { echo "<a class='number anchor active' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=1#$anchor_label'>$num_link_label</a>"; }
      else                    { echo "<a class='number anchor' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=1#$anchor_label'>$num_link_label</a>"; }
      break;
    default:
   if($keywordabc == "1")  { echo "<a class='number clean active' nohref>$num_link_label</a>"; }
      else                  { echo "<a class='number clean' href='index.php?category_id=" . $_GET["category_id"] . "&keywordabc=1'>$num_link_label</a>"; }
      break;
  }
  echo "</div>";
}

// Change the order of lines, if you want print a numbers at first ...
  if ($show_rus_letters == 1) PrintLetters_EN_RU("rus", $enable_anchor, $anchor_label, $keywordabc);
  if ($show_ukr_letters == 1) PrintLetters_UA("ukr", $enable_anchor, $anchor_label, $keywordabc);
  if ($show_eng_letters == 1) PrintLetters_EN_RU("eng", $enable_anchor, $anchor_label, $keywordabc);
  if ($show_numbers     == 1) PrintNumbers($enable_anchor, $anchor_label, $num_link_label, $keywordabc);


  $db =& JFactory::getDBO();
  if ($keywordabc != "") {
    if($keywordabc != "1") { // search a product, started on a LETTER
     if($_GET["category_id"] != "") { // we are in catalog of VM, in category now
     $query = "SELECT a.*  "
     . " FROM #__vm_product a, #__vm_product_category_xref c"
     . " WHERE a.product_id=c.product_id"
          . " AND   c.category_id='" . $_GET["category_id"] . "'"
          . " AND   a.product_name LIKE '" . $keywordabc . "%'  "
          . $limit_enable;
     } else {
     $query = "SELECT *  "
     . " FROM #__vm_product "
     . " WHERE  product_name LIKE '" . $keywordabc . "%'  "
     . $limit_enable;
   }
    }
    else {  // search a product, started on a NUMBER
     if($_GET["category_id"] != "") { // we are in catalog of VM, in category now
     $query = "SELECT a.*  "
     . " FROM #__vm_product a, #__vm_product_category_xref c"
     . " WHERE a.product_id=c.product_id"
        . " AND   c.category_id='" . $_GET["category_id"] . "'"
     . " AND   a.product_name REGEXP '[[:digit:]]'"
        . " AND ( a.product_name LIKE '6%'"
        . " OR a.product_name LIKE '7%'"
        . " OR a.product_name LIKE '8%'"
        . " OR a.product_name LIKE '9%'"
        . " OR a.product_name LIKE '0%'"
        . " OR a.product_name LIKE '1%'"
        . " OR a.product_name LIKE '2%'"
        . " OR a.product_name LIKE '3%'"
        . " OR a.product_name LIKE '4%'"
        . " OR a.product_name LIKE '5%' )"
        . $limit_enable;
     } else {
     $query = "SELECT a.*  "
     . " FROM #__vm_product a "
     . " WHERE  a.product_name REGEXP '[[:digit:]]'"
        . " AND ( a.product_name LIKE '6%'"
        . " OR a.product_name LIKE '7%'"
        . " OR a.product_name LIKE '8%'"
        . " OR a.product_name LIKE '9%'"
        . " OR a.product_name LIKE '0%'"
        . " OR a.product_name LIKE '1%'"
        . " OR a.product_name LIKE '2%'"
        . " OR a.product_name LIKE '3%'"
        . " OR a.product_name LIKE '4%'"
        . " OR a.product_name LIKE '5%' )"
        . $limit_enable;
     }

    }
  }
  else $hide_this=' style="display: none;"';

  $db->setQuery( $query );
  $product = $db->loadObjectList();

?>

 </div>
</div>
      <div id="navigation">
        <div id="A" class="linksDiv"<?php echo $hide_this; ?>>
           <div class="top_letter"><?php if ($keywordabc != "1") echo $keywordabc; else echo $num_link_label;?></div>
           <?php if ($product) foreach ($product as $row){?>
            <div class="product_found"><a class="products" href="index.php?page=shop.product_details&product_id=<?php echo $row->product_id?>&option=com_virtuemart&Itemid=71&keywordabc=<?php echo $keywordabc?>" target="_top"><?php echo $row->product_name?> </a></div>
           <?php }?>
      </div>
    </div>
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
попробуйте
Код
$query = "SELECT a.*  "
    . " FROM #__vm_product a, #__vm_product_category_xref c"
    . " WHERE a.product_id=c.product_id"
          . " AND   c.category_id='" . $_GET["category_id"] . "'"
          . " AND   a.product_name LIKE '" . $keywordabc . "%'  "
          . " AND   a.product_parent_id='0' "
          . $limit_enable;
только там 4 запроса.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Сделал вот так:
Спойлер
[свернуть]
Но модуль перестал работать  :(
« Последнее редактирование: 15.12.2012, 20:25:02 от fsv »
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
Во втором запросе у таблицы нет псевдонима, а вы написали. Т.е. для второго запроса
 . " AND   a.product_parent_id='0' "
замените на
 . " AND   product_parent_id='0' "

Зачем в 4-м запросе псевдоним, я не понял. Но раз есть, легче в одной строке дописать его, чем все править. Так что тут не трогайте.
Попробуйте сейчас.

У меня нет полигона с дочерними, и с модулем этим не работал. Поэтому просто в phpMyAdmin протестировал первый запрос, заменив переменные константами. Работает.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Спасибо, работает!  ^-^ +1
Есть у меня ещё одна проблема с этим модулем, можете помочь за вознаграждение (200WMR)?
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
Лучше создайте тему со своей проблемой.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Так проблема с этим же модулем, а название данной темы позволит собирать в ней все о данном модуле или создать новую?
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
Так проблема с этим же модулем, а название данной темы позволит собирать в ней все о данном модуле или создать новую?
Ваша тема. На ваше усмотрение.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Ваша тема. На ваше усмотрение.
Ок, тогда опишу проблему здесь, надеюсь ещё кому-нибудь поможет.

Проблема в следующем:
При использовании модуля с  главной страницы (выбираем любую букву, затем товар), все хорошо, но стоит выбрать какой либо товара, любой раздел сайта или раздел интернет-магазина, то модуль перестает работать (букву позволяет нажать, но перечень товаров пустой). Вот такая беда.
Если интересно, магазин в подписи, модуль "Алфавитный указатель".
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
Проблема в следующем:
При использовании модуля с  главной страницы (выбираем любую букву, затем товар), все хорошо, но стоит выбрать какой либо товара, любой раздел сайта или раздел интернет-магазина, то модуль перестает работать (букву позволяет нажать, но перечень товаров пустой).

Посмотрел. Все работает так, как в коде прописано.
Когда на главной или на др.странице сайта, условие $_GET["category_id"] != "" не выполняется, идет выборка по всем товарам магазина, и вы их видите. Когда на странице товара, $_GET["category_id"] != "" и идет выборка товара только из этой категории. Если вы в товаре категории "Lacost" и нажмете "L", то увидите товары, если ЛЮБУЮ другую букву (а вероятность этого более 96%), то ничего и не увидите. Также ничего не увидите, если находитесь в категории, в которой нет товара, а есть только подкатегории.
Если необходима другая схема вывода, надо переписывать запросы (как минимум, весь код просто не смотрел).
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Посмотрел. Все работает так, как в коде прописано.
Когда на главной или на др.странице сайта, условие $_GET["category_id"] != "" не выполняется, идет выборка по всем товарам магазина, и вы их видите. Когда на странице товара, $_GET["category_id"] != "" и идет выборка товара только из этой категории. Если вы в товаре категории "Lacost" и нажмете "L", то увидите товары, если ЛЮБУЮ другую букву (а вероятность этого более 96%), то ничего и не увидите. Также ничего не увидите, если находитесь в категории, в которой нет товара, а есть только подкатегории.
Если необходима другая схема вывода, надо переписывать запросы (как минимум, весь код просто не смотрел).
Хотелось бы, чтобы когда нажимаешь ну букву, выводились все товары (на любой странице или разделе сайта), когда выбрал конкретный товар, то выводились бы все товары из этой категории, но когда снова наживаешь на букву, снова выводятся все товары.
Подскажите, пожалуйста, такие запросы возможны? Ведь как понимаю, обычно так работает алфавитный указатель?
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
когда выбрал конкретный товар, то выводились бы все товары из этой категории
этого не понял.

А если всегда все товары, то вместо
Код
if($keywordabc != "1") { // search a product, started on a LETTER
    if($_GET["category_id"] != "") { // we are in catalog of VM, in category now
    $query = "SELECT a.*  "
    . " FROM #__vm_product a, #__vm_product_category_xref c"
    . " WHERE a.product_id=c.product_id"
          . " AND   c.category_id='" . $_GET["category_id"] . "'"
          . " AND   a.product_name LIKE '" . $keywordabc . "%'  "
          . $limit_enable;
    } else {
    $query = "SELECT *  "
    . " FROM #__vm_product "
    . " WHERE  product_name LIKE '" . $keywordabc . "%'  "
    . $limit_enable;
  }
    }
попробуйте
Код
if($keywordabc != "1") { // search a product, started on a LETTER
    $query = "SELECT *  "
    . " FROM #__vm_product "
    . " WHERE  product_name LIKE '" . $keywordabc . "%'  "
                      . " AND   product_parent_id='0' "
    . $limit_enable;
    }
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
этого не понял.
Немного запутанно написал, имел ввиду, когда например выбираем букву "A", затем товар на эту букву "Armand Basi in blue мужской", то в модуле выводятся только товары из категории: мужская парфюмерия -> Armand Basi, нажимаем снова на любую букву и снова выводятся все товары на заданную букву (весь мужской и женский парфюм на выбранную букву).
Т.е. когда выбираем букву выводятся все товары, когда выбираем товар, в модуле выводятся только товары из категории выбранного товара.
Или это сложно сделать?

А если всегда все товары, то вместо
Код
if($keywordabc != "1") { // search a product, started on a LETTER
     if($_GET["category_id"] != "") { // we are in catalog of VM, in category now
     $query = "SELECT a.*  "
     . " FROM #__vm_product a, #__vm_product_category_xref c"
     . " WHERE a.product_id=c.product_id"
          . " AND   c.category_id='" . $_GET["category_id"] . "'"
          . " AND   a.product_name LIKE '" . $keywordabc . "%'  "
          . $limit_enable;
     } else {
     $query = "SELECT *  "
     . " FROM #__vm_product "
     . " WHERE  product_name LIKE '" . $keywordabc . "%'  "
     . $limit_enable;
   }
    }
попробуйте
Код
if($keywordabc != "1") { // search a product, started on a LETTER
     $query = "SELECT *  "
     . " FROM #__vm_product "
     . " WHERE  product_name LIKE '" . $keywordabc . "%'  "
                      . " AND   product_parent_id='0' "
     . $limit_enable;
    }


Изменил, просто белый экран.
« Последнее редактирование: 17.12.2012, 00:23:38 от faraon_x »
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2781
  • 411 / 2
1. Белый экран.
а) какую ошибку выводит при этом?
б) попробуйте еще раз, аккуратно. Как вариант, "}" где-то лишнюю оставили/удалили.
в) если б) не получилось, дайте код файла с вашим измнением

2. "Хотелки".
Сейчас вы хотите разные варианты вывода при существующем одном заданном в запросе условии. Надо менять логику.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
1. Белый экран.
а) какую ошибку выводит при этом?
б) попробуйте еще раз, аккуратно. Как вариант, "}" где-то лишнюю оставили/удалили.
в) если б) не получилось, дайте код файла с вашим измнением

2. "Хотелки".
Сейчас вы хотите разные варианты вывода при существующем одном заданном в запросе условии. Надо менять логику.



Извините, все работает по первому варианту. Вы были правы, лишнюю скобку удалял.  ^-^

А по поводу "менять логику" - это не только надо менять сам запрос?
Мне просто кажется удобным, чтобы когда пользователь смотрит товар, то видел весь список товаров только из данной категории.
Если будет время помочь, вот окончательный вариант файла с вашей правкой.
Спойлер
[свернуть]
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль авторизации пользователей убрать лишнее

Автор pautina

Ответов: 22
Просмотров: 11998
Последний ответ 20.01.2018, 06:08:46
от ElenaD
Модуль «VirtueMart Товары» вывод товаров по рейтингу

Автор myrka

Ответов: 0
Просмотров: 1500
Последний ответ 10.01.2017, 17:09:22
от myrka
Доработка стандартного поиска Joomla под VirtueMart

Автор mike_jag

Ответов: 38
Просмотров: 22919
Последний ответ 04.06.2016, 23:55:19
от SolopoV
Модуль или плагин для VirtueMart

Автор Stasweb

Ответов: 0
Просмотров: 1196
Последний ответ 18.02.2015, 06:43:52
от Stasweb
Меню для VirtueMart, модуль "Accordion Menu - Offlajn.com" правка

Автор silversunrise

Ответов: 3
Просмотров: 5492
Последний ответ 07.02.2015, 09:13:29
от Stasweb