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

chukcha

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

    20 408
  • З нами

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

Коментарі блогу, опубліковані користувачем chukcha

  1. 12 минут назад, Shureg сказал:

    На "боевом" сайте никто не будет этот блок выводить постоянно, только на время отладки. 

    Не совсем так

     

    Этот блок появляется толь.ко при авторизации в админке (токен есть?)

    Заходим на указанный сайт и видим!!! Нет ничего!!! (ща услышим - я отключил)
    Может я не там смотрю?

    Как такое может быть?
    Это результат кеширования, т.е
    пользователь(админ) зашел в админку и на сайт - cтраница закешировалась с его кодом.

     

  2. 31 минуту назад, lexxkrt сказал:

    систему модулей/расширение я бы предложил сделать в одну папку, один модуль одна папка, т.е. тут же контроллер, рядом файл модели рядом языковые файлы и вьюхи.

    смотрите в 4-ку
    По идее почти так, например стандартные модули от опенкарт собраны в

    extension\opencart\
     

  3. 31 минуту назад, sv2109 сказал:

    И все работает, и можно делать хоть 2 вложенности хоть 3 хоть даже больше. 

    Не... ведь этот массив надо сформировать..
    Это сложнее, чем тупо линейно

    Я прекрасно вас понимаю, но это идеология Даниеля

  4. Цитата

    А чтобы форму создавать как-то так:

    ага, еще и по табам разбить

    И сделать рендеринг с кучей ифов, которых так не любят в шаблонах, потому как это Логика


    $query = $this->db->select('*')->from('product')->where(...)->limit(10);

    а где же фильтры?
    А как удалять/заменять не нужное из фильтра

    Не проблема понять синтаксис любого билдера

    Вам удобно? пользуйте свой

    Будет в движке? Сильно соменваюсь
     

    Цитата

    Дублировать тысячи строк кода это..


    Кто вам мешает использовать макросы в твиге?
     

  5. 3 часа назад, SooR сказал:

    Изменения больше косметические, вот одно из них:

    
    $data['add'] = $this->url->link('customer/customer|form', 'user_token=' . $this->session->data['user_token'] . $url);

     

    То есть вызов метода по ссылке через вертикальную черту. Зачем? Не знаю, визуально отделить файл/класс от метода. Стоит ли это изменение совместимости с модулями - однозначно нет. 

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

    Не толко визуально - explode - и не надо проверять весь путь на file_exists

  6. 12 минут назад, sv2109 сказал:

    НО никак нельзя изменить сам шаблон. 

    можно

     

    14 минут назад, sv2109 сказал:

    а как изменить контроллер через события? Никак.

    легко
     

     

    14 минут назад, sv2109 сказал:

    Как изменить напр. sql запрос в модели если это нужно? Опять никак.

    тут - да


     

  7. 6 часов назад, MaxD сказал:

    Только на днях заметил, что начиная с 3.0.3.5

    Это было и в 2.3

    Вариант хорош для единичного случая, когда ваше событие  - одно, а если их несколько?

    Вот вам пример

    getProductcs


    точнее - вызов контроллера thumb, в который передаются
    https://github.com/opencart/opencart/blob/d1546a0970976498603fa27d76fe8fdc065fdcbd/upload/catalog/controller/product/category.php#L205

     

    Но Даниель противится передать туда сырой product_info ($result);

  8. - добавлена схема для базы данных
    была и в тройке
    Нужна  при смене версии

     

    - появилась новый шаблон 

    не только шаблоны но и контроллеры

    Вся папка "встроенных" расширений

    в

    /extension/opencart/catalog


    Свои можете добавлять

    /extension/sv2109/catalog

     

     

     

     

     

     

     

  9. 7 часов назад, ocdev_pro сказал:

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

    не рассказывайте сказки. Я никогда не был поклонником сего чуда. К сожалению, не все решения можно сделать "хуками". И об этом не однокроатно раз пишут в мастер ветке гита. Спрячьте ваши фантазии подальше.

    • +1 3
  10. 10 минут назад, SergeTkach сказал:

    Штука с последствиями. Там же не вписать DB_PREFIX, а не все при установке оставляют префикс по умолчанию oc_ для таблиц в базе.

    Лучше писать запросы в install.php или вызывать метод модели модуля в install() контроллера модуля. В любом случае все запросы должны учитывать DB_PREFIX конкретного сайта.

    неправда, если посмотрите в код

     

    if (preg_match('/;\s*$/', $line)) {
    								$sql = str_replace(" `oc_", " `" . DB_PREFIX, $sql);
    
    								$this->db->query($sql);
    
    								$sql = '';
    							}



    Но это уже давно забы(и)тое

    • +1 1
  11. Если вы добавляете, например языковые переменные и свой функционал, то попробуйте его объединить в один блок

    пример
     

            <operation error="skip">
                <search index="0">
                <![CDATA[function index(]]>
                </search>
                <add position="after">
                <![CDATA[			$data['mymodule'] = 'mymodule';]]>
                </add>
            </operation>
            <operation error="skip">
                <search index="0">
                <![CDATA[$data['price']]>
                </search>
                <add position="after">
                <![CDATA[			$data['myprice'] = 'myprice';
    			]]>
                </add>
            </operation>
    

    делаем так
     

            <operation error="skip">
                <search index="0">
                <![CDATA[$data['price']]>
                </search>
                <add position="after">
                <![CDATA[			$data['myprice'] = 'myprice';
    						$data['mymodule'] = 'mymodule';
    			
    			]]>
                </add>
            </operation>




    Не привязывайтесь к значениям  языковых переменных
     

            <operation error="skip">
                <search index="0">
                <![CDATA[$_['text']     = 'чей-то текст';]]>
                </search>
                <add position="after">
                <![CDATA[$_['text_my']     = 'мой текст';
    
    			
    			]]>
                </add>
            </operation>
    
    Делаем
            <operation error="skip">
                <search index="0">
                <![CDATA[$_['text']]]>
                </search>
                <add position="after">
                <![CDATA[$_['text_my']     = 'мой текст';
    
    			
    			]]>
                </add>
            </operation>
    

     

    • +1 1
  12. @Vladzimir Как вам?
     

    <?php
    class ControllerShippingXshipping extends Controller {
        private $error = array();
        
        public function index() {   
            $this->load->language('shipping/xshipping');
    
            $this->document->setTitle($this->language->get('heading_title'));
    <?php
    // *    @copyright    OPENCART.PRO 2011 - 2017.
    // *    @forum    http://forum.opencart.pro
    // *    @source        See SOURCE.txt for source and other copyright.
    // *    @license    GNU General Public License version 3; see LICENSE.txt
    
    class ControllerExtensionShippingXshipping extends Controller {
        private $error = array();
        
        public function index() {   
            $this->load->language('extension/shipping/xshipping');

    https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=13525

     

    Где пруф?

    • +1 5
  13. 13 минут назад, GetWeb сказал:

    Опа, мой скрипт пригодился)

    Кстати переменная оригинального языка  (lang: "ru",) не просто так выведена, в случае если у сайта есть несколько родных вариантов перевода в эту переменную следует записать текущий язык и если он совпадает с тем на который должен переводить виджет, то будет оставлен оригинальный перевод, то есть виджет не ограничивает стандартный функционал ни в чем. Все думал написать модуль для opencart, но так как опыта в бекенде мало не хочу позориться)

    Как вариант, хранить не в куках,  а локал сторадж
    Т по онлоад грузить еше свой собственный силь, который отрубит onhover стилизацию

  14. 30 минут назад, Rassol2 сказал:

    Уже в топе, не думаю что в этом плане кто то ушемле.

    Не...

     

    ту вопрос есть в топе или нет

    Это был вопрос к покупателю, скорей всего
    ЗАЧЕМ три покупки - 9 скачиваний.

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

Important Information

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