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

Petr

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

    453
  • З нами

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

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

  1. Ну это бесплатный модуль прайс листа с opencart.com. Собственно нельзя его в xls сохранить и скажем отдавать или рассылать дистрибьюторам, а прикол именно в этом. Я просто с очень многими работаю оптовиками у всех прайсы сделанны очень коряво кроме разве что пары, но вот ни у одного нет фото на против товара в экселе, это очень круто иметь такие прайсы.

  2. 4. Заменяю конфиги на чистые, делаю штатную установку магазина (для того, чтобы руками не прописывать конфиги)

    Вот это можно гораздо упростить. Я лично просто делаю дамп, и архив. далее просто заливаю и разархивирую, конфиги у меня в таком виде

    admin

    <?php
    define('DOMAIN', 'domain.tld'); // указать свой домен без http:// и слеша в конце
    define('DIR_ROOT', str_replace('', '/', realpath('..')) . '/');
    define('DIR_ACP', basename(dirname(__FILE__)) . '/');
    // HTTP
    define('HTTP_CATALOG', 'http://' . DOMAIN . '/');
    define('HTTP_SERVER',  'http://' . DOMAIN . '/' . DIR_ACP);
    define('HTTP_IMAGE',   'http://' . DOMAIN . '/image/');
    // HTTPS
    define('HTTPS_SERVER', 'http://' . DOMAIN . '/' . DIR_ACP);
    define('HTTPS_IMAGE',  'http://' . DOMAIN . '/image/');
    // DIR
    define('DIR_APPLICATION', DIR_ROOT	  . DIR_ACP);
    define('DIR_LANGUAGE',  DIR_APPLICATION . 'language/');
    define('DIR_TEMPLATE',  DIR_APPLICATION . 'view/template/');
    define('DIR_CATALOG',   DIR_ROOT	    . 'catalog/');
    define('DIR_DOWNLOAD',  DIR_ROOT	    . 'download/');
    define('DIR_IMAGE',	 DIR_ROOT	    . 'image/');
    define('DIR_SYSTEM',    DIR_ROOT	    . 'system/');
    define('DIR_DATABASE',  DIR_ROOT	    . 'system/database/');
    define('DIR_CACHE',	 DIR_ROOT	    . 'system/cache/');
    define('DIR_CONFIG',    DIR_ROOT	    . 'system/config/');
    define('DIR_LOGS',	  DIR_ROOT	    . 'system/logs/');
    // DB
    require(DIR_ROOT . 'dbconfig.php');
    

    Корень сайта:

    <?php
    define('DOMAIN', 'domain.tld'); // указать свой домен без http:// и слеша в конце
    define('DIR_ROOT', str_replace('', '/', realpath('.')) . '/');
    // HTTP
    define('HTTP_SERVER',  'http://' . DOMAIN . '/');
    define('HTTP_IMAGE',   'http://' . DOMAIN . '/image/');
    // HTTPS
    define('HTTPS_SERVER', 'http://' . DOMAIN . '/');
    define('HTTPS_IMAGE',  'http://' . DOMAIN . '/image/');
    // DIR
    define('DIR_APPLICATION', DIR_ROOT . 'catalog/');
    define('DIR_LANGUAGE',  DIR_ROOT . 'catalog/language/');
    define('DIR_TEMPLATE',  DIR_ROOT . 'catalog/view/theme/');
    define('DIR_DOWNLOAD',  DIR_ROOT . 'download/');
    define('DIR_IMAGE',	 DIR_ROOT . 'image/');
    define('DIR_SYSTEM',    DIR_ROOT . 'system/');
    define('DIR_CACHE',	 DIR_ROOT . 'system/cache/');
    define('DIR_CONFIG',    DIR_ROOT . 'system/config/');
    define('DIR_DATABASE',  DIR_ROOT . 'system/database/');
    define('DIR_LOGS',	  DIR_ROOT . 'system/logs/');
    // DB
    require(DIR_ROOT . 'dbconfig.php');
    

    Ну собственно основные маленький файл с реквизитами в корне:

    <?php
    // DB этот блок взять из родного конфига и не изменять
    define('DB_DRIVER',   'mysql');
    define('DB_HOSTNAME', 'localhost');
    define('DB_USERNAME', 'username');
    define('DB_PASSWORD', 'password');
    define('DB_DATABASE', 'database');
    define('DB_PREFIX',   'oc_');
    
  3. Ну если моя логика не нравится прислушайтесь к тому что предлагает Marianna, по поводу фоток. Например мне было бы интересно, формировать лист не всех категорий, а определенной выбранной с картинками маленькими напротив каждого наименования. Такого еще никто не делал.

    • +1 2
  4. Например сортировка . Или может быть такое что товары свалены в одну категорию, а в прайсе нужно представить по моделям с подзаголовками. Во общем не плохо было контролировать саму структуру прайс листа.Универсальным было бы решение если бы скрипт находил в товарах повторяющиеся слова или словосочетания. И представлял эти слова в виде подзаголовков к категориям. Например имеем товар "Шарф женский 1", "Шарф женский 2", Шарф Мужской 1, Шарф Мужской 2. В прайс листе на выходе имеем для товаров с повторяющимися словами Подзаголовок Шарфы женские далее перечисление товаров, и то же самое для Шарфов мужских.

  5. Попробуйте с начало поставить чистый OC на новый хостинг, если все норм, то потом если хостинг виртуальный, нужно смотреть на тех. трактористки сервера, количество запросов одновременно работающих и т.д. у меня например сервер рубит все на 50 процессах.

  6. Почитайте например вот этот комментарий на хабре о системе баг трекинга на друпал.орг и все станет на свои места.

    Да я согласен что автор топика приводит гораздо меньше ошибок для конкретной версии, но это все равно не является объективной оценкой самого качества движка, т.к. в основном рапортуют люди, о багах не факт что пред идущее баги были закрыты обновленной версией. Если объектно оценивать, то должен быт change log который закрывал бы все баги предидущих версий, я такого не нашел.

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

    Ну тут смысл спорить, есть такая пословица "Если хочешь что то сделать хорошо сделай это сам.." - просто open source проекты рассчитаны на гибкость в решении задач, некоторые модули сделаны просто отлично, иногда даже спрашиваешь себя, зачем в новой версии оставлять старое, ведь столько хорошего понаписано, которое просто не может не понравится ну или вызвать отрицательные эмоции при пользовании. Я подвожу к мысли что сама эволюция движка, мне кажется должна в новые сборки включать самое лучшее, а не оставлять все по старому, тогда и не нужно будет множество модулей покупать которые используют vqmod. А если я бы заказывал сайт то ТЗ которое мне бы понадобилось вытянуло бы в в сумму гораздо большую, чем купить это в виде модулей у сторонних разработчиков. При этом покупая модуль он сделан максимально конкурентоспособным, а заказывая функционал иногда детали которые у тебя сидят в голове и кажутся очевидными, до разработчика просто не доходят :-) ну это и понятно. После покупки разумеется хочется привнести в модуль что то, что сделало бы его еще лучше, так даже с одной стороны помогаешь разработчику улучшить продукт, результат прямой лучше продукт = больше продаж. Для доработки купленного модуля разумеется нужен программист если в штате нет, соответственно человеку нужно разобраться в коде потратить время, в итоге выходит гораздо дороже самого модуля.

  8. Август 2011: 4153 незакрытых багов (22 181 всего — почти вдвое больше, чем два года назад), апгрейд по-прежнему затруднён для многих пользователей, застрявших на Drupal 6, близкий к нулю прогресс в разработке Drupal 8.

    Мне кажется у opencart меньше? :-)

  9. Vqмод очень кривое средство, но для обычных юзеров это панацея. Я просто до того как на opencart перейти пользовался Virtuemart и osCommerce. Я не программирую и не пишу модули, поэтому рассматриваю все со стороны удобства. Большинство модулей которые мне нужны обычно добавляли всякие строчки кода типа названия пунктов и и т.д. Гораздо реже встречаются replace.

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

  10. В друпаел очень много багов которые разработчики просто игнорируют, около месяца назад читал статью на Хабре, то что последняя стабильная версия это 5 или 6, точно уже не помню, после этого галимые сборки пошли с кучей багов. Там даже подсчет был что ст такой кучей багов друпалу просто не вывезти, либо разработчиков нанимать сотнями либо работать 24 часа . Может из за этого Даниель обеими рогами в земле.

  11. Данный скрипт почему то не дает исполнятся другим скриптам на странице... Почемуууу??

    (function($){
    
    $(document).ready(function(){
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////		
    	   
      // -------------------------------------------------------------------------------------------------------
      // Acilir Menu
      // -------------------------------------------------------------------------------------------------------
     
      if ( ! ( $.browser.msie && ($.browser.version == 6) ) ){
       $("ul#topnav li:has(ul)").addClass("dropdown");
      }
     
      $("ul#topnav li.dropdown").hover(function () {
    			
       $('ul:first', this).css({visibility: "visible",display: "none"}).slideDown('normal');
      }, function () {
      
       $('ul:first', this).css({visibility: "hidden"});
      });
     
     
      $("div.prod_hold").hover(function () {
    			
       $('.info', this).css({visibility: "visible",display: "none"}).slideDown('normal');
      }, function () {
      
       $('.info', this).css({visibility: "hidden"});
      });
     
      $("li.cat_hold").hover(function () {
    			
       $('.info', this).fadeIn(300);
      }, function () {
      
       $('.info', this).fadeOut(200);
      });
     
      $("li.side_cart").hover(function () {
    			
       $('#cart', this).fadeIn(500);
      
       $('#cart').addClass('active');
     
      $.ajax({
       url: 'index.php?route=checkout/cart/update',
       dataType: 'json',
       success: function(json) {
        if (json['output']) {
    	 $('#cart .content').html(json['output']);
        }
       }
      });  
     
      $('#cart').bind('mouseleave', function() {
       $(this).removeClass('active');
      }); 
      
      
      }, function () {
      
       $('#cart', this).fadeOut(200);
      });
    
      $(".main_menu li").hover(function () {
    			
       $('.secondary', this).fadeIn(500);
      }, function () {
      
       $('.secondary', this).fadeOut(200);
      });
     
    
     
      // -------------------------------------------------------------------------------------------------------
      // Tipsy - tooltips jQuery eklentisi
      // -------------------------------------------------------------------------------------------------------
     
      $('a.wish_button, a.compare_button, a#button-cart, a.twitter_follow').tipsy({gravity: 's', fade: true, title: function() { return this.getAttribute('original-title').toUpperCase(); }});
      $('#service_links li a').tipsy({gravity: 'e', fade: true, title: function() { return this.getAttribute('original-title').toUpperCase(); }});
     
     
      // -------------------------------------------------------------------------------------------------------
      // slayt ogeleri
      // -------------------------------------------------------------------------------------------------------
     
      $("ul.categories li, #sidebar ul.secondary_menu li").hover(function(){
      $("a", this).stop().animate({left:"15px"},{queue:false,duration:200});
      }, function() {
      $("a", this).stop().animate({left:"0px"},{queue:false,duration:200});
      });
     
      // -------------------------------------------------------------------------------------------------------
      // solma ogeleri
      // -------------------------------------------------------------------------------------------------------
     
      $(".banner a img").hover(function() {
      $(this).stop()
      .animate({opacity: 0.6}, "medium")
      }, function() {
      $(this).stop()
      .animate({opacity: 1}, "medium")
      });
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////
    });
    
    })(window.jQuery);
    //  Asagida olmayan jQuery scriptler
    
  12. Если я правильно все понимаю то любые способы доставки предполагают конечный выбор покупателем при оформлении. Мне нужно что бы я указывал вес товара, а цена показывалась конечном покупателю уже с учетом наценки за доставку, к примеру товар стоит 10$ и весит 5 кг(1 кг = 1$). Соответственно цена которая отобразится на сайте будет равна 10$+5$ = 15$. + к этому стандартные способы которые есть на сайте.

  13. Добрый день, может БД делать сразу с индексами? Я вот планирую для БД сделать запрос типа:

    ALTER TABLE `oc_oc_category` ADD INDEX ( `parent_id` ) ;
    ALTER TABLE `oc_category` ADD INDEX ( `top` ) ;
    ALTER TABLE `oc_category` ADD INDEX ( `sort_order` ) ;
    ALTER TABLE `oc_category` ADD INDEX ( `status` ) ;
    ALTER TABLE `oc_category_description` ADD INDEX ( `language_id` ) ;
    ALTER TABLE `oc_category_to_store` ADD INDEX ( `store_id` ) ;
    ALTER TABLE `option` ADD INDEX ( `sort_order` ) ;
    ALTER TABLE `oc_option_description` ADD INDEX ( `name` ) ;
    ALTER TABLE `oc_option_value` ADD INDEX ( `option_id` ) ;
    ALTER TABLE `oc_option_value_description` ADD INDEX ( `option_id` ) ;
    ALTER TABLE `order` ADD INDEX ( `customer_id` ) ;
    ALTER TABLE `oc_product` ADD UNIQUE INDEX ( `oc_product_id` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `model` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `sku` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `upc` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `manufacturer_id` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `sort_order` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `status` ) ;
    ALTER TABLE `oc_product` ADD INDEX ( `date_available` ) ;
    ALTER TABLE `oc_product_option` ADD INDEX ( `option_id` ) ;
    ALTER TABLE `oc_product_option_value` ADD INDEX ( `oc_product_option_id` ) ;
    ALTER TABLE `oc_product_option_value` ADD INDEX ( `oc_product_id` ) ;
    ALTER TABLE `oc_product_option_value` ADD INDEX ( `option_id` ) ;
    ALTER TABLE `oc_product_option_value` ADD INDEX ( `option_value_id` ) ;
    ALTER TABLE `oc_product_tag` ADD INDEX ( `oc_product_id` ) ;
    ALTER TABLE `oc_product_tag` ADD INDEX ( `tag` ) ;
    ALTER TABLE `oc_url_alias` ADD INDEX ( `query` ) ;
    ALTER TABLE `oc_url_alias` ADD INDEX ( `keyword` ) ;
    ALTER TABLE `user` ADD INDEX ( `username` ) ;
    ALTER TABLE `user` ADD INDEX ( `password` ) ;
    ALTER TABLE `user` ADD INDEX ( `email` ) ;
    
×
×
  • Створити...

Important Information

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