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

sv2109

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

    3 686
  • З нами

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

Усі публікації користувача sv2109

  1. Если я правильно вас понял, то я делал - https://opencartforum.com/files/file/525-attribute-select/
  2. самый простой вариант, я писал тут, подключить пользовательский поиск от гугла, если нужна релевантность то это наверное лучшее что можно придумать. пс я тут еще делал для одного своего модуля маленькую модификацию стандартного поиска, добавил возможность выбирать логику поиска. По умолчанию стоит ИЛИ, а если поменять ее на И то поиск покажет только те записи у которых встречаются 2 слова.
  3. Меня больше всего удивляют люди типа: вчера установил опенкарт на Денвер, программирования не знаю, html не знаю, платить не хочу, но скажите как сделать чтобы было вот так круто как вот на этом сайте.. Прикол в том что даже если такому человеку сказать 100% правильное решение, типа напиши вот этот код вот сюда. То потом последует еще 100500 вопросов типа "а куда именно вставить", "а как вставить", "а я вставил а у меня сайт сломался и ничего не работает" итд. Именно для таких людей в первую очередь и создавалась схема. Так как считаю что общаться с такими людьми бесполезно, это пустая трата времени. Пусть или ищут готовое решение или платят кому-то за работу или учат программирование.
  4. Поэтому я и написал "Как решить 90% всех проблем", а не 100%. Для остальных 10% и есть форум, обсуждения итд.
  5. В связи с тем, что на этом форуме постоянно задают вопросы на которые хочется ответить одной и той же фразой.. Решил создать примерную блок-схему, которая поможет решить около 90% всех проблем с опенкартом: http://www.gliffy.co...ublish/4002841/ ПС Если тема размещена не в том разделе, перенесите в более подходящий.
  6. Вот вам готовый модуль http://www.opencart.com/index.php?route=extension/extension/info&extension_id=4295 цена вопроса 50$.
  7. Импортов есть куча.. как платных так и бесплатных, воспользуйтесь поиском по модулям (тут и на оф. сайте) и берите тот который больше подойдет для ваших задач. Насчет фотографий могу предложить свой модуль.
  8. Пример реализации есть в стандартном модуле поиска, вам нужно добавить несколько своих таблиц. Тут 2 варианта:1. Если вы программист то откроете код поиска и допишите нужный функционал самостоятельно. 2. Если вы не программист то заплатите программисту который это сделает за вас. А стандартного решения, которое бы искало по всех таблицах ваших модулей (кто знает какие модули у вас установлены и какая должна быть логика поиска по ним) вы наврядли найдете.
  9. Вижу 2 варианта: 1. Дописать стандартный поиск, добавить к нему поиск по другим таблицам. 2. Подключить сторонний поиск, например от гугла. Там javascript, который нужно просто скопировать и вставить в html. Минусы - будет искать только проиндексированные страницы, реклама (которую можно убрать), плюсы - очень классный поиск с поддержкой морфологии, переводов, релевантности итд., простота установки. У меня на одном сайте он работает.
  10. ну да.. был бы у меня свой русский IP.. куда проще было бы :)Тут еще один вариант надумал, я живу возле границы с Польшей, куча народу туда постоянно ездит за товарами. Возможно попросить кого-то чтобы открыл карточку в каком-то польском банке. Тогда ее по идее можно будет прикрепить в пейпал и не только получать но и выводить на нее деньги..
  11. Тема заглохла? Кто как вышел из ситуации? Что сделал я. Воспользовался советом от Фрилансера. 1. Открыл кошелек kiwi https://w.qiwi.com все делается очень просто - нужно ввести номер телефона и получить пароль с помощью смс. 2. Создал карту Киви Виза Виртуал, для этого нужно закинуть на киви кошелек немного денег. Тут засада, так как ни с помощью вебмани, ни через Приват24, даже через приватбанковскую виза интернет это сделать нельзя.. Но можно сделать через платежный терминал с которого мобильники пополняют (бывший Ibox). Закинул 40 гривен на карту киви, перекинул все на Киви Виза Виртуал так как для прикрепления карты там снимается 1$ + 1,95$. Вернут ли их, не знаю. 3. Поиск русского прокси. Желательно элитного. Для этого вбил в гугл "proxy lists russian" после чего найденные прокси хорошо проверять через http://www.checker.f...oxy.ru/checker/ на этом сайте и списки есть. После проверки желательно зайти на сайт http://whatismyipaddress.com/ и посмотреть действительно ли это русский IP. Когда нормальный рабочий русский прокси найден.. 4. Открыл браузер, который не использую (у меня это ФФ), прописал в настройках сети прокси. Зарегистрировался на пейпал с этого IP, регион указал Россия, адрес, индекс итд выдумал 5. Привязал карту Киви Виза Виртуал к пейпалу. Для этого указал в пейпале данные карты, с которой сняли почти 3 бакса, в полученной от киви смс пришел код подтверждения который нужно вписать в пейпал. Вписал, карта подтверждена. В меню есть вкладка принять платежи, выставить счет итд. Понятно незаконно и нет гарантии, что не забанят на пейпале.. но вроде лучше чем ничего. Других вариантов пока не вижу.
  12. попробуйте кеш очистить (удалить все файлы с папки vqcache), я так раз полтора часа убил потом кеш почистил - заработало..
  13. 1. Даже в том варианте, который прописан в вашем примере происходит то, о чем я писал выше - загрузка класса в переменную и последующее изменение его кода с помощью строчных функций. Просто добавьте строчку echo "modFile: " . $modFile . " - parent: " . $parent; в начало метода modifyParent класса Factory, он как раз и отвечает за изменение родительского класса. 2. Даже если бы это работало то это не вариант. Так как этот механизм создается прежде всего для модулей. А один модуль вообще ничего не может знать о других. Потому и обходятся что у них есть нормальные механизмы переопределения без правки кода.. vqmod там просто не нужен и другие подобные костыли тоже.
  14. Если бы там использовалось классическое наследование то я был бы обеими руками ЗА такой механизм. Покажите мне хоть один фреймворк или движок в котором код класса загружается в глобальную переменную с помощью file_get_contents после чего изменяется с помощью строковых функций после чего загружается с помощью потока. Это не решение, это костыль. Чем-то лучше vqmod-а, чем-то хуже то такой-же костыль. И менять один костыль на другой у меня нету вообще никакого желания. Мало того, заменить полностью один на другой скорее всего не получиться так как кто-то будет продолжать использовать vqmod, кому-то больше понравится это решение.. и придется держать на одном сайте их 2.. потому что одни модули будут работать с одним, другие с другим..
  15. Итак, Override Engine. Более-менее разобрался з этим кодом. Задачу очень усложнило то, что там используется собственный стрим врапер.. а я с ними вообще никогда не работал, начал искать что это и зачем оно тут надо, на это ушло немало времени. Плюс много времени забрали другие изощренные методы.. Ну во-первых, как уже писали выше, для изменения шаблонов используется или str_replace или preg_replace или свой хелпер модификатор, который с помощью позиций: before, after, replace и строчных функций на лету изменяет код шаблонов. Ничего не напоминает? Правильно, тот же vqmod только без возможности кеширования и с другой реализацией.. Дальше. Расширение классов. Для этого используется свой класс Factory, в функции которого входит поиск всех модификаций, загрузка всех классов с проверкой есть ли модификация для данного класса, если нету то загружается этот класс, если есть и она одна то загружается класс наследник (эта модификация), а если таких модификаций несколько, несколько модификаций расширяют один и тот же класс.. то ту начинается самое интересное. Загружается первый наследник с помощью require_once. А для всех следующих сначала получают их код с помощью file_get_contents потом с помощью строковых функций изменяют этот код (меняют класс родитель с базового на последнего наследника), после чего загружают это все с помощью потока, получается аналог ф-ции eval (тут более подробно) Сам процесс замены класса родителя реализован крайне криво. Для этого в цикле по одной букве проверяется каждый символ с помощью методов isWhiteSpace, isLetterOrUnderscore, isLetterOrNumberOrUnderscore итд.. Долго не мог понять что делает этот код пока не запустил его через отладчик. Зачем писать гору запутанного кода там где можно использовать 1 регулярное выражение.. Итог: 1. Для именения шаблонов используется аналог vqmod-а, тот же шарик только в профиль. 2. Для изменения классов используется очень сомнительный подход с кривой реализацией. 3. Добавляется еще один уровень абстракции - Фабрика, которая пропускает через себя все загрузки классов тем самый сильно все усложняет 4. У меня есть большие сомнения насчет скорости работы всего этого 5. Отладка. Не понятно как это все отлаживать, если несколько разных модификаторов переопределят один класс после чего что-то будет работать не так как надо, если все хранится в потоках. Мой отладчик на конструкции require_once( "var://".$var_id ); вообще вырубился.. 6. У меня есть сомнения насчет того как это все будет работать при нескольких десятках разных модификаций.. Мне намного бульше нравится идея с хуками и событиями. Она намного проще, прозрачнее, использует общепринятые подходы, не использует стрим врапперов, не модифицирует код строковыми функциями, намного проще в работе и отладке.
  16. Я уже второй день изучаю этот модуль.. ближайшим временем отпишу что я о нем думаю..
  17. Скрипт не смог подключиться к базе данных. Возможно у вашего хостера был какой-то сбой на сервере базы данных или его перегружали. Напишите в поддержку своего хостера.
  18. Это категорически не правильно! Вся эта тема и создалась для того, чтобы найти некий аналог vqmod-а, который бы дал возможность на программном уровне без правки кода вносить изменения. А тут предлагается полный аналог vqmod-a, мало того имели 1 vqmod, а теперь получим целых 2..
  19. Вы бы это вынесли в отдельную тему. Так и эта тема была бы чище и отклик получили бы больший. По доке. Спорный вопрос. Пользы с нее было бы больше если бы в коде использовались правильные комментарии с использование @param, @return, @var, @todo итд. Подобные док креаторы их вроде подхватывают. А так.. посмотреть, что все контроллеры наследуются от главного контроллера, это и так известно. Та и работать со структурой приходится редко, в основном нужен какой-то конкретный класс, который мне например удобнее открыть в редакторе (у меня NetBeans IDE 7.2), который во вкладке Навигатор покажет список всех методов и свойств этого класса, а по клику можно перейти к конкретному методу и посмотреть его код. Это мое мнение. Но в любом случае за проделанную работу плюсую.
  20. Да, все правильно. Я именно с этого и начал. Взял, на мой взгляд. самое слабое место ОС - невозможность что-либо переопределить без правки кода движка. Придумал реализацию системы хуков и событий. И создал для обсуждения именно этой проблемы эту тему. После чего тема превратилась "чего кому не хватает в ОС" :)Нужно создать отдельную тему для обсуждения всех слабых мест. И каждое такое место обсуждать в отдельной теме, возможно даже в нескольких если есть несколько альтернативных решений.
  21. Нам нужна! Чтобы при следующем открытии редактора не хотелось плевать в монитор, понимая с чем приходится работать! И чтобы работа не превращалась в скучную рутину для зарабатывания денег, а чтобы получать от этой работы элементарное удовольствие, понимая что работаешь с реально хорошим движком, что у этого движка есть реальные перспективы, что он не просто не хуже аналогов, а даже превосходит их по множеству параметров и при этом постоянно развивается в правильном направлении становясь от этого еще лучше. А направление это не задаст большинство, им пофиг.. как-то работает ну и ладно.. Направление в большинстве проектов как раз и задают тех "полтора человека" и именно благодаря им мы и имеет сейчас Друпал, Линукс, Симфони...
  22. У меня 2 варианта: 1. Добавить больше динамики в шаблоны. Приведу пример. Как сейчас все реализовано, например как выводятся табы для товара (написал без условий для лучшего понимания): <div id="tabs" class="htabs"> <a href="#tab-description"><?php echo $tab_description; ?></a> <a href="#tab-attribute"><?php echo $tab_attribute; ?></a> <a href="#tab-review"><?php echo $tab_review; ?></a> <a href="#tab-related"><?php echo $tab_related; ?> (<?php echo count($products); ?>)</a> </div> То есть все жестко прописано в коде и даже местами поменять например описание с атрибутами без правки шаблона не получится не говоря уже о том чтобы что-то добавить.Как можно сделать. Создать массив $tabs, в котором каждый таб будет элементом этого массива, и выводить его с помощью foreach. В этом случае мы на сервере сможем и поменять местами табы переставив элементы массива и добавить новый таб добавив новые элемент и он потом выведется на странице, так как все табы печатаются через foreach. Так же можно и меню выводить и разные списки и например поля для товаров итд. При таком подходе очень много чего можно будет переопределить на сервере с помощью например тех же хуков. 2. Opencart использует паттерн MVC для разделения логики на слои. У каждого слоя своя область применения. Так вот слой Представления в это самый близкий до пользователя слой он специально с создавался чтобы можно было без знания php и баз данных вносить изменения в код. Руками! Открыл нужный шаблон и добавил несколько строк html кода, это сейчас даже школьники делают на уроках информатики. А если человек занимается созданием сайтов то он просто обязан знать самые азы html-а и при необходимости добавить пару строк html кода в шаблон не должно составить для него вообще никакой трудности. А истина скорее всего где-то посередине. И если найти компромисс между этими двумя вариантами то получится то что нужно. Например максимально добавить динамики в шаблоны чтобы можно было программно их изменять. А то что нельзя так сделать (или не выгодно потому что сильно усложнит логику или скажется на производительности) - просто править руками. Тем кто не умеет - учить html :)
  23. То тогда лучше использовать компоненты Симфони. По нескольким причинам. 1. Не знаю насчет ZF, очень давно его изучал и то была какая-то древняя версия, а в Симфони все компоненты сделаны независимо и их можно подключать к сторонним приложениям. 2. Мне кажется, что почти все подобные компоненты более-менее одинаковы по функционалу, да что-то лучше реализовано в одном, что-то в другом но в основном почти тоже самое. 3. Один компонент от Симфони я уже прикрутил и чтобы не создавать зоопарка то лучше и другие брать именно от СимфониЕще в симфони есть компонент Лоадер, который позволяет автоматизировать процесс подключения классов с использованием неймспейсов. Для одного компонента я не стал его подключать, но если будут другие то есть смысл его настроить и все подключать через него.
×
×
  • Створити...

Important Information

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