COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Поиск Опенкарт


kod

Recommended Posts

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


Может, еще кто-то может подсказать скриптик и куда вставить для скрытия текста в категориях. Что бы отображалось только небольшая часть текста (описание) с возможностью раскрыть его полностью.
Заранее спасибо кто откликнется.

Скрытый текст

forum.jpg

Изменено пользователем RHCk
Картинки, логи и код убирайте под спойлер.
Ссылка на комментарий
Поделиться на других сайтах

16 минут назад, WarStyle сказал:

 

Где взяли? Как называется модуль?

Сайт делали в начале 2015 года, в модулях отдельно поиска нет. Подозреваю что родной, но возможно дорабатывали.

Ссылка на комментарий
Поделиться на других сайтах

3 минуты назад, kod сказал:

Сайт делали в начале 2015 года, в модулях отдельно поиска нет. Подозреваю что родной, но возможно дорабатывали.

 

Тогда или к разработчикам или в раздел платных услуг.

Ссылка на комментарий
Поделиться на других сайтах

2 минуты назад, WarStyle сказал:

 

Тогда или к разработчикам или в раздел платных услуг.

Спасибо. Как я понимаю стоит скрипт который выдает туда цену которые вбиты в данных, а нужно с поля в котором отображается сама цена. Я не программист, может сам поколупаюсь.

Ссылка на комментарий
Поделиться на других сайтах

52 минуты назад, kod сказал:

Спасибо. Как я понимаю стоит скрипт который выдает туда цену которые вбиты в данных, а нужно с поля в котором отображается сама цена. Я не программист, может сам поколупаюсь.

У вас в product.tpl, product.php живой пример вывода.

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, BuslikDrev сказал:

Странный у вас модуль, когда в БД одна должна быть таблица цены.

Я думал что вопрос не сложный для знающих. Оказалось для меня более запутаннее. Сейчас у меня есть вопросы более важные, но чуть позже займусь вплотную. Поищу, возможно уже кто-то решал подобную задачу. 

 

1 час назад, BuslikDrev сказал:

У вас в product.tpl, product.php живой пример вывода.

Извините, я не совсем понимаю что такой живой пример вывода.
Нашел файл серч.тпл и вот вроде код который отвечает 

Скрытый текст

<div class="actions col-sm-3">
  				<div>
  					<div class="price">
  						<?php if (!$product['special']) { ?>
  						<?php echo $product['price']; ?>
  						<?php } else { ?>
  						<span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span>
  						<?php } ?>
  					</div>
  					
  					<div class="add-to-cart"><a onclick="cart.add('<?php echo $product['product_id']; ?>');" class="button"><?php echo $button_cart; ?></a></div>
  					
  					<ul>
  						<li>+ <a onclick="compare.add('<?php echo $product['product_id']; ?>');"><?php if($theme_options->get( 'add_to_compare_text', $config->get( 'config_language_id' ) ) != '') { echo $theme_options->get( 'add_to_compare_text', $config->get( 'config_language_id' ) ); } else { echo 'Add to compare'; } ?></a></li>
  						<li>+ <a onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><?php if($theme_options->get( 'add_to_wishlist_text', $config->get( 'config_language_id' ) ) != '') { echo $theme_options->get( 'add_to_wishlist_text', $config->get( 'config_language_id' ) ); } else { echo 'Add to wishlist'; } ?></a></li>
  					</ul>
  				</div>
  			</div>
  		</div>

 

 

Ссылка на комментарий
Поделиться на других сайтах

22 минуты назад, BuslikDrev сказал:

попробуйте так. если нет, открывайте котроллер и модел .php

  Показать содержимое


              <?php if ($product['price']) { ?>
<div class="price">
  						<?php if (!$product['special']) { ?>
  						<?php echo $product['price']; ?>
  						<?php } else { ?>
  						<span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span>
  						<?php } ?>
  					</div>

              <?php } ?>

 

Этот код не помог.
Вот что в контролере:
 

Скрытый текст

<?php 
class ControllerSearchAutocomplete extends Controller {
	public function index() {
		$json = array();
		
		if (isset($this->request->get['filter_name'])) {
			$this->load->model('catalog/product');
			$this->load->model('tool/image');
			
			if (isset($this->request->get['filter_name'])) {
				$filter_name = $this->request->get['filter_name'];
			} else {
				$filter_name = '';
			}		
						
			$data = array(
				'filter_name'  => $filter_name,
				'start'        => 0,
				'limit'        => 5
			);
			
			$results = $this->model_catalog_product->getProducts($data);
			
			foreach ($results as $result) {
				if ($result['image']) {
					$image = $this->model_tool_image->resize($result['image'],100, 100);
				} else {
					$image = false;
				}
				
				if ($this->config->get('config_review_status')) {
					$rating = $result['rating'];
				} else {
					$rating = false;
				}
				
				if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
					$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$price = false;
				}
						
				if ((float)$result['special']) {
					$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$special = false;
				}
					
				$json[] = array(
					'product_id' => $result['product_id'],
					'thumb'   	 => $image,
					'name'       => strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8')),	
					'desc' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 45) . '..',
					'price'   	 => $price,
					'href'    	 => html_entity_decode($this->url->link('product/product', 'product_id=' . $result['product_id']), ENT_QUOTES, 'UTF-8'),
				);	
			}
		}

		$this->response->setOutput(json_encode($json));
	}
}
?>

 

Подозреваю что тут сабака покапалась.

Ссылка на комментарий
Поделиться на других сайтах

12 минуты назад, kod сказал:

Этот код не помог.
Вот что в контролере:
 

  Показать содержимое


<?php 
class ControllerSearchAutocomplete extends Controller {
	public function index() {
		$json = array();
		
		if (isset($this->request->get['filter_name'])) {
			$this->load->model('catalog/product');
			$this->load->model('tool/image');
			
			if (isset($this->request->get['filter_name'])) {
				$filter_name = $this->request->get['filter_name'];
			} else {
				$filter_name = '';
			}		
						
			$data = array(
				'filter_name'  => $filter_name,
				'start'        => 0,
				'limit'        => 5
			);
			
			$results = $this->model_catalog_product->getProducts($data);
			
			foreach ($results as $result) {
				if ($result['image']) {
					$image = $this->model_tool_image->resize($result['image'],100, 100);
				} else {
					$image = false;
				}
				
				if ($this->config->get('config_review_status')) {
					$rating = $result['rating'];
				} else {
					$rating = false;
				}
				
				if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
					$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$price = false;
				}
						
				if ((float)$result['special']) {
					$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$special = false;
				}
					
				$json[] = array(
					'product_id' => $result['product_id'],
					'thumb'   	 => $image,
					'name'       => strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8')),	
					'desc' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 45) . '..',
					'price'   	 => $price,
					'href'    	 => html_entity_decode($this->url->link('product/product', 'product_id=' . $result['product_id']), ENT_QUOTES, 'UTF-8'),
				);	
			}
		}

		$this->response->setOutput(json_encode($json));
	}
}
?>

 

Подозреваю что тут сабака покапалась.

заменил внизу на вот это 'price'        => $special, и стало показывать как я хочу, но перестало показывать цену без скидки. вместо цены показывает false. Что-то нужно добавить. что бы при условии $special=false выдавало $price. Как-то так. а как это записать не знаю.

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, BuslikDrev сказал:

попробуйте так. если нет, открывайте котроллер и модел .php

  Показать содержимое


              <?php if ($product['price']) { ?>
<div class="price">
  						<?php if (!$product['special']) { ?>
  						<?php echo $product['price']; ?>
  						<?php } else { ?>
  						<span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span>
  						<?php } ?>
  					</div>

              <?php } ?>

 

Огромное спасибо за подсказку. в контролере, в выдаче результатов изменил $price на $special, а перед этим если условия 'special' не выполняются, то к переменной $special присвоил $price
для меня это очень круто, спасибо за то что направили, настроение зашкаливает.

Может еще подскажите где капнуть что бы текст в категориях был свернут, а при необходимости пользователь мог его развернуть.

Ссылка на комментарий
Поделиться на других сайтах

  • RHCk changed the title to Поиск Опенкарт
19 часов назад, BuslikDrev сказал:

 

  Скрыть содержимое

 

Спасибо. Я только до компа добрался. Позже почитаю про него. Он ни чего не поломает?

Ссылка на комментарий
Поделиться на других сайтах

2 минуты назад, kod сказал:

Спасибо. Я только до компа добрался. Позже почитаю про него. Он ни чего не поломает?

Нет. Я на основе этого модуля категории в каталоге сворачиваю.

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу