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

qwest77777

Newbie
  
  • Posts

    6
  • Joined

  • Last visited

Everything posted by qwest77777

  1. А можно немного подробнее)))) 1. Я создал дополнительный столбец в БД - top_everywhere типа TINYINT 2. Создал дополнительный чекбокс в файле ../public_html/admin/view/template/catalog/category_form.twig <label class="col-sm-2 control-label" for="input-top-everywhere"><span data-toggle="tooltip" title="{{ help_top_everywhere }}">{{ entry_top_everywhere }}</span></label> <div class="col-sm-10"> <div class="checkbox"> <label> {% if top %} <input type="checkbox" name="top_everywhere" value="1" checked="checked" id="input-top-everywhere" /> {% else %} <input type="checkbox" name="top_everywhere" value="1" id="input-top-everywhere" /> {% endif %} &nbsp; </label> </div> </div> 3. В файле ../public_html/admin/model/catalog/category.php добавил , `top_everywhere` = '" . (isset($data['top_everywhere']) ? (int)$data['top_everywhere'] : 0) . "' После такого куска кода про 'top' в двух местах. 4. Проверил устанавливается значение чекбокса в базе при изменении в админке - все ок, значение чекбокса сохраняется в БД 5. Пошел в файл ../public_html/catalog/controller/common/menu.php , чтобы добавить условие "Показывать подкатегории, если 'top_everywhere' установлено. Делал это так: <?php class ControllerCommonMenu extends Controller { public function index() { $this->load->language('common/menu'); // Menu $this->load->model('catalog/category'); $this->load->model('catalog/product'); $data['categories'] = array( ); $categories = $this->model_catalog_category->getCategories(0); foreach ($categories as $category) { if ($category['top']) { if ($category['top_everywhere']) { // Level 2 $children_data = array(); $children = $this->model_catalog_category->getCategories($category['category_id']); foreach ($children as $child) { $filter_data = array( 'filter_category_id' => $child['category_id'], 'filter_sub_category' => true ); $children_data[] = array( 'name' => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) ); } } // Level 1 $data['categories'][] = array( 'sort' => $category['sort_order'], 'name' => $category['name'], 'children' => $children_data, 'column' => $category['column'] ? $category['column'] : 1, 'href' => $this->url->link('product/category', 'path=' . $category['category_id']) ); } } return $this->load->view('common/menu', $data); } } То есть добавил еще один IF в 22 строке. Но ничего не происходит.... Подкатегории с отключенным 'top_everywhere' все равно показываются в меню. В файле ../public_html/catalog/controller/product/category.php тоже пробовал во всякие места добавлять IF из предыдущего пункта (ниже исходный код без иф) Даже в файле ../public_html/admin/controller/catalog/category.php добавил в 460 строку if (isset($this->request->post['top_everywhere'])) { $data['top_everywhere'] = $this->request->post['top_everywhere']; } elseif (!empty($category_info)) { $data['top_everywhere'] = $category_info['top_everywhere']; } else { $data['top_everywhere'] = 0; Правда не знаю зачем я это делал)) Подскажите, какой код куда вставить? Уже не знаю, что где менять/добавлять.....
  2. Если мы скрываем подкатегории, то они должны скрываться из бокового меню, со страницы категории и из верхнего меню (сейчас "top" работает только для главных, а подкатегории отображаются в любом случае, если отображается главная категория). Что-то я сам запутался и запутал Вас))) В своем первом сообщении Вы говорили о том, что вставить такую проверку везде, откуда они должны скрыться - то есть, если говорим про меню - в список в целом и в список подкатегорий, а если говорим про страницу категории, то на ней в месте вывода? Правильно? А как это сделать, на каком-нибудь примере?
  3. Но параметр "top" у разных категорий разный - есть категории, которые не должны отображаться в шапке, но нужны в боковом меню. Вопрос больше относится к подкатегориям. То есть, если я сделаю такую проверку, то категории, у которых отключен параметр "Показывать в главном меню", пропадут из бокового меню, хотя они должны там остаться...
  4. Как скрыть выборочно скрыть категории в OC 3, при этом оставив их включенными, доступными по прямой ссылке, чтобы они остались в разделе "Карта сайта" и в sitemap.xml? Предполагаю, что нужно копаться в файлах, отвечающих за меню и за саму страницу категории, чтобы при установке Порядка сортировки -1, скрывалось отображение категории (с подкатегориями) в меню, а также не показывались подкатегорий на странице главной категории. Или, как вариант, добавить еще одну сущность в админке, которая скроет ненужные категории или подкатегории, оставив главную. Но опыта очень мало, поэтому не получилось, хотя уже неделю пытаюсь сделать. Решение, представленное тут не подходит, так как при добавлении AND c.sort_order >= '0' в файл catalog\model\catalog\category.php в запросе функции getCategories, категория исчезает из Карты сайта и sitemap.xml. Наверняка, кто-то сталкивался с такой задачей. Есть ли у кого-нибудь мысли, как это реализовать?
  5. Здравствуйте! Установил модуль на ОС 3.0.3.2, кнопки вывелись везде, кроме карточки товара. Решил этот вопрос так: прописал в XML название фалов product.php и product.twig, рядом с category.php и category.twig и остальным перечислением соответственно. Таким образом кнопка появилась и в карточке товара, присутствует в поиске, категориях и во всех нужных местах. НО! Кнопка работает везде, КРОМЕ карточки товара. При нажатии на кнопку в карточке - экран темнеет (fade) и всё, ничего больше не происходит, модальное окно не появляется. Автору написал и на форуме и на почту и в обратной связи на его сайте - пока не отвечает... Кто-нибудь сталкивался? Почему окно не появляется? Как сделать так, чтобы окно появлялось при нажатии на кнопку? Дополнительно: в футере и хедере код про buyonclick присутствует, все то же самое, что и на работающих страницах (категории, главная и т.д.), делаю вывод, что скрипты подгружаются... Кто-нибудь может придумать варианты, что поправить?
×
×
  • 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.