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

halfhope

Користувачі
  
  • Публікації

    1 750
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем halfhope

  1.  

    В index.php вставляю

    //MCLite
    if (preg_match('/head>/im', $response->output) && !defined('DIR_CATALOG')) {
        $loader->library('mclite/mclite.class');
        $mclite = new mclite($registry, $response->output);
        $response->output = $mclite->output;
     
    получаю ошибку
     
    Fatal error: Cannot access private property Response::$output in /home/sanan-cctv/sanan-cctv.ru/docs/index.php on line 247

     

     

    В файле system/library/response.php замените private $output на public $output.

  2. А по шагам можете расписать?

    Никогда не создавал просто.

     

    На примере контроллера админки:

    1. Копируете любой контроллер, например common/home.php
    2. Переименовываете home.php в chaser.php,
    3. Открываете файл переименовываете ControllerCommonHome в ControllerCommonChaser
    4. Теперь он будет доступен по адресу /admin/index.php?route=common/chaser (не забудьте зайти в Группы пользователей, чтобы обновить права для нового раздела)

     

    Рабочий код нужно писать в функции index()

  3. И как это сделать?

     

    Хотя мне вполне хватило бы аналога решения предыдущей задачи

     

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

  4. Не знаю зачем написал сей велосипед, но думаю, что кому-нибудь будет полезен при анализе логов.

     

    При очистке более 30 сайтов от вирусов/шеллов и прочей грязи, нашел закономерности, cпецифичные для OpenCart. Например, если сайт заражен ботом, то большая часть зараженных файлов вызываются напрямую, а не через точку входа, что логично. Эти файлы чаще всего находятся в директориях catalog и system. Например, http://адрес-сайта/system/helpers/sh.php.'>http://адрес-сайта/system/helpers/sh.php.

     

    Скрипт подсвечивает:

    • Разрешенные типы файлов
    • POST/HEAD запросы
    • Запросы к точке входа витрины (index.php*)
    • Запросы в админку (admin/*)
    • Запросы с ответом 404
    • Прямые вызовы PHP файлов (например, http://адрес-сайта/system/helpers/sh.php)

     

    Плюсы:

    • Есть визуальная навигация по всем обработанным строкам (с подсветкой)
    • Можно поставить ограничение на показываемых строк (по умолчания 10000)
    • Наличие пагинации
    • Настраиваемый формат логов (благодаря использованию PHP Web Server Log Parser Library)

     

    Минусы:

    • Медленный
    • Используется функция file, так что если файл большой, то можно уткнуться в memory_limit

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

    //Разрешенные типы файлов
    $ALLOWED_EXTENSIONS = array('css','js','png','jpg','gif','svg','jpeg','pdf','htm','html','woff','eot','ico','txt');
    //Путь к админке
    define('ADMIN_DIR', 'admin');
    //Название файла лога
    define('LOG_FILE', 'podarishka.danzil.ru-Feb-2015.log');
    //Формат лога. Сейчас стоит дефолтный, про формат можно узнать https://github.com/kassner/log-parser#supported-format-strings
    define('LOG_FORMAT', '%h %l %u %t "%r" %>s %O "%{Referer}i" \"%{User-Agent}i"');
    //Кол-во строк на страницу
    define('LINES_PER_PAGE', 10000); 

    Ссылки: 

    Если это велосипед, то прошу ткнуть носом в готовые решения. 

    1.php

  5.  

    Сделал тест на Яндексе. 5407мс это офигеть как много?

     

     

     

    Код статуса HTTP: "200 OK"
    Время ответа сервера: 5407мс
    IP сайта: 212.192.194.11
    Кодировка: UTF-8(unicode-1-1-utf-8, UTF8)
    Размер страницы: 45.63Кб
    Заголовки:
    • Server: nginx/1.2.0
    • Date: Fri, 27 Feb 2015 03:40:24 GMT
    • Content-Type: text/html; charset=utf-8
    • Transfer-Encoding: chunked
    • Connection: keep-alive
    • Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    • Expires: Thu, 19 Nov 1981 08:52:00 GMT
    • X-Powered-By: PHP/5.3.13
    • Set-Cookie: PHPSESSID=55042e8e54f9bb5011813eda4548cd44; path=/; HttpOnly
    • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
    • Set-Cookie: currency=RUB; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
    • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
    • Pragma: no-cache

     

     

    При первичной загрузке создаются файлы сжатых и объединенных скриптов (от 5 до 10 секунд), которые используются на странице, при последующих загрузках будут использоваться уже созданные файлы. 

  6. Здравствуйте, автор. Установил ваш модуль. Переключал различные варианты сжатия, но результат показывает, что ничего даже на 1% не сжимается. Проверял с помощью инструмента Google https://developers.google.com/speed/pagespeed/insights/?url=http%3A%2F%2Fsanan-cctv.ru%2F&tab=mobile

     

    Мой сайт http://sanan-cctv.ru

     

    Добрый вечер. 

     

    Тормоза.

     

    Вижу, что сайт тормозит, но причина тому не стили и скрипты. Скачайте opencart той же версии, что и Ваш скопируйте(с заменой) из скачанного файл system/library/response.php.

     

    Модуль.

     

    Для того, чтобы модуль нормально обработал стили необходимо в файле catalog/view/theme/название-вашей-темы/common/header.tpl найти все стили и привести их к следующему формату:

    <link rel="stylesheet" href="Путь к файлу" media="screen" />
    

    Сейчас у Вас стоит вот такой формат:

    <link href="Путь к файлу" rel="stylesheet" media="screen" />
    
  7. Здравствуйте!

    Версия магазина 2.0.1.1

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

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

    Сколько будет стоить данная реализация?

    Новых дополнительных полей будет 8 штук.

     

    Или возможен другой вариант реализации данного функционала?

     

    В виде атрибутов + фильтр в категории, не?

  8. Это пассивная xss атака. Это значит, что пройдя по

    http://roksolanajewels.ru/index.php?route=product/search&search=Перейти%20на%20сайт%20автора
    вот этой ссылке на Вашем сайте появится ссылка на мой блог. Т.е. фактически, Ваш сайт является донором ссылок. Пишите в ЛС данные для доступа по FTP, помогу.
    • +1 1
  9. Имеется ввиду, что нет необходимости создавать сущность "oc_category_related", проще создать поле related_categories в таблице oc_category, и хранить данные в нем в виде сериализованного массива. Эту работу за вас сделает сам OpenCart.

     

    Вам необходимо всего-то:

    • добавить в форму выбор категории (с автодополнением), (можно скопировать)
    • добавить эту переменную в модель (чтобы модель ее возвращала и сохраняла в соответствующий столбец)
    • А сериализацию массива сделает сам opencart. 
  10. На данный момент я нашел только один способ, это отключить сообщение об ошибках в opencart.

     

    Если устанавливали сборку OpenCart с предустановленным шаблоном, например, OXY, то модели там переписаны. Чтобы все работало необходимо, чтобы у товара было два изображения.

  11. Если массив многомерный, то uksort + strnatcmp, как показано ниже

    
    

    $unsorted = array(

    array(

    'a' => '2800MHz',

    'b' => 'Частота'

    ),

    array(

    'a' => '1300MHz',

    'b' => 'Частота'

    ),

    array(

    'a' => '1500MHz',

    'b' => 'Частота'

    )

    );

    function h_sort_cmp($a, $b) {

    return strnatcmp($a['a'], $b['a']);

    }

    foreach($unsorted as $key => $value) {

    uasort($value, 'h_sort_cmp');

    }

  12. В бд описание товара прописано вот так:

    attachicon.gifCropperCapture11.jpg

     

    при выводе на страницу товара выводится вот так:

    attachicon.gifCropperCapture12.jpg

     

    при сохранении через редактор товара в админке тоже так же.

     

    Как сделать, что бы сохранялось и выводилось в html виде?

     

    Вам это зачем? Они так и должны храниться, не трогайте. Если же приспичит:

×
×
  • Створити...

Important Information

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