В интернет-магазин Кенгуру () продолжаем искать программиста PHP со знанием 1С-Битрикс. Нам нужен человек в офис в Москве. Что нужно будет делать:
Поддерживать и развивать некоторое время 2 сайта интернет-магазины, плюс небольшие внутренние проекты
Мигрировать с 1С-Битрикс на Symfony 5 (composer, doctrine, twig, DI, вот это всё) уже в этом году. Даже если для вас Symfony/Laravel/Yii темный лес - ничего страшного, мы вам исправим профессионально деформированный битриксом мозг.
Скорее всего у вас стоит параметр CACHE_GROUPS=Y - разные кеши для разных групп пользователей. Если вам не нужно принципиальное разделение контента по группам пользователей, то всегда нужно отключать. Но проблема в том, что не происходит сброса кеша при изменении элемента, почему-то не срабатывает очистка управляемого кеша.
Один элемент каталога в разных разделах, Не могу привязать элемент каталога к разным разделам
Проверка системы вам ничего и не выдаст, потому что не проверяет работу разделов, компонентов или модулей. Активность техподдержки вам тоже не нужна. Вообще, вы сделали всё правильно и должно работать, но возможно у вас используется какой-то нестандартный компонент для вывода элементов из инфоблока, который игнорирует эту привязку к дополнительным разделам?
Какой тип свойства лучше использовать - список или привязку к элементу?
Справочник через highload имеет смысл, если данные у вас часто меняются или могут меняться - им удобнее управлять и программно и вручную, более гибкий механизм, на значениях можно хранить кучу дополнительной информации. Допустим, для цвета вы можете прописать не только название, но и hex-код, синонимы, загрузить картинку с примером и т.д. А списки они скорее для данных, которые не меняются никогда и небольшой набор. Списком из сотен значений уже проблематично управлять.
Нужна разработка интернет-магазина на битрикс, Нужна разработка интернет-магазина на битрикс
* 4 из 11 страниц вашего ТЗ - это таблица со структурой каталога, которая с вероятностью 100% еще до запуска будет меняться. Незачем это всё расписывать, нужно описывать функционал. По такому ТЗ вам сделают не то, что вы ожидаете. Вам надо найти адекватного разработчика и вместе с ним написать нормальное ТЗ по существующим макетам. Плюс потребуется оптимизация - часть сложного для реализации функционала можно отодвинуть на более поздние сроки, чтобы раньше запуститься с минимально необходимым набором функционала. * Когда в товаре вы предлагаете выбор и цвета и размера - это будет ад для разработчика и 1Сников. К тому же смена цвета зачастую для покупателей неочевидна, может кто-то ищет синие туфли для девочки, а видит красные - он просто не допрет, что есть смена цвета в товарах. Поэтому наглядней было бы показывать товары всех цветов как обычные товары, а в самом товаре предлагать только выбор размеров. Люди к этому больше привыкли, чем к выбору цвета. * В макетах для мобильной верстки вы предлагаете явно механизм с десктопной версии - . Нет на мобильных сайтах события наведения, только тач и скролл. Каким образом пользователь получит такую картинку? При таче на товар он ожидает переход на товар, а не появившиеся выбор размера и цвета
Но вообще проект интересный, конечно, особенно, учитывая, что вы не в Москве, а как я понял, в Ростове-На-Дону. На дешево не будет. Если вам будут предлагать ценник меньше 100 тр - это какой-то минимальный базовый функционал, лишь бы работало. Объективна цена на такой проект тыщ 500 в течение 3-4 месяцев и только после этого можно будет запускаться. А потом еще столько же в течение полугода на прикручивание всякой ерунды, развитие, поддержку. Вы же наверняка будете проект рекламировать, подключать всякие маркетинговые штуки, ретаргетинг, триггеры и т.д. С 1С никогда ничего не работает сразу нормально из коробки как хотелось бы - тоже отдельные пляски с бубном начинаются.
Отключите модуль компрессии, может поможет. Но вообще, если бы были проблемы с сжатием, то у вас бы ни одна страница не работала, браузер либо показывал бы ошибку обработки сжатия, либо крокозябры бинарные
innodb_buffer_pool_size у вас подозрительно мал, обычно под него выделяют 80-90% оперативной памяти. Но так как у вас MySQL не в выделенном контейнере/сервере, необходимо оставить память для php, веб-сервера и прочего. query_cache_size обычно 64 Мб или 128 Мб, если это дает прирост производительности. Но часто его ставят 0, чтобы не использовать кеш запросов вообще, потому что на некоторых проектах запросы не повторяются и кеш только вытесняется, не давая хоть какого-то результата.
Вообще, в битриксе в модуле производительности есть страница, посвященная MySQL. Там все параметры толково расписаны и есть рекомендации. Главное по глобальным буферам влезть в оперативную память.
Крупный интернет-магазин, порядка 20 тысяч товаров и 60 тысяч SKU, несколько оффлайновых салонов в крупнейших городах России. Сегмент - премиум одежда. Ищем программиста для работы над нашими проектами. Сейчас у нас 3 своих сайта.
Проект активно использует Redis, поэтому знакомство с ним обязательно. Понимание, хэш-таблиц, сортированных списков, оптимизация производительности, объединение и пересечение выборок данных. Наши сайты расположены на двух современных физических серверах под управлением Proxmox, если вы знакомы с этой системой, понимаете что такое контейнеры и имеете базовые навыки администрирования Linux - это будет плюс. Ну и знание 1С-Битрикс, D7, ООП само собой обязательны. Отличное знание модулей: sale, catalog, iblock, highloadblock. Вы должны уметь написать свой компонент и модуль на D7. Контроль версий git.
На начальных этапах работы будем давать небольшие задачи, чтобы вы смогли въехать в проект, познакомиться с его архитектурой, ну и оценить качество вашей работы. Если вы всегда на связи, готовы быстро взять и выполнить задачу, корректно прокомментировать код, используете грамотный английский для именования переменных и полей - мы подружимся и это будет долгосрочная работа. Если вы пропадаете, не отвечаете на сообщения в мессенджерах, сдаете 15-минутные правки на следующий день, пишите $arBrends вместо $arBrands или $peremennaya вместо $variable - нам не по пути.
Писать в лс, сразу указывайте ваши предпочтения: рейт или фикс в месяц, объем который сможете взять, ваш часовой пояс, можете указать пару проектов, которыми гордитесь и тогда сразу указывайте что именно в них вы делали. В теме можно не отвечать. Компании/студии/агентства/интеграторы не интересуют, только реальный физический человек, которого можно пощупать.
Пакетное вычисление и обновление цены у очень большого количества товаров
Александр Остроумов написал: Скрипт обращается напрямую в БД и сразу по 1000 товаров обновляет за один запрос
При таком решении у вас не работает (на текущий момент) фильтрация и сортировка по ценам с учетом валюты. С выходом ближайших обновлений не будет работать еще и сортировка по ценам торговых предложений.
Пока не сталкивался с такой проблемой. Может быть речь про фасетный индекс?
Неверные данные по активности элементов после изменения активности напрямую в БД
Столкнулся с проблемой активности элементов, если активность элементов изменена напрямую в БД. В инфоблоке около 60 тысяч товаров и каждый час им переустанавливается активность, исходя из пришедших данных. Естественно, загонять в цикл CIBlockElement::Update() и устанавливать активность для каждого элемента - плохой вариант. Поэтому был написан скрипт, который меняет активность элементов прямо в БД в таблице b_iblock_element массово. Но потом в админке и в работе API начинаются глюки: Вот все товары раздела без учета активности: Но если в фильтре установить отбор только активных товаров - их не покажет, их будето нет. Также и CIBlockElement::GetList() не возвращает активные элементы Очевидно, это какой-то кеш, то ли MySQL, то ли в битриксе. Подскажите, куда копать, как очищать такой кеш после работы с БД напрямую? Очистка всего кеша битрикса не помогает.
Всё, разобрался. В выборке еще участвует индекс. Запрос к бд формируется такой:
Код
SEL ECT COUNT(DISTINCT BE.ID) as CNT
FR OM
b_iblock B
INNER JOIN b_lang L ON B.LID=L.LID
INNER JOIN b_iblock_element BE ON BE.IBLOCK_ID = B.ID
INNER JOIN b_iblock_27_index FC on FC.ELEMENT_ID = BE.ID
WHERE 1=1
AND (
(FC.SECTION_ID = 5405 AND FC.FACET_ID = 1 AND FC.VALUE_NUM = 0 AND FC.VALUE in (0))
AND ((((BE.IBLOCK_ID = '27'))))
AND ((((BE.ACTIVE='Y'))))
)
AND (((BE.WF_STATUS_ID=1 AND BE.WF_PARENT_ELEMENT_ID IS NULL)))
Проблема решается обновлением индекса с помощью функции
Это не проблема битрикса, а конкретной реализации модального окна. Такие ошибки могут быть, если неверный указатель для контента окна. Например, вы контент для окна указали в div с одним идентификатором, а окно открыть пытаетесь указав другой несуществующий идентификатор div. Поэтому и ошибка - скрипт модального окна не может найти контент для окна по указанному идентификатору.
Портал недвижимости pn39.ru написал: Всем привет! У нас с облаком такая вот ерунда: деактивировал хранилище, а ссылки картинок все равно формируются на облако... хотя по логике должны на локальный сервер вести.
Возможно, это касается старых картинок? В управлении облачными хранилищами есть инструмент переноса файлов с локального сервера в облако и с облака на локальный сервер. Сделайте перенос существующих файлов из облака на сервер, тогда и ресайзы картинок будут формироваться на локальном сервере.
1С-Битрикс от 800 рублей | Консультация 0 рублей | Гарантия 1 год, Не врем клиентам.
Наталья, мне кажется, вы немного не понимаете о чем пишите. Программисты 1С-Битрикс не дорабатывают конфигурации УТ и вообще не программируют в 1С. Ваши зарплатные предложение для работы в офисе в Москве мягко говоря ниже рынка, а предложение частично удаленно за половину зарплаты вообще выглядит как оскорбление.
Хотим скрыть публичную часть сайта от всех пользователей и поставить страницу заглушку., Хотим скрыть публичную часть сайта от всех пользователей и поставить страницу заглушку.
Закройте доступ в корневом разделе для неавторизованных и пользователей. Разрешите для всех остальных. И в шаблоне сайта можно сделать проверку пользователя на группы, показывать вместо сайта заглушку, если хотите скрыть сайт совсем.
Требуется программист для доработки компонента bitrix:catalog.smart.filter на ред. "Старт", Компонент bitrix:catalog.smart.filter нужно настроить на работу с торговыми предложениями на ред. "Старт"
Если у вас в поле хранятся числа, то почему бы не использовать тип "Число"? Как вариант, можно в шаблоне сделать doubleval() при выводе значения, тогда нули уберутся.