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

Raino

Пользователи
  
  • Content Count

    100
  • Joined

  • Last visited

Community Reputation

25 Обычный

About Raino

  • Rank
    Продвинутый пользователь

Информация

  • Пол
    Мужчина

Recent Profile Visitors

9,618 profile views
  1. Еще есть вариант для видео с ютуба и аналогичных сервисов подгружать айфрем "полуавтоматически" не сразу при загрузке страницы, а например после скролла на х пикселей вниз. Боты не выполняют действия, фрейм не подгружают, оценку не снижает, а человек, получит нужный контент. Аналогично можно и с картами делать или любыми тяжелыми вещами, которые нужны не сразу, на первом экране, но на странице гарантированно нужны. Так можно мобильные пузомерки до 95-97 выгонять. В тексте просто ставите метку вида <div class=video-frame" data-video-src="код видео на ютубе"></div> ну и вешаете скрип
  2. Есть старая байка на эту же тему. Однажды Джеймса Уатта пригласили найти неисправность в большой паровой машине. Так как хозяева из-за простоя несли большие убытки, и другие инженеры сделать ничего не смогли, они пригласили самого изобретателя паровой машины и обещали заплатить 100 долларов, огромные деньги по тем временам. Уатт трижды обошел вокруг машины, потом попросил большую кувалду. Ему принесли кувалду, он примерился и ударил по кожуху машины. "Теперь запускайте", — сказал он. Машина заработала. После этого начинается самое интересное. Хозяевам стало жалко платить 100 долл
  3. Работая по почасовой ставке Вам оплачивают не фактически затраченное время проведенное за клавиатурой. В данном случае час это не столько единица времени, сколько единица оценки сложности задачи. Вот если Вы боженька кода и способны по дизайнерским макетам ровно за час под ключ сделать роскошный магазин, Вам должны оплатить всего лишь час реально затраченной работы? Сомневаюсь. Схема довольно простая. Вы определились с заказчиком, что сложность задачи 5 часов, по тарифу Х за час, на этом всё, больше никого ничего волновать не должно, именно эти 5 часов по оговоренной ставке будут оплачены. В р
  4. Проверьте в используемых методах оплаты, какой у них указан статус после оплаты.
  5. Если я правильно понимаю, он у Вас отдает не ошибку, а 302-й редирект. Если проявляется только при активном suhosin, то проверьте в конфиге раздел suhosin.filter.action, может у Вас там некие совсем нестандартные настройки.
  6. Не рекомендую. Внешне красивые, а внутри- каша. Встречал прямо в контроллерах и tpl куски кода, которые копируют функционал имеющихся моделей (выборка категорий, идиотское построение хлебных крошек и т.д.). Не стоит никакая красота такого бардака.
  7. Raino

    2 и 3

    Тон больно борзый у топикстартера "мне в лом читать топик, где все разжовано, я спрашивал не совета, бистра мне ответил" и т.д., это что за формат общения? Ну так и отвечать такому чОткому поцыку наверняка тоже "влом" порядочным гражданам. Вообще удивительно, что такой конкретный персонаж не семки щелкает в подворотне, а постит что-то на данном ресурсе. Но я по доброте душевной Вам отвечу, в доступной фанатам абибаса форме, сообразно Вашему образу мышления: 3 отличается в лучшую сторону самым главным параметром и вообще всем остальным. Там релиз на целую единицу больше, 3 по определению круче
  8. Where итоговое должно идти после всех joinов. у вас оно в середине запроса да еще и в кол-ве двух штук. Должно быть так (если в самих джоинах нет ошибок): SELECT DISTINCT ps.product_id, (SELECT AVG(rating) FROM oc_review r1 WHERE r1.product_id = ps.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating FROM oc_product_special ps LEFT JOIN oc_product p ON (ps.product_id = p.product_id) LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id)  LEFT JOIN oc_product_to_category p2c ON (p.product_id = p2c.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id
  9. Journal определенно приносит бабки, даже разработчикам. Т.к. работа с этим шедевром лично у меня идет по тарифу х2 (хотя иногда хочется х20 ставить, за ментальное изнасилование). С третьим видимо придется ставить х30. Плюс людям иногда хочется странного... Кто-то плетки, наручники и кожаные костюмчики покупает, а можно просто попытаться поработать с этим поделием. Не поставить и сидеть на том, что есть из коробки, а именно попытаться впихнуть в него некий желаемый клиентом функционал, которого в нем изначально нет - масса незабываемых впечатлений обеспечена. Эдакое садо-мазо для мозга. И дело
  10. Самое простое и бесплатное- это именно проставлять порядок сортировки нужному товару. Каждому товару в каталоге его проставлять нет необходимости. Поле позволяет ставить отрицательные значения, и если у всех прочих товаров стоит по умолчанию порядок 0, то желаемому ставите -1 и он будет выше прочих. Когда это перестало быть актуальным - поставили ему снова 0 и всё.
  11. Интересная позиция. А если заказчик попросил поправить некий баг, который мешал ему жить и работа заключается именно в поиске и устранения ошибки присутствующей в сборке изначально, но с которой столкнулся первый именно он, то значит нигде нельзя постить багрепорт о ней, чтобы она была исправлена в сборке? Он ведь заплатил, зачем ее исправлять глобально или постить на форумах решение - это ведь будет не честно по такой логике, т.к. кто-то ранее за эту работу уже заплатил, а теперь другие получат бесплатно, так получается?
  12. Если Вы недавно ничего не меняли в контрольной панели хостинга, не создавали там почтовый домен, не пытались его самостоятельно настраивать и т.д., то могу посоветовать гвоздь в голову вбить техподдержке, если она не видит проблему со своей стороны, 2 и 3 строка в приведенном логе четко описывает проблему. Почта делегирована на внешний сервер, на него указывают mx записи и т.д. и при этом на хостинге естественно находится одноименный домен. При отправке сообщения из магазина хост не отправляет его на тот внешний почтовый сервер, куда делегирована почта, не проверяет mx записи, а просто шлет ег
  13. Если увеличиваете время жизни через session_set_cookie_params(XXX, '/') то все сессии умирают сразу в момент создания, т.к. на 2.3 есть ошибка в установке сессионной куки. В этом файле есть код вида if ($key != 'PHPSESSID') { setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly')); } В нем время жизни куки устанавливается неверно. Правильно так if ($key != 'PHPSESSID') { setcookie($key, $this->session_id, time() + ini_get('se
  14. Похоже, что это он и есть, т.к. в модулях с родного сайта главпункта совместимости с симплой как раз нет, да и в целом модуль их родной был кривой как вьетнамский летчик (мне пришлось в свое время для клиента знатно дорабатывать под симплу их модуль ПВЗ). Поэтому на текущий момент покупать сие имеет смысл, только если очень нужно под 1.5 ветку с дефолтным оформлением заказа (маловероятный вариант).
  15. Вам нужно создать свою функцию в модели product, например getMainCategory($product_id) которая будет выбирать из базы данные по ней и потом вызывать ее по необходимости в произвольных местах. public function getMainCategory($product_id) { $query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "product_to_category ptc LEFT JOIN " . DB_PREFIX . "category_description cd ON (ptc.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (ptc.category_id = c2s.category_id) WHERE ptc.product_id = '" . (int)$product_id . "' AND ptc.main_category = '1'
×
×
  • 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.