Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Кнопка "все товары в этой категории"


Recommended Posts

Добрый вечер! На сайте имеется кнопка перехода из страницы продукта в категорию где этот продукт находится. Кнопка работает исправно,если клиент переходит на странице продукта внутри сайта, НО если клиент заходит на странице продукта из поисковика,то функционал перестает работать (а ведь теряется смысл этого функционала, чтобы человек переходя из поисковика мог легко перейти в категорию ему нужной марки автомобиля"

 

код функционала:

<div class="tovar_v_category"
                                     style="border-width:1px;border-color: #ccc;border-style: solid;">
                                    <?php if (!empty($cats)) { ?>
                                        <a href="<?php $end = end($cats);
                                        echo $end['cat']; ?>">Все товары этой категории</a>
                                    <?php } ?>

    </div>

 

Опенкарт 1.5.6.4

 

 

Что не так??

Screenshot_1.png

Screenshot_2.png

Link to post
Share on other sites

Доктор, у меня температура. Вот фотография градусника. Что не так?

Link to post
Share on other sites

какая информация еще нужна помимо:

"

<div class="tovar_v_category"
                                     style="border-width:1px;border-color: #ccc;border-style: solid;">
                                    <?php if (!empty($cats)) { ?>
                                        <a href="<?php $end = end($cats);
                                        echo $end['cat']; ?>">Все товары этой категории</a>
                                    <?php } ?>

    </div>" ???

я не селен в программирование

Link to post
Share on other sites

<?php 

class ControllerProductProduct extends Controller {
    private $error = array(); 
    
    public function index() {

        $this->language->load('product/product');
    
        $this->data['breadcrumbs'] = array();

        $this->data['breadcrumbs'][] = array(
            'text'      => $this->language->get('text_home'),
            'href'      => $this->url->link('common/home'),            
            'separator' => false
        );
        
        $this->load->model('catalog/category');    
        
        if (isset($this->request->get['path'])) {
            $path = '';
                
            foreach (explode('_', $this->request->get['path']) as $path_id) {
                if (!$path) {
                    $path = $path_id;
                } else {
                    $path .= '_' . $path_id;
                }
                
                $category_info = $this->model_catalog_category->getCategory($path_id);
                
                if ($category_info) {
                    $this->data['breadcrumbs'][] = array(
                        'text'      => $category_info['name'],
                        'href'      => $this->url->link('product/category', 'path=' . $path),
                        'separator' => $this->language->get('text_separator')
                    );
                    
                        /*выыод все товары категории*/
    
    $this->data['cats'][] = array(
  'cat'      => $this->url->link('product/category', 'path=' . $path),

 );
            /*конец выыод все товары категории*/
                
                }
            }
        }
        
        $this->load->model('catalog/manufacturer');    
        
        if (isset($this->request->get['manufacturer_id'])) {
            $this->data['breadcrumbs'][] = array( 
                'text'      => $this->language->get('text_brand'),
                'href'      => $this->url->link('product/manufacturer'),
                'separator' => $this->language->get('text_separator')
            );    
                
            $manufacturer_info = $this->model_catalog_manufacturer->getManufacturer($this->request->get['manufacturer_id']);

            if ($manufacturer_info) {    
                $this->data['breadcrumbs'][] = array(
                    'text'        => $manufacturer_info['name'],
                    'href'        => $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id']),                    
                    'separator' => $this->language->get('text_separator')
                );
            }
        }
        
        if (isset($this->request->get['filter_name']) || isset($this->request->get['filter_tag'])) {
            $url = '';
            
            if (isset($this->request->get['filter_name'])) {
                $url .= '&filter_name=' . $this->request->get['filter_name'];
            }
                        
            if (isset($this->request->get['filter_tag'])) {
                $url .= '&filter_tag=' . $this->request->get['filter_tag'];
            }
                        
            if (isset($this->request->get['filter_description'])) {
                $url .= '&filter_description=' . $this->request->get['filter_description'];
            }
            
            if (isset($this->request->get['filter_category_id'])) {
                $url .= '&filter_category_id=' . $this->request->get['filter_category_id'];
            }    
                        
            $this->data['breadcrumbs'][] = array(
                'text'      => $this->language->get('text_search'),
                'href'      => $this->url->link('product/search', $url),
                'separator' => $this->language->get('text_separator')
            );     
        }
        
        if (isset($this->request->get['product_id'])) {
            $product_id = (int)$this->request->get['product_id'];
        } else {
            $product_id = 0;
        }
        

        $this->load->model('catalog/product');
        
        $product_info = $this->model_catalog_product->getProduct($product_id);
        
        if ($product_info) {
            $url = '';
            
            if (isset($this->request->get['path'])) {
                $url .= '&path=' . $this->request->get['path'];
            }
            
            if (isset($this->request->get['manufacturer_id'])) {
                $url .= '&manufacturer_id=' . $this->request->get['manufacturer_id'];
            }            

            if (isset($this->request->get['filter_name'])) {
                $url .= '&filter_name=' . $this->request->get['filter_name'];
            }
                        
            if (isset($this->request->get['filter_tag'])) {
                $url .= '&filter_tag=' . $this->request->get['filter_tag'];
            }
            
            if (isset($this->request->get['filter_description'])) {
                $url .= '&filter_description=' . $this->request->get['filter_description'];
            }    
                        
            if (isset($this->request->get['filter_category_id'])) {
                $url .= '&filter_category_id=' . $this->request->get['filter_category_id'];
            }
                                                
            $this->data['breadcrumbs'][] = array(
                'text'      => $product_info['name'],
                'href'      => $this->url->link('product/product', $url . '&product_id=' . $this->request->get['product_id']),
                'separator' => $this->language->get('text_separator')
            );            
            
            $this->document->setTitle($product_info['name']);
            $this->document->setDescription($product_info['meta_description']);
            $this->document->setKeywords($product_info['meta_keyword']);
            $this->document->addLink($this->url->link('product/product', 'product_id=' . $this->request->get['product_id']), 'canonical');
            
            $this->data['heading_title'] = $product_info['name'];
            
            $this->data['text_select'] = $this->language->get('text_select');
            $this->data['text_manufacturer'] = $this->language->get('text_manufacturer');
            $this->data['text_model'] = $this->language->get('text_model');
/*-----*/    $this->data['text_sku'] = $this->language->get('text_sku');
/*-----*/    $this->data['text_upc'] = $this->language->get('text_upc');
/*-----*/    $this->data['text_ean'] = $this->language->get('text_ean');
/*-----*/    $this->data['text_jan'] = $this->language->get('text_jan');

            $this->data['text_reward'] = $this->language->get('text_reward');
            $this->data['text_points'] = $this->language->get('text_points');    
            $this->data['text_discount'] = $this->language->get('text_discount');
            $this->data['text_stock'] = $this->language->get('text_stock');
            $this->data['text_price'] = $this->language->get('text_price');
            $this->data['text_tax'] = $this->language->get('text_tax');
            $this->data['text_discount'] = $this->language->get('text_discount');
            $this->data['text_option'] = $this->language->get('text_option');
            $this->data['text_qty'] = $this->language->get('text_qty');
            $this->data['text_minimum'] = sprintf($this->language->get('text_minimum'), $product_info['minimum']);
            $this->data['text_or'] = $this->language->get('text_or');
            $this->data['text_write'] = $this->language->get('text_write');
            $this->data['text_note'] = $this->language->get('text_note');
            $this->data['text_share'] = $this->language->get('text_share');
            $this->data['text_wait'] = $this->language->get('text_wait');
            $this->data['text_tags'] = $this->language->get('text_tags');
            
            $this->data['entry_name'] = $this->language->get('entry_name');
            $this->data['entry_review'] = $this->language->get('entry_review');
            $this->data['entry_rating'] = $this->language->get('entry_rating');
            $this->data['entry_good'] = $this->language->get('entry_good');
            $this->data['entry_bad'] = $this->language->get('entry_bad');
            $this->data['entry_captcha'] = $this->language->get('entry_captcha');
            
            $this->data['button_cart'] = $this->language->get('button_cart');
            $this->data['button_wishlist'] = $this->language->get('button_wishlist');
            $this->data['button_compare'] = $this->language->get('button_compare');            
            $this->data['button_upload'] = $this->language->get('button_upload');
            $this->data['button_continue'] = $this->language->get('button_continue');
            
            $this->load->model('catalog/review');

            $this->data['tab_description'] = $this->language->get('tab_description');
            $this->data['tab_attribute'] = $this->language->get('tab_attribute');
            $this->data['tab_review'] = sprintf($this->language->get('tab_review'), $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']));
            $this->data['tab_related'] = $this->language->get('tab_related');
            
            $this->data['product_id'] = $this->request->get['product_id'];
            $this->data['manufacturer'] = $product_info['manufacturer'];
            $this->data['manufacturers'] = $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $product_info['manufacturer_id']);
            $this->data['model'] = $product_info['model'];
            $this->data['reward'] = $product_info['reward'];
            $this->data['points'] = $product_info['points'];
            
            // Add to viewed
            if (!isset($_SESSION['product_viewed'][$product_id])){
                $_SESSION['product_viewed'][$product_id] = $product_id;
            }
            
            if ($product_info['quantity'] <= 0) {
                $this->data['stock'] = $product_info['stock_status'];
            } elseif ($this->config->get('config_stock_display')) {
                $this->data['stock'] = $product_info['quantity'];
            } else {
                $this->data['stock'] = $this->language->get('text_instock');
            }
            
            $this->load->model('tool/image');

        /*    if ($product_info['image']) {
                $this->data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height'));
            } else {
                $this->data['popup'] = '';
            }*/
            
            if ($product_info['image']) {
                $this->data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height'), true);
            } else {
                $this->data['popup'] = '';
            }
            
            if ($product_info['image']) {
                $this->data['thumb'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_thumb_width'), $this->config->get('config_image_thumb_height'));
            } else {
                $this->data['thumb'] = '';
            }
            
            $this->data['images'] = array();
            
            $results = $this->model_catalog_product->getProductImages($this->request->get['product_id']);
            
            foreach ($results as $result) {
                $this->data['images'][] = array(
                    'popup' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')),
                    'thumb' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height'))
                );
            }    
                        
            if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
                $this->data['price'] = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')));
            } else {
                $this->data['price'] = false;
            }
                        
            if ((float)$product_info['special']) {
                $this->data['special'] = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')));
            } else {
                $this->data['special'] = false;
            }
            
            if ($this->config->get('config_tax')) {
                $this->data['tax'] = $this->currency->format((float)$product_info['special'] ? $product_info['special'] : $product_info['price']);
            } else {
                $this->data['tax'] = false;
            }
            
            $discounts = $this->model_catalog_product->getProductDiscounts($this->request->get['product_id']);
            
            $this->data['discounts'] = array(); 
            
            foreach ($discounts as $discount) {
                $this->data['discounts'][] = array(
                    'quantity' => $discount['quantity'],
                    'price'    => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax')))
                );
            }
            
            $this->data['options'] = array();
            
            foreach ($this->model_catalog_product->getProductOptions($this->request->get['product_id']) as $option) {
                if ($option['type'] == 'select' || $option['type'] == 'radio' || $option['type'] == 'checkbox' || $option['type'] == 'image') {
                    $option_value_data = array();
                    
                    foreach ($option['option_value'] as $option_value) {
                        if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {
                            if ((($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) && (float)$option_value['price']) {
                                $price = $this->currency->format($this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax')));
                            } else {
                                $price = false;
                            }
                            
                            $option_value_data[] = array(
                                'product_option_value_id' => $option_value['product_option_value_id'],
                                'option_value_id'         => $option_value['option_value_id'],
                                'name'                    => $option_value['name'],
                                'image'                   => $this->model_tool_image->resize($option_value['image'], 50, 50),
                                'price'                   => $price,
                                'price_prefix'            => $option_value['price_prefix']
                            );
                        }
                    }
                    
                    $this->data['options'][] = array(
                        'product_option_id' => $option['product_option_id'],
                        'option_id'         => $option['option_id'],
                        'name'              => $option['name'],
                        'type'              => $option['type'],
                        'option_value'      => $option_value_data,
                        'required'          => $option['required']
                    );                    
                }
                elseif ($option['type'] == 'text' || $option['type'] == 'textarea' || $option['type'] == 'file' || $option['type'] == 'date' || $option['type'] == 'datetime' || $option['type'] == 'time') {
                    $this->data['options'][] = array(
                        'product_option_id' => $option['product_option_id'],
                        'option_id'         => $option['option_id'],
                        'name'              => $option['name'],
                        'type'              => $option['type'],
                        'option_value'      => $option['option_value'],
                        'required'          => $option['required']
                    );                        
                }
            }
                            
            if ($product_info['minimum']) {
                $this->data['minimum'] = $product_info['minimum'];
            } else {
                $this->data['minimum'] = 1;
            }
            
            $this->data['review_status'] = $this->config->get('config_review_status');
/*------*/    $this->data['sku'] = $product_info['sku'];
/*------*/    $this->data['upc'] = $product_info['upc'];
/*------*/    $this->data['ean'] = $product_info['ean'];
/*------*/    $this->data['jan'] = $product_info['jan'];
            $this->data['reviews'] = sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']);
            $this->data['rating'] = (int)$product_info['rating'];
            $this->data['description'] = html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8');
            $this->data['attribute_groups'] = $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);
            
            $this->data['products'] = array();
            
            $results = $this->model_catalog_product->getProductRelated($this->request->get['product_id']);
            
            foreach ($results as $result) {
                if ($result['image']) {
                    $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_related_width'), $this->config->get('config_image_related_height'));
                } else {
                    $image = 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;
                }
                
                if ($this->config->get('config_review_status')) {
                    $rating = (int)$result['rating'];
                } else {
                    $rating = false;
                }
                            
                $this->data['products'][] = array(
                    'product_id' => $result['product_id'],
                    'thumb'        => $image,
                    'name'         => $result['name'],
                    'price'        => $price,
                    'special'      => $special,
                    'rating'     => $rating,
                    'reviews'    => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
                    'href'         => $this->url->link('product/product', 'product_id=' . $result['product_id']),
                );
            }    
            
            $this->data['tags'] = array();
                    
            $tags = explode(',', $product_info['tag']);
            
            foreach ($tags as $tag) {
                $this->data['tags'][] = array(
                    'tag'  => trim($tag),
                    'href' => $this->url->link('product/search', 'filter_tag=' . trim($tag))
                );
            }
            
            $this->model_catalog_product->updateViewed($this->request->get['product_id']);
            
            if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product.tpl')) {
                $this->template = $this->config->get('config_template') . '/template/product/product.tpl';
            } else {
                $this->template = 'default/template/product/product.tpl';
            }
            
            $this->children = array(
                'common/column_left',
                'common/column_right',
                'common/content_top',
                'common/content_bottom',
                'common/footer',
                'module/catapulta',
                'common/header'
            );
                        
            $this->response->setOutput($this->render());
        }
        else {
            $url = '';
            
            if (isset($this->request->get['path'])) {
                $url .= '&path=' . $this->request->get['path'];
            }
            
            if (isset($this->request->get['manufacturer_id'])) {
                $url .= '&manufacturer_id=' . $this->request->get['manufacturer_id'];
            }            

            if (isset($this->request->get['filter_name'])) {
                $url .= '&filter_name=' . $this->request->get['filter_name'];
            }    
                    
            if (isset($this->request->get['filter_tag'])) {
                $url .= '&filter_tag=' . $this->request->get['filter_tag'];
            }
                            
            if (isset($this->request->get['filter_description'])) {
                $url .= '&filter_description=' . $this->request->get['filter_description'];
            }
                    
            if (isset($this->request->get['filter_category_id'])) {
                $url .= '&filter_category_id=' . $this->request->get['filter_category_id'];
            }
                                
              $this->data['breadcrumbs'][] = array(
                'text'      => $this->language->get('text_error'),
                'href'      => $this->url->link('product/product', $url . '&product_id=' . $product_id),
                'separator' => $this->language->get('text_separator')
              );            
        
              $this->document->setTitle($this->language->get('text_error'));

              $this->data['heading_title'] = $this->language->get('text_error');

              $this->data['text_error'] = $this->language->get('text_error');

              $this->data['button_continue'] = $this->language->get('button_continue');

              $this->data['continue'] = $this->url->link('common/home');

            if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/error/not_found.tpl')) {
                $this->template = $this->config->get('config_template') . '/template/error/not_found.tpl';
            } else {
                $this->template = 'default/template/error/not_found.tpl';
            }
            
            $this->children = array(
                'common/column_left',
                'common/column_right',
                'common/content_top',
                'common/content_bottom',
                'common/footer',
                'common/header'
            );
                        
            $this->response->setOutput($this->render());
        }
      }
    
    public function review() {
        $this->language->load('product/product');
        
        $this->load->model('catalog/review');

        $this->data['text_on'] = $this->language->get('text_on');
        $this->data['text_no_reviews'] = $this->language->get('text_no_reviews');

        if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
        } else {
            $page = 1;
        }  
        
        $this->data['reviews'] = array();
        
        $review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']);
            
        $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id'], ($page - 1) * 5, 5);
              
        foreach ($results as $result) {
            $this->data['reviews'][] = array(
                'author'     => $result['author'],
                'text'       => $result['text'],
                'rating'     => (int)$result['rating'],
                'reviews'    => sprintf($this->language->get('text_reviews'), (int)$review_total),
                'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added']))
            );
          }            
            
        $pagination = new Pagination();
        $pagination->total = $review_total;
        $pagination->page = $page;
        $pagination->limit = 5; 
        $pagination->text = $this->language->get('text_pagination');
        $pagination->url = $this->url->link('product/product/review', 'product_id=' . $this->request->get['product_id'] . '&page={page}');
            
        $this->data['pagination'] = $pagination->render();
        
        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/review.tpl')) {
            $this->template = $this->config->get('config_template') . '/template/product/review.tpl';
        } else {
            $this->template = 'default/template/product/review.tpl';
        }
        
        $this->response->setOutput($this->render());
    }
    
    public function write() {
        $this->language->load('product/product');
        
        $this->load->model('catalog/review');
        
        $json = array();
        
        if ($this->request->server['REQUEST_METHOD'] == 'POST') {
            if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 25)) {
                $json['error'] = $this->language->get('error_name');
            }
            
            if ((utf8_strlen($this->request->post['text']) < 25) || (utf8_strlen($this->request->post['text']) > 1000)) {
                $json['error'] = $this->language->get('error_text');
            }
    
            if (empty($this->request->post['rating'])) {
                $json['error'] = $this->language->get('error_rating');
            }
    
            if (empty($this->session->data['captcha']) || ($this->session->data['captcha'] != $this->request->post['captcha'])) {
                $json['error'] = $this->language->get('error_captcha');
            }
                
            if (!isset($json['error'])) {
                $this->model_catalog_review->addReview($this->request->get['product_id'], $this->request->post);
                
                $json['success'] = $this->language->get('text_success');
            }
        }
        
        $this->response->setOutput(json_encode($json));
    }
    
    public function captcha() {
        $this->load->library('captcha');
        
        $captcha = new Captcha();
        
        $this->session->data['captcha'] = $captcha->getCode();
        
        $captcha->showImage();
    }
    
    public function upload() {
        $this->language->load('product/product');
        
        $json = array();
        
        if (!empty($this->request->files['file']['name'])) {
            $filename = basename(preg_replace('/[^a-zA-Z0-9\.\-\s+]/', '', html_entity_decode($this->request->files['file']['name'], ENT_QUOTES, 'UTF-8')));
            
            if ((utf8_strlen($filename) < 3) || (utf8_strlen($filename) > 64)) {
                $json['error'] = $this->language->get('error_filename');
              }          
            
            $allowed = array();
            
            $filetypes = explode(',', $this->config->get('config_upload_allowed'));
            
            foreach ($filetypes as $filetype) {
                $allowed[] = trim($filetype);
            }
            
            if (!in_array(substr(strrchr($filename, '.'), 1), $allowed)) {
                $json['error'] = $this->language->get('error_filetype');
               }    
                        
            if ($this->request->files['file']['error'] != UPLOAD_ERR_OK) {
                $json['error'] = $this->language->get('error_upload_' . $this->request->files['file']['error']);
            }
        } else {
            $json['error'] = $this->language->get('error_upload');
        }
        
        if (!$json) {
            if (is_uploaded_file($this->request->files['file']['tmp_name']) && file_exists($this->request->files['file']['tmp_name'])) {
                $file = basename($filename) . '.' . md5(mt_rand());
                
                // Hide the uploaded file name so people can not link to it directly.
                $json['file'] = $this->encryption->encrypt($file);
                
                move_uploaded_file($this->request->files['file']['tmp_name'], DIR_DOWNLOAD . $file);
            }
                        
            $json['success'] = $this->language->get('text_upload');
        }    
        
        $this->response->setOutput(json_encode($json));        
    }

}
?>

Link to post
Share on other sites

Ну как бы вот так можно

 

//В контроллер
if (isset($this->request->get['path'])) {
    $data['category_link'] = $this->url->link('product/category', 'path=' . $this->request->get['path']);
}else{
	$data['category_link'] = false;
}  

//В шаблон
<?php if($category_link) { ?>
<div class="tovar_v_category" style="border-width:1px;border-color: #ccc;border-style: solid;">
<a href="<?php echo $category_link; ?>">Все товары этой категории</a>
</div>
<?php } ?>

 

Link to post
Share on other sites
6 минут назад, Waha сказал:

Ну как бы вот так можно

 

//В контроллер
if (isset($this->request->get['path'])) {
    $data['category_link'] = $this->url->link('product/category', 'path=' . $this->request->get['path']);
}else{
	$data['category_link'] = false;
}  

//В шаблон
<?php if($category_link) { ?>
<div class="tovar_v_category" style="border-width:1px;border-color: #ccc;border-style: solid;">
<a href="<?php echo $category_link; ?>">Все товары этой категории</a>
</div>
<?php } ?>

 

подскажите пжл,в каком именно месте нужно вставить в контролере??

Link to post
Share on other sites

Дали бы вы ссылку на ваш сайт. И пример ссылки из поисковика, по которой все продукты категории не работают. Подозреваю, что у вас на сайте страницы товара  имеют дубли вида сайт/категория/продукт и сайт/продукт. Потому, в последнем случае, и не видны категории.
Или уже поправили?
Этот сайт?
https://bamper99.ru/HYUNDAI-Solaris-(11-17)?product_id=553
тут работает.

Edited by Shureg
Link to post
Share on other sites

Да,этот.......

если переходить по вашей ссылки,то работает,если перехожу из поисковика,то нет

 

пример запроса в поисковике яндекса :"бампер на солярис в цвет кузова"

 

"имеют дубли вида сайт/категория/продукт и сайт/продукт. Потому, в последнем случае, и не видны категории."..... что это и как проверить??))

Edited by ArtemMay
Link to post
Share on other sites

28 минут назад, ArtemMay сказал:

Да,этот.......

если переходить по вашей ссылки,то работает,если перехожу из поисковика,то нет

 

пример запроса в поисковике яндекса :"бампер на солярис в цвет кузова"

 

"имеют дубли вида сайт/категория/продукт и сайт/продукт. Потому, в последнем случае, и не видны категории."..... что это и как проверить??))

в гугле все работает. при заходе из поисковика на эту страницу https://bamper99.ru/HYUNDAI-Solaris-(11-17)?product_id=553  кнопка  все товары ведет на эту страницу https://bamper99.ru/HYUNDAI-Solaris-(11-17) .

все верно?

Link to post
Share on other sites

29 минут назад, ArtemMay сказал:

Да,этот.......

если переходить по вашей ссылки,то работает,если перехожу из поисковика,то нет

 

пример запроса в поисковике яндекса :"бампер на солярис в цвет кузова"

 

"имеют дубли вида сайт/категория/продукт и сайт/продукт. Потому, в последнем случае, и не видны категории."..... что это и как проверить??))

но вот такие урл HYUNDAI-Solaris-(11-17)?product_id=553 - это конечно нечто.

Link to post
Share on other sites

26 минут назад, Dimasscus сказал:

в гугле все работает. при заходе из поисковика на эту страницу https://bamper99.ru/HYUNDAI-Solaris-(11-17)?product_id=553  кнопка  все товары ведет на эту страницу https://bamper99.ru/HYUNDAI-Solaris-(11-17) .

все верно?

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

Edited by ArtemMay
Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

Спасибо за помощь!!! теперь буду читать литературу как исправить "вам не кнопку лечить надо, а с роутингом разбираться"))

Link to post
Share on other sites

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

Спасибо за помощь!!! теперь буду читать литературу как исправить "вам не кнопку лечить надо, а с роутингом разбираться"))

вы посмотрите что у вас с урл товара за маразм. для начала

Link to post
Share on other sites

14 минут назад, Dimasscus сказал:

вы посмотрите что у вас с урл товара за маразм. для начала

"теперь буду читать литературу как исправить "вам не кнопку лечить надо, а с роутингом разбираться"))"......это я и имел ввиду. Возможно что я путаю технологические описания(названия) проблем.Я мало имею представление об програмирование. Не подскажите с чего мне начать разбираться в проблеме?

Edited by ArtemMay
Link to post
Share on other sites

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

"теперь буду читать литературу как исправить "вам не кнопку лечить надо, а с роутингом разбираться"))"......это я и имел ввиду. Возможно что я путаю технологические описания(названия) проблем.Я мало имею представление об програмирование. Не подскажите с чего мне начать разбираться в проблеме?

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

Link to post
Share on other sites

4 часа назад, Dimasscus сказал:

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

И вылететь из выдачи поисковиков. Редиректы сначала настроить надо.

Link to post
Share on other sites

3 часа назад, Shureg сказал:

И вылететь из выдачи поисковиков. Редиректы сначала настроить надо.

то есть по вашему сео про не решает задачу редиректов? :))

Link to post
Share on other sites

51 минуту назад, Dimasscus сказал:

то есть по вашему сео про не решает задачу редиректов? :))

Здесь не решает. Дубли страниц уже попали в выдачу, теперь их надо слить вместе 301-ым редиректом. Сеопро такого не делает.

Link to post
Share on other sites

10 минут назад, Shureg сказал:

Здесь не решает. Дубли страниц уже попали в выдачу, теперь их надо слить вместе 301-ым редиректом. Сеопро такого не делает.

дубли страниц попали в выдачу

 при переходе автоматически редирект на нужную страницу(сео про таки решает) -не усложняйте там где не надо.

но если хочется поморочиться- то выкачать страницы которые в индексе и руками прописать редиректы соответсвующие

Link to post
Share on other sites

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

Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

Ребята!!еще раз спасибо и с наступившим вас!!!!!!

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.