Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Скрыть какую либо категорию с сайта но не отключая ее с админ панели


Recommended Posts

так вроде и никогда и не работало так в категориях...

 

mmsipii

открываем файл

\catalog\model\catalog\category.php

там находим функцию public function getCategories

и почти в конце запроса, после AND c.status = '1' добавим AND c.sort_order > '-1'

Надіслати
Поділитися на інших сайтах

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

Надіслати
Поділитися на інших сайтах


так вроде и никогда и не работало так в категориях...

 

mmsipii

открываем файл

\catalog\model\catalog\category.php

там находим функцию public function getCategories

и почти в конце запроса, после AND c.status = '1' добавим AND c.sort_order > '-1'

А можно подробнее 

Надіслати
Поділитися на інших сайтах


вот код что куда нужно прописать?

<?php
class ModelCatalogCategory extends Model {
	public function getCategory($category_id) {
		$query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND c.status = '1'");
		
		return $query->row;
	}
	
	public function getCategories($parent_id = 0) {
		$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  AND c.status = '1' ORDER BY c.sort_order, LCASE(cd.name)");

		return $query->rows;
	}
	
	public function getCategoryFilters($category_id) {
		$implode = array();
		
		$query = $this->db->query("SELECT filter_id FROM " . DB_PREFIX . "category_filter WHERE category_id = '" . (int)$category_id . "'");
		
		foreach ($query->rows as $result) {
			$implode[] = (int)$result['filter_id'];
		}
		
		
		$filter_group_data = array();
		
		if ($implode) {
Надіслати
Поділитися на інших сайтах


<?php
class ModelCatalogCategory extends Model {
    public function getCategory($category_id) {
        $query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND c.status = '1' Я вот сюда втыкал, мне не помогло");
        
        
return $query->row;
    }

Надіслати
Поділитися на інших сайтах


Короче поставил может не так но теперь все рубрики не отсортированы и с -1. И все равно не удается скрыть одну рубрику в каталоге всех рубриков слева на главной. 

Надіслати
Поділитися на інших сайтах


<?php

class ModelCatalogCategory extends Model {

    public function getCategory($category_id) {

        $query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND c.status = '1' Я вот сюда втыкал, мне не помогло");

        

        return $query->row;

    }

Я тоже, единственное решение это плагин Unlimited Split Categories но он платный 

Надіслати
Поділитися на інших сайтах


А можна ли вообще сделать как-то чтобы например есть категория 1 в ней подрубрики, эта категория показывается слева в сайдбаре, другая категория 2 не показывается в сайдбаре, то есть она будет показана ссылкой например ввверху в меню, чел кликает и ему она открывается.

Надіслати
Поділитися на інших сайтах


только что проверил на ocstore 1551 и brocart - все шикарно работает

открываем файл catalog/model/catalog/category.php
и вот эту функцию:
 

public function getCategories($parent_id = 0) {
		$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  AND c.status = '1' ORDER BY c.sort_order, LCASE(cd.name)");

		return $query->rows;
	}

заменяем на вот это:
 

public function getCategories($parent_id = 0) {
		$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  AND c.status = '1' AND c.sort_order > '-1' ORDER BY c.sort_order, LCASE(cd.name)");

		return $query->rows;
	}

ну или просто добавляем в нужном месте AND c.sort_order > '-1'

идем в админке в категорию которую нужно скрыть и ставим ей статус сортировки -1

 

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

Надіслати
Поділитися на інших сайтах


:eek: работает, я в экстазе, уже и тему создал на доработку, и всем прогерам написал, кто может помочь, а тут наконец-то написали, как это реализовать.

Надіслати
Поділитися на інших сайтах


:eek: работает, я в экстазе, уже и тему создал на доработку, и всем прогерам написал, кто может помочь, а тут наконец-то написали, как это реализовать.

как правильно нужно вставлять? 

Надіслати
Поділитися на інших сайтах


https://opencartforum.com/topic/34050-скрыть-какую-либо-категорию-с-сайта-но-не-отключ/?do=findComment&comment=274663 вот эйнштейн написал, прямо как у него сделай и все заработает.

Надіслати
Поділитися на інших сайтах


https://opencartforum.com/topic/34050-скрыть-какую-либо-категорию-с-сайта-но-не-отключ/?do=findComment&comment=274663 вот эйнштейн написал, прямо как у него сделай и все заработает.

Ссылка неверная

Надіслати
Поділитися на інших сайтах


Тока теперь когда открываешь главную любую рубрику не показываются под-рубрики на странице вверху. А все ок просто в шаблоне нужно было включить показывать подрубрики

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.