Код я модуле атрибутов на производителей.... Вроде бы там я его видел...

*

Qznec

У меня производитель при записи хранится в $_POST['attributes'][21] 
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

Получается надо ее брать так:

$data = array('manufacturers_id' => (isset($_POST['attributes'][21]) ? $_POST['attributes'][21] : 0)

А подставлять куда это значение? В save.php и с этого файла сбрасывать в products.php? Че то не врубаюсь.. Распиши ка подробнее....

*

Qznec

Ну да, как и все остальные данные...
Подробнее щас не могу...
Постараюсь завтра, если не разберешься 
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

Я попробую сегодня....

*

Qznec

Щас посмотрел... бред какой-то...
зачем в таблице products поле manufacturers_id не понятно, если производитель присваивается товару в таблице product_attributes

Производитель видимо в двух местах присваивается, так как он то все равно виден приписанным к товару, но не в боксе - а под товаром.. Я уже думал откуда он там может быть...

*

Qznec

Из-за этого, похоже и нестыковка... видимо, программисты между собой не договорились
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

А где именно этот баг проявляется?
Может просто запросы изменить и тогда поле manufacturers_id вообще не нужно будет.

Проверил - не катит...

Все - починил))) Тут еще более хитрая система... Оказывается демо-товары прописаны в manufacturers_id, а все вносимые новые товары пишут своего производителя в атрибутах ))) Но чтобы появился этот бокс, надо чтобы значение manufacturers_id тоже было заполнено идентично атрибуту в поле value. Вообщем я просто взял это же значение из product_attributes из ячейки value. Так что не зря возился) Сразу 2 проблемы устранили... Одну с сортировкой по производителю и эту с боксом... В следующем сервиспаке будут эти исправления уже. Спасибо за наводку про атрибуты Qznec!

Вот весь код. Вставляем это начиная со строки 246 в файле /admin/includes/applications/products/classes/products.php вместо старого кода (файл save.php не трогаем):

        if ( is_numeric($id) ) {
$Qproduct = $osC_Database->query('update :table_products set products_quantity = :products_quantity, products_price = :products_price, products_model = :products_model, products_weight = :products_weight, products_weight_class = :products_weight_class, products_status = :products_status, products_tax_class_id = :products_tax_class_id, manufacturers_id = :manufacturers_id, products_last_modified = now() where products_id = :products_id');
        $Qproduct->bindInt(':products_id', $id);
      } else {
        $Qproduct = $osC_Database->query('insert into :table_products (products_quantity, products_price, products_model, products_weight, products_weight_class, products_status, products_tax_class_id, manufacturers_id, products_date_added) values (:products_quantity, :products_price, :products_model, :products_weight, :products_weight_class, :products_status, :products_tax_class_id, :manufacturers_id, :products_date_added)');
        $Qproduct->bindRaw(':products_date_added', 'now()');
      }
   if ( isset($data['attributes']) && !empty($data['attributes']) ) {
    foreach ( $data['attributes'] as $attributes_id => $value ) {
       if ( is_array($value) ) {
       } elseif ( !empty($value) ) {

      $Qproduct->bindTable(':table_products', TABLE_PRODUCTS);
      $Qproduct->bindInt(':products_quantity', $data['quantity']);
      $Qproduct->bindFloat(':products_price', $data['price']);
      $Qproduct->bindValue(':products_model', $data['model']);
      $Qproduct->bindFloat(':products_weight', $data['weight']);
      $Qproduct->bindInt(':products_weight_class', $data['weight_class']);
      $Qproduct->bindInt(':products_status', $data['status']);
      $Qproduct->bindInt(':products_tax_class_id', $data['tax_class_id']);
      $Qproduct->bindInt(':manufacturers_id', $value);   
//      $Qproduct->setLogging($_SESSION['module'], $id);
      $Qproduct->execute();
  }
}
}

Все - починил))) Тут еще более хитрая система... Оказывается демо-товары прописаны в manufacturers_id, а все вносимые новые товары пишут своего производителя в атрибутах ))) Но чтобы появился этот бокс, надо чтобы значение manufacturers_id тоже было заполнено идентично атрибуту в поле value. Вообщем я просто взял это же значение из product_attributes из ячейки value. Так что не зря возился) Сразу 2 проблемы устранили... Одну с сортировкой по производителю и эту с боксом... В следующем сервиспаке будут эти исправления уже. Спасибо за наводку про атрибуты Qznec!
Я тоже удивился, пока налаживал импорт, зачем производитель в двух местах заносится, и навсякий случай положил аналогично, так что баг просто не проявился получается... А вот с keyword все равно не догоняю: сейчас как раз цифровые значения там и вроде все работает... Не совсем понял про идентификатор продукта, разве products_id недостаточно, зачем keyword тогда использовать? Честно говоря, хотел использовать это поле для связки с внешней системой, не поломается ли при этом чего в самом скрипте? Насчет tag  спс! Только возможны ли в нем русские буквы? Заранее спасибо!
ЗЫ: Только сейчас прочитал про "приписку в строке браузера" и все равно непонятно, зачем второй идентификатор. Ведь категории то обходятся своими айдишниками... Или это тоже для поисковиков и туда транслит наименования товара вбивать?

Кейворд - это приписка к строке браузера.... А цифры уберите, так как заглючит - щас не помню точно, но с чем то там проблемы начинаются, так как цифровые приписки идут там для чего то другого, и магазин начинает путать... Посмотрите внимательнее...  Введите номер 1 для какого-нибудь товара и увидите... Тэги могут быть на русском... Да и должны быть по логике вещей)

Понял, спасибо!

*

Qznec

Все - починил)))
Так работать не будет )))
Попробуй добавить "Дата поступления товара" ))

*

Qznec

Как появится минутка, постараюсь накидать другой код...