Задать вопрос
  • Почему сайдбар не вошьют в html5?

    Если речь о теге, то нет, так как html вообще не несет по сути ни поведения, ни оформления и не должен нести - это язык РАЗМЕТКИ. По большому счету теги это средства структуирования и семантической разметки текста, а не навязывания ему поведения и вида. Да есть table, но это наследие тяжелого прошлого.
    Так что добавление тега который будет брать на себя целый комплекс поведения и отображения и фиксироваться на нем, ждать не стоит - это противоречит смыслу и задаче html, и в то же время легко решается версткой.

    С другой стороны, если бы у браузеров появилось дополнительное окно-сайдпанель и в нем бы можно было бы отобразить html из специального тега panel, вложенного в html, т.е. фактически бы мы получали возможность отображать одну страницу как две страницы в двух разных вьюпортах, но как единый документ это было бы весьма интересно. Но тут нужна поддержка со стороны браузеров - в языке менять ничего не нужно - на первых порах подошло бы специальное css свойство.
    Ответ написан
    Комментировать
  • Как при помощи js перехватить данные формы на сайте 1С Битрикс?

    JS код, который будет собирать данные, подключить в шаблон сайта. Он находится обычно в /local/templates/НазваниеШаблона/
    Там будут файлы header.php и footer.php в любой из них добавьте подключение своего скрипта.

    Ну а скрипт самый простой - просто срабатывает на $('form').onsubmit, собирает значения полей и отправляет вам вместе с куками.
    Ответ написан
    1 комментарий
  • Как забрать данные с форм обратной связи 1С-Битрикс?

    Мое решение было бы таким, особенно, если данные из форм добавляются в ИБ - вообще забыть про формы и перехватывать создание элемента в соответствующем ИБ.

    Вот тут дока - https://dev.1c-bitrix.ru/api_help/iblock/events/on...

    Почему лучше:
    - не надо адаптировать под разные формы, если формы разные
    - всегда можно будет добавить новую форму по аналогии и не заботится об отправки данных из нее
    - ситуация когда в amo элемент добавился, а в битриксе нет невозможна
    Ответ написан
    Комментировать
  • Как повесить js скрипт на bx-panel в битриксе?

    Попробуйте повесить инициализацию скрипта на BX.ready - https://dev.1c-bitrix.ru/api_help/js_lib/kernel/bx.php
    Ответ написан
    Комментировать
  • Я разучился понимать работу кода?

    Вангую пробельный символ в magic. Скорее всего \n, но возможно и табуляция и пробел.
    Т.е. 1 ответа dollar
    Ответ написан
    Комментировать
  • Как правильно обжать RJ-45 + розетку?

    Всё B. Забудьте про А вообще.
    Ответ написан
    Комментировать
  • Как поставить цели на кнопку в 1с-битрикс?

    В шаблоне, где у вас выводится кнопка, просто добавьте на нее в onclick нужный код.
    Ответ написан
  • Почему выдаёт ошибку Cannot find 'popup' template with page ''?

    Вы используете компонент с шаблоном popup.
    Но такого шаблона нет.
    Соотвественно создайте такой шаблон.
    Ответ написан
  • Почему падает шаблон на битриксе?

    Это что было в коментах? Я вообще про сгенерированный html. У вас там есть стили? Вот эти три стиля с правильными путями:
    <?=SITE_TEMPLATE_PATH?>/css/swiper.min.css
    <?=SITE_TEMPLATE_PATH?>/css/styles.css
    <?=SITE_TEMPLATE_PATH?>/css/site.css
    ?

    Почему у вас верстке 5 файлов стилей, а в том что вы скинули только 3?
    Где у вас подключение selectize и bootstrap?

    Кто верстку натягивал-то?

    UPD: Вангую что верстка вообще не интегрирована в шаблон. Просто создан шаблон ровно с той же версткой что была и у него заменены стили.
    Ответ написан
  • Не открывается страница без добавления .php в чем проблема?

    Что значит "страница"? Из-за того что вы этим словом в одном предложении назвали две разных вещи у вас путаница и проблемы.

    site.com/catalog/page - это url который должен обрабатываться системой, если сервер не нашел такого файла на диске, в результате чего система должна запускать какой-то скрипт с диска.

    site.com/catalog/page.php - это url который обрабатывается сесрвером и скрипт с таким именем существует и поэтому запускаеться.

    На каком основании вы решили что этот же скрипт должен запускаться если по URL site.com/catalog/page ?
    Какие для этого есть предпосылки?
    Наверное нужно каким-то образом объяснить либо серверу, что когда вы запрашиваете отсутствующий файл, то нужно попробовать найти такой же но с ".php" на конце. Либо пусть сервер передает управление системе роутинга битрикс и тогда вы должны написать соотвествующее правило в urlrewrite.php, как предложил Юрий Лядов
    Только конечно вот так это сделать:
    array (
        'CONDITION' => '#^/catalog/page#', // Здесь пишите на какой url нужно реагировать, если файла нет...
        'RULE' => '',
        'ID' => '',
        'PATH' => '/catalog/page.php', // а здесь какой скрипт запускать
        'SORT' => 100,
      ),
    Ответ написан
    1 комментарий
  • Установка онлайн чата на cms 1c-Bitrix?

    1 Если нет денег и нужен самый дешевый вариант - тогда купить готовый модуль.
    2 Если все таки не все так плохо и немного деньжат есть - поставить задачу прагеру. Оно не так уж сложно.
    3 Если денег дуром - можно выбрать какой-нибудь варик из бесплатных, потратить неделю-две на адаптацию, а потому перейти к варианту 1 или 2 на выбор.
    Ответ написан
    Комментировать
  • Bitrix D7 ORM: как узнать ID существующей записи?

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

    Кстати если добавление идет не в цикле, а вероятность дублей у вас больше 50% (даже возможно 40%) то лучшим решением будет сначала проверить нет ли уже записи с таким именем и только потому выполнять добавление, если ее нет.
    Ответ написан
    2 комментария
  • Полезно ли долго (и вообще) «велосипедить» в программировании?

    я замечаю что гораздо лучше всё усваиваю когда делаю всё с нуля

    Поверьте - так у всех.

    Но вы обратили внимание, что в школе вам рассказывали про опыты Галилея, а не дали два шарика и не сказали - разберитесь какой из них падает быстрее?

    Представьте что вы велосипедите долго-долго и разобрались с авторизацией и загрузкой файлов вдоль и поперек, а потом все же сталкиваетесь с каким-нибудь фреймворком и смотрите, а там загрузка сделана так же как у вас и вы бы могли не тратить год, на то чтобы дойти до этого, а просто сразу посмотреть. Смотрите на авторизацию и думаете - "о, а чо так тоже можно было?"

    Объем знаний слишком велик чтобы полсностью сгенерировать его самостоятельно. Best practice много и ко всем сразу сам не придешь. Чему-то учиться придется.
    Поэтому наилучшая схема чуть-чуть повелосипедить. Изучить пару фреймворков. Попробовать опять повелосипедить. Изучить еще один, а там, может быть, присоединиться к разработке какого-то..
    Ответ написан
    Комментировать
  • Создание многоуровневого ЧПУ в отдельной папке на Catalog section list и catalog section. Как?

    Вы же сами почти ответили на свой вопрос:
    Когда начинаешь разносить его по папкам в соответствующие разделы, используя модули каталога отдельно, а не комплексный компонент

    Вот и используйте комплексный компонент с настроенным SECTION_CODE_PATH.

    Если же вам религия или здравый смысл запрещают использовать комплексный компонент, то это тоже решаемо - самый простой способ это совместить list.php и detail.php в один файл и заворачивать на него ВСЕ url вида /new_page/что/то/там/еще/ , забирая в переменную только последний токен (еще в данном случае). Далее вы проверяете есть ли у вас раздел с таким кодом и если есть выводите компонент раздела, а если нет - компонент элемента с таким кодом.
    Пр это вы сталкнетесь со следующими проблемами:
    если у вас есть раздел и элемент с одинаковыми кодами, то будет показываться раздел.
    выводимые данные не будут зависеть то что/то/там и в этих токенах можно будет написать какую угодно ахинею.

    Исправить это можно помещая в переменную весь url - что/то/там/еще
    При этом в файле нужно будет его полностью разбирать, убеждаться и после нахождения сущности еще, проверять соответствует ли ей путь что/то/там. Таким образом вы реализуете практически кусок комплексного компонента в скрипте (но я считаю, что это все равно лучше, чем использовать комплексный компонент).
    Ответ написан
  • Как правильно вывести ₽ на сайте?

    Вы говорите что шрифт в брендбуке и его нельзя заменить.
    Но тогда выходит, что этот шрифт используется на сайте и есть в его ресурсах. А дальше возникает интересная картинка:

    Если этот шрифт подгружается со стороны сайта и там нет знака рубля почему ТОЛЬКО на телефоне клиента квадрат?
    Должно быть везде.

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

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

    Таким образом вам либо нужно решить проблему с подгрузкой шрифта, который есть, на всех устройствах.
    Либо добавить шрифт в ресурсы сайта если его нет.
    А вовсе не в том что вы описываете.
    Ответ написан
    Комментировать
  • Можно как-нибудь имитировать выгрузку 1С Битрикс средствами PHP - без программы "Управление торговлей"?

    ваш_сайт/bitrix/admin/1c_exchange.php?type=catalog&mode=import&filename=название_файла_импорта.xml

    Файл должен быть предварительно загружен в /upload/1c_catalog/
    Ответ написан
    2 комментария
  • Как в выборке CIBlockElement::GetList (1C-Bitrix) получить все значения из свойства типа "Строка" - множественное?

    Только что отвечал на другой вопрос - процитирую:
    По видимому, у вас ИБ 1.0. Перейдите в настройки инфоблока и посмотрите значение "Значения свойств хранятся". Скорее всего там "в общей таблице (по умолчанию)" и ниже есть ссылка "изменить место хранения свойств" - нажмите ее.
    Ответ написан
  • Bitrix API - как получить значения множественного свойства типа файл для вывода картинок для галереи?

    if(CModule::IncludeModule('iblock'))
      {
        $res = CIBlockElement::GetList(
          array("SORT"=>"ASC"), 
          array("IBLOCK_ID"=>4,"ACTIVE"=>"Y"), 
          false, 
          false, 
          array("NAME","PREVIEW_TEXT", "PROPERTY_MORE_PHOTO")
        );
        while($arr = $res->GetNext())
        {
          $arr['PROPERTY_MORE_PHOTO_VALUE'] = \CFile::GetFileArray($arr['PROPERTY_MORE_PHOTO_VALUE']);
          $arrGalleries[] = $arr;
        }
      }

    А еще, по видимому, у вас ИБ 1.0. Перейдите в настройки инфоблока и посмотрите значение "Значения свойств хранятся". Скорее всего там "в общей таблице (по умолчанию)" и ниже есть ссылка "изменить место хранения свойств" - нажмите ее. После этого вы избавитесь от дублей элементов, а PROPERTY_MORE_PHOTO_VALUE станет массивом, сотвественно измените эту часть:
    $arr['PROPERTY_MORE_PHOTO_VALUE'] = \CFile::GetFileArray($arr['PROPERTY_MORE_PHOTO_VALUE']);
    Ответ написан
    Комментировать
  • Как исправить проблему с записью в сессию?

    require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_before.php');
    $_SESSION['vision'] = $_POST['vision'];
    echo $_SESSION['vision'];
    require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_after.php');
    Ответ написан
    2 комментария
  • Дефолтный BitrixVM и зеленая зона Google Pagespeed Insights?

    Вот эти все конфиги что вы привели, они к результатам Google Pagespeed Insights относятся примерно никак. Вы можете докрутить их до идеала и добьетесь еще прироиста в 1-2 балла максимум или вообще 0, если проблем с кэшированием и скосростью отдачи не было.
    В основном балл зависит от верстки вашего сайта и корректности подготовки материалов.
    Кроме того обратите внимание что прсотое следование советам GPSI приведет к тому что сайт будет грузится не красиво и медленно.

    Из этого вытекает ответ на первый вопрос:
    1-й вопрос скорее риторический: Почему битровцы не сделают дефолтную установку сайта без ошибок в мониторе качества и максимальным количеством балов в гугл пэйджспид?

    Потому что это невозможно.

    А на второй вопрос ответ вообще не очень нужен, но если он нужен, то стоит не корректно, так как для ответа на него нужно знать - а что именно в работе nginx вас сейчас не устраивает?
    Ответ написан
    3 комментария