Перейти к содержимому


Фото
- - - - -

Не отображаются связанные товары, если у них нет цены


  • Чтобы отвечать, сперва войдите на форум
2 ответов в теме

#1 Stasique

Stasique
  • Пользователь
  • 8 сообщений

Опубликовано 18.06.2019 - 15:13

Добрый день. Не выводятся связанные товары, если у них не стоит цена. Как выводить все связанные товары независимо от наличия цены?

Правил файл ProductViev.php

// Связанные товары
$related_ids = array();
$related_products = array();
foreach ( $this->products->get_related_products( $product->id ) as $p ) {
	$related_ids[] = $p->related_id;
	$related_products[ $p->related_id ] = null;
}
if ( !empty( $related_ids ) ) {
	foreach ( $this->products->get_products( array( 'id' => $related_ids, 'in_stock' => 1, 'visible' => 1 ) ) as $p )
		$related_products[ $p->id ] = $p;

	$related_products_images = $this->products->get_images( array( 'product_id' => array_keys( $related_products ) ) );
	foreach ( $related_products_images as $related_product_image )
		if ( isset( $related_products[ $related_product_image->product_id ] ) )
			$related_products[ $related_product_image->product_id ]->images[] = $related_product_image;
	$related_products_variants = $this->variants->get_variants( array( 'product_id' => array_keys( $related_products ), 'in_stock' => 1 ) );
	foreach ( $related_products_variants as $related_product_variant ) {
		if ( isset( $related_products[ $related_product_variant->product_id ] ) ) {
			$related_products[ $related_product_variant->product_id ]->variants[] = $related_product_variant;
		}
	}
	foreach ( $related_products as $id => $r ) {
		if ( is_object( $r ) ) {
			$r->image = & $r->images[ 0 ];
			$r->variant = & $r->variants[ 0 ];
		} else {
			unset( $related_products[ $id ] );
		}
	}
	$this->design->assign( 'related_products', $related_products );
}

Если менять 'in_stock' => 1 на 'in_stock' => 0, то выводятся наоборот связанные товары без цен, а с ценами не выводятся. 



#2 Kosjak76

Kosjak76
  • Модератор
  • 3 838 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 18.06.2019 - 15:22

Вообще уберите 'in_stock' => 1,



#3 Stasique

Stasique
  • Пользователь
  • 8 сообщений

Опубликовано 19.06.2019 - 09:32

Спасибо. Работает






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых