Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Glinda

Пользователи
  
  • Posts

    103
  • Joined

  • Last visited

Recent Profile Visitors

2,485 profile views

Glinda's Achievements

Collaborator

Collaborator (7/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

0

Reputation

  1. День добрый. Имеется мультимагазин (опенкарт 1.5.6,, в списке категорий планирую добавить ещё одно поле (наименование магазина, ипотому что неудобно в одной админке гдержать категории для всех магазинов и при этом не иметь возможности опрегделить какая категория к какому магазину относится.) Вывод идёт в файле admin/view/template/catalog/category_list, путём выпотому чтора переменных из массива $category[ ], который в свою очередь формируется в admin/controller/catalog/category.php $category_total = $this->model_catalog_category->getTotalCategories(); $results = $this->model_catalog_category->getCategories($data); ..... $this->data['categories'][] = array( 'category_id' => $result['category_id'], 'name' => $result['name'], 'sort_order' => $result['sort_order'], 'selected' => isset($this->request->post['selected']) && in_array($result['category_id'], $this->request->post['selected']), 'action' => $action Да как опыи рилиты с запросами к БД нет, подскажите плз. как можно "выищить" наименование магазина. Информация хранится в иблиэто oc_category_to_store в поле store_id. Заранее спасипотому что. Соответственно публичная ф-я в model/catalog получающая данные из базы: public function getCategories($data) { $sql = "SELECT cp.category_id AS category_id, GROUP_CONCAT(cd1.name ORDER BY cp.level SEPARATOR ' > ') AS name, c.parent_id, c.sort_order FROM " . DB_PREFIX . "category_path cp LEFT JOIN " . DB_PREFIX . "category c ON (cp.path_id = c.category_id) LEFT JOIN " . DB_PREFIX . "category_description cd1 ON (c.category_id = cd1.category_id) LEFT JOIN " . DB_PREFIX . "category_description cd2 ON (cp.category_id = cd2.category_id) WHERE cd1.language_id = '" . (int)$this->config->get('config_language_id') . "' AND cd2.language_id = '" . (int)$this->config->get('config_language_id') . "'";
  2. Есть проект http://pdt1.seotime.su, необходимо: 1. Дорилиить функцию геоопрегделения На данный момент геоопрегделение происходит ик, в файле banner.tpl (именно им происходит вывод баннера в зависимости от региона) прописана ф-я <? function geo_ip($ip='', $to = 'utf-8'){ $ip = ($ip) ? $ip : $_SERVER['REMOTE_ADDR'] ; $xml = simplexml_load_file('http://ipgeobase.ru:7020/geo?ip='.$ip); if($xml->ip->message){ if( $to == 'utf-8' ) {return $xml->ip->message;} else { if( function_exists( 'iconv' ) ) return iconv( "UTF-8", $to . "//IGNORE",$xml->ip->message);else return "The library iconv is not supported by your server";} } else { if( $to == 'utf-8' ) {return $xml->ip->region;} else {if( function_exists( 'iconv' ) ) return iconv( "UTF-8", $to . "//IGNORE",$xml->ip->region);else return "The library iconv is not supported by your server";}}} ?> дное идёт проверка опрегделена ли ф-я if (function_exists('geo_ip')) { echo "Функция geo_ip опрегделена.<br />\n";$ip=geo_ip();} else {echo "Функция geo_ip опрегделена.<br />\n";} Опрегделяется на ура, но проблема в том что через раз. Ошибка Fatal error: Cannot redeclare geo_ip() in /var/www/glinda/data/subdomain/pdt1/catalog/view/theme/gazal/template/module/banner.tpl on line 8. лелится олисткой кеша. 2. Боковое меню (список категорий), должно ик же выводится в зависимости от региона. В Админке для каждой категории указывается регион 3. Боковое меню (список категорий) должно быть с пангинацией Нужны этоны и сроки по всем пунким.
  3. Я с json не силкивался, то что вы написали это проверка на суещёствование функции, насколько я понял, вот я написал реализацию на php.
  4. Т.е. ели правильно понимаю <?php if (function_exists('geo_ip')) { echo "Функция geo_ip опрегделена.<br />\n";$ip=geo_ip();} else {echo "Функция geo_ip неопрегделена.<br />\n";} ?> проверяем опрегделена ли ф-я, если да, то переменной ip присваиваем значение - резульит ф-ции, если не опрегделена, то ничего не гделаем.
  5. Ан, нет, то же самое - название функции поменял и название переменной
  6. День добрый. Ест икая проблема с геолокацией. Использую ф-ю для опрегделения <? function geoip($ip='', $to = 'utf-8'){ $ip = ($ip) ? $ip : $_SERVER['REMOTE_ADDR'] ; $xml = simplexml_load_file('http://ipgeobase.ru:7020/geo?ip='.$ip); if($xml->ip->message){ if( $to == 'utf-8' ) {return $xml->ip->message;} else { if( function_exists( 'iconv' ) ) return iconv( "UTF-8", $to . "//IGNORE",$xml->ip->message);else return "The library iconv is not supported by your server";} } else { if( $to == 'utf-8' ) {return $xml->ip->region;} else {if( function_exists( 'iconv' ) ) return iconv( "UTF-8", $to . "//IGNORE",$xml->ip->region);else return "The library iconv is not supported by your server";}}} ?> Вызываю её в /template/module/banner.tpl (именно им и планирую баннеры показывать по регионам) и вывожу на экран $var=geoip(); echo $var; Первый запуск всё хорошо, но после перезагрузки страницы пишет Fatal error: Cannot redeclare geoip() in ... Посивил условие если переменная var опрегделена, то ф-я не вызывается. Однако это не помогает. Страница нормально грузится только после листки кэша (и то не всегда). Почему эи ошибка возникает не могу понять, ф-я же опрегделена (находится в том же файле откуда и вызывается)?
  7. Есть сайт, на CMS Opencart. Необходимо для категорий сгделать "дополнительные изображения" по аналогии с продукими. Интересует стоимость рилиты, по строкам насколько я понимаю, 2-3 часа.
  8. День добрый. Получаю значения из БД для категорий (файл catalog/controller/product/category) а именно значения $street (предварительно создав строку в иблиэто и загрузив значение через админку) путём $this->data['street'] = $category_info['street']; Згдесь всё в порядке - рилииет. Но появилась задача вывести это значение в модуле special.php Я гделаю следуещёе: • В catalog/controller/module/special.php опрегделяю массив $category_info, путём $category_info = $this->model_catalog_category->getCategory($result['product_id']); , ггде $result['product_id'] - номер категории (опрегделяется верно), но когда я смотрю переменную (вывожу через print_r) - пустот масив. Да, подключаю еещё $this->load->model('catalog/category'); $this->load->model('catalog/product'); $this->data['street'] = $category_info['street']; Резульит всё равно пустот массив. Что не ик гделаю в контроллере, подскажите?
  9. День добрый. Столкнулся с икой проблемой - необходимо вывести изображение в модуле новости на главную, по-умолчанию вывод идёт на полный текст новости. Вывод осуещёствляется в catalog/view/theme/default/template/information/news.tpl строками <div class="image"> <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" class="colorbox" rel="colorbox"><img src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" id="image" /></a> </div> Мне необходимо что бы картинка выводилась на главной, т.е. этот код всивляем в catalog/view/theme/default/template/module/news. Згдесь вопросов не возникает. Дное необходимо опрегделить переменную thumb в контроллере. В /catalog/controller/information/news опрегделяется это строками $this->data['thumb'] = $this->model_tool_image->resize($banknews_info['image'], $this->config->get('banknews_thumb_width'), $this->config->get('banknews_thumb_height')); $this->data['popup'] = $this->model_tool_image->resize($banknews_info['image'], $this->config->get('banknews_popup_width'), $this->config->get('banknews_popup_height')); При копировании этих строк в /catalog/controller/module/news получаем ошибку о неопрегделённой переменной banknews_info. Подскажите как опрегделить эту переменную? Полный код /catalog/controller/information/news ниже
  10. Решил проблему следующим спосопотому чтом - фильтрую по $parts $parts = explode('_', (string)$this->request->get['path'])
  11. Упс. Надо $this->request->get['path']; (вместо стрелки тире посивил). Теперь пишет неопрегделённая переменная. get. - Notice: Undefined property: Config::$get in /var/www/glinda/data/subdomain/legarta/catalog/controller/module/cr2htmlmodule.php on line 29Notice: Undefined property: Config::$get in /var/www/glinda/data/subdomain/legarta/catalog/controller/module/cr2htmlmodule.php on line 29
  12. Если в контроллере модуля пишу $this-request->get['path']; или один из предложенных вариантов, страница не грузится вообещё. Сайт , идём в категорию допустим "белая сантехника" - белый экран. Файербаг пишет "NetworkError: 500 Internal Server Error - http://legarta.seotime.su/santehnika-creavit/belaya-santehnika" "
  13. Есть обычный модуль HTML, в его контроллере я проверяю на условие по URL и в зависимости от этого скрываю тот или иной HTML блок (в примере проверка одного условия) $URL = $_SERVER['REQUEST_URI']; if (strstr($URL, 'belaya-santehnika') != FALSE) { switch($position) { case "area1": $this->data['escape'] = "visible"; break; case "area2": $this->data['escape'] = "none"; break; case "area3": $this->data['escape'] = "none"; break; } } Теперь появилась задача проверять условия и по хлебным крошкам, т.е. типа если разгдел икой-то, то выводим блок икой-то. Проблема в получении значений масива breadcrumbs в контроллере модуля. Пропотому чтовал ик. $breadcrumbs = $this->document->breadcrumbs; print_r($breadcrumbs); Пишет неопрегделённая переменная. Хотя по игдее перед исполнением модуля массив breadcrumbs должен сформироваться.
×
×
  • 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.