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

chukcha

Users
  • Posts

    20,542
  • Joined

  • Last visited

Everything posted by chukcha

  1. та не вопрос http://searchengines.guru/showthread.php?t=727047 http://www.page-weight.ru/theory/article/4/ Я понимаю, что инфа может быть и несвежая, но она гуляет и народу хочется..
  2. фокус с js скриптами - "борьба" с утеканием веса Учитывая, то что ПС не индексирует ссылки в js-скриптах, то технические ссылки нужно закрывать скриптами приблизительно выглядит так href="javascript:location=ссылка" или что либо подобное $('span[title^="http"]').click(function(){ window.open(($(this).attr('title'), ''); }); Таким образом по техническим ссылкам ходит только пользователь
  3. можно пойти грубым путем :( $color =imagecolorat($image_old, 1, 1); $r = ($color >> 16) & 0xFF; $g = ($color >> 8) & 0xFF; $b = $color & 0xFF; теперь rgb подставляем в нужные места.
  4. Я уже где-то такое "видел" типа ограничение в 14 опций :( Но вот судя по коду - ГДЕ здесь ограничения? Сначала удалили все опции и их значения Затем циклом по все опциям добавляем опцию И в цикле добавляем значения Здесь бы немного изменить логику.... но ладно... $this->db->query("DELETE FROM " . DB_PREFIX . "product_option WHERE product_id = '" . (int)$product_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "product_option_value WHERE product_id = '" . (int)$product_id . "'"); if (isset($data['product_option'])) { foreach ($data['product_option'] as $product_option) { if ($product_option['type'] == 'select' || $product_option['type'] == 'radio' || $product_option['type'] == 'checkbox' || $product_option['type'] == 'image') { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option SET product_option_id = '" . (int)$product_option['product_option_id'] . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', required = '" . (int)$product_option['required'] . "'"); $product_option_id = $this->db->getLastId(); if (isset($product_option['product_option_value']) && count($product_option['product_option_value']) > 0 ) { foreach ($product_option['product_option_value'] as $product_option_value) { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option_value SET product_option_value_id = '" . (int)$product_option_value['product_option_value_id'] . "', product_option_id = '" . (int)$product_option_id . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', option_value_id = '" . (int)$product_option_value['option_value_id'] . "', quantity = '" . (int)$product_option_value['quantity'] . "', subtract = '" . (int)$product_option_value['subtract'] . "', price = '" . (float)$product_option_value['price'] . "', price_prefix = '" . $this->db->escape($product_option_value['price_prefix']) . "', points = '" . (int)$product_option_value['points'] . "', points_prefix = '" . $this->db->escape($product_option_value['points_prefix']) . "', weight = '" . (float)$product_option_value['weight'] . "', weight_prefix = '" . $this->db->escape($product_option_value['weight_prefix']) . "'"); } }else{ $this->db->query("DELETE FROM " . DB_PREFIX . "product_option WHERE product_option_id = '".$product_option_id."'"); } } else { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option SET product_option_id = '" . (int)$product_option['product_option_id'] . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', option_value = '" . $this->db->escape($product_option['option_value']) . "', required = '" . (int)$product_option['required'] . "'"); } } } С измененной логикой без DELETE foreach ($data['product_option'] as $product_option) { if ($product_option['type'] == 'select' || $product_option['type'] == 'radio' || $product_option['type'] == 'checkbox' || $product_option['type'] == 'image') { if (isset($product_option['product_option_value']) && count($product_option['product_option_value']) > 0 ) { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option SET product_option_id = '" . (int)$product_option['product_option_id'] . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', required = '" . (int)$product_option['required'] . "'"); $product_option_id = $this->db->getLastId(); foreach ($product_option['product_option_value'] as $product_option_value) { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option_value SET product_option_value_id = '" . (int)$product_option_value['product_option_value_id'] . "', product_option_id = '" . (int)$product_option_id . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', option_value_id = '" . (int)$product_option_value['option_value_id'] . "', quantity = '" . (int)$product_option_value['quantity'] . "', subtract = '" . (int)$product_option_value['subtract'] . "', price = '" . (float)$product_option_value['price'] . "', price_prefix = '" . $this->db->escape($product_option_value['price_prefix']) . "', points = '" . (int)$product_option_value['points'] . "', points_prefix = '" . $this->db->escape($product_option_value['points_prefix']) . "', weight = '" . (float)$product_option_value['weight'] . "', weight_prefix = '" . $this->db->escape($product_option_value['weight_prefix']) . "'"); } } } else { $this->db->query("INSERT INTO " . DB_PREFIX . "product_option SET product_option_id = '" . (int)$product_option['product_option_id'] . "', product_id = '" . (int)$product_id . "', option_id = '" . (int)$product_option['option_id'] . "', option_value = '" . $this->db->escape($product_option['option_value']) . "', required = '" . (int)$product_option['required'] . "'"); } }
  5. Не секрет, конечно... Но все же рекомендую самостоятельно ознакомиться. (направление поиска я дал) Причина - СЕО - вещь не секретная, но самостоятельная.
  6. для этого есть robots.txt кроме того, такие ссылки можно (нужно) закрыть js-скриптом
  7. http://www.opencart.com/index.php?route=extension/extension/info&extension_id=7893&filter_search=crop%20image
  8. Свои "творения" проверяю на 8-ке, - если работает с грубыми ошибками - пытаюсь исправить, без всякого рода хаков. Если какая-то мелочь - плюю. А учитывая, что XP уже не поддерживается, то количество ие<9 будет катастрофически :) падать.
  9. В жизни все бывает в первый раз. посмотрите в api fancybox
  10. полагаю, что нужно сделать onСomplete: function(){инициализация зума}
  11. $('#menu > ul').superfish({ hoverClass : 'sfHover', pathClass : 'overideThisToUse', delay : 0, animation : {height: 'show'}, speed : 'normal', autoArrows : false, dropShadows : false, disableHI : false, /* set to true to disable hoverIntent detection */ onInit : function(){}, onBeforeShow : function(){}, onShow : function(){}, onHide : function(){} });
  12. попробуйте пред if return true; - ТОЛЬКО для ТЕСТА!!! Если сработает То нужно смотреть метод $this->user->hasPermission Всякое может быть
  13. Практически каждый контроллер админки должен иметь метод validate private function validate() { if (!$this->user->hasPermission('modify', 'module/НАЗВАНИЕМОДУЛЯ')) { $this->error['warning'] = $this->language->get('error_permission'); }
  14. если есть пробел между суммой и валютой, то explode(' ',$price)
  15. в любом случае нужно смотреть пациента изнутри... про магазин и язык спрашиваю, потому что можно упросить запросы, удалив лишнее соединение таблиц ... но то такое... от лукавого
×
×
  • 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.