Массовая генерация символьного кода в Битрикс

Решение проблем с сайтом на Битрикс

Честно сдернуто со страницы оригинала для удобства поиска )

Генерация символьных кодов для разделов и элементов инфоблоков
Задача:
С генерировать символьные коды для разделов или элементов инфоблока – если они не заданы

Используя скрипт предложенный Николаем Ефремовым делаем так:

1/ открываем командную строку PHP – Рабочий стол – Настройки – Инструменты – Командная PHP-строка [/bitrix/admin/php_command_line.php]
Скопировать в область кода следующий скрипт

if(!CModule::IncludeModule("iblock"))
{
   echo "Error with iblock module!";
   die;
}
$arParams['IBLOCK_ID'] = 17;
$arParams['LIST_CNT'] = 50;
$arParams['IS_ADD_RAND'] = false;
$arParams['TYPE_WORK'] = 'section'; // {section | element}


$arOrder = array(
   "sort" => "inc",
);

$arFilter = array(
   "IBLOCK_ID" => $arParams['IBLOCK_ID'],
   "IBLOCK_LID" => SITE_ID,
   //"CODE" => "",
   "CODE" => false
);

$arTransParams = array(
   "max_len" => 100,
   "change_case" => 'L', // 'L' - toLower, 'U' - toUpper, false - do not change
   "replace_space" => '-',
   "replace_other" => '-',
   "delete_repeat_replace" => true
);

if($arParams['TYPE_WORK'] == 'section'){
   //for SECTIONS
   $db_elemens = CIBlockSection::GetList($arOrder, $arFilter, false);
   $db_elemens->NavStart($arParams['LIST_CNT']);
   echo '<pre>';
   while($ar_res = $db_elemens->GetNext())
   {
      $transName = CUtil::translit($ar_res["NAME"], "ru", $arTransParams);
      if($arParams['IS_ADD_RAND']){
         $transName = $transName.$arTransParams["replace_space"].$ar_res["ID"];
      }
      $arPropArray = Array( "CODE" => $transName );
      
      $el = new CIBlockSection;
      $res = $el->Update($ar_res["ID"], $arPropArray);
      echo "result for <b>".$ar_res["NAME"]."</b> is <b>".$transName.'</b>'.($res?" and OK":" and failed")."\r\n";
   }
   echo '</pre>';
}elseif($arParams['TYPE_WORK'] == 'element'){
   // for ELEMENTS
   $db_elemens = CIBlockElement::GetList($arOrder, $arFilter, false, array("nTopCount" => $arParams['LIST_CNT']));

   $i = 0;
   echo '<pre>';
   while($obElement = $db_elemens->GetNextElement())
   {
      $ar_res = $obElement->GetFields();
      
      $transName = CUtil::translit($ar_res["NAME"], "ru", $arTransParams);
      if($arParams['IS_ADD_RAND']){
         $transName = $transName.$arTransParams["replace_space"].$ar_res["ID"];
      }
      $arPropArray = Array( "CODE" => $transName, );
      
      $el = new CIBlockElement;
      $res = $el->Update($ar_res["ID"], $arPropArray);
      echo "result for <b>".$ar_res["NAME"]."</b> is <b>".$transName.'</b>'.($res?" and OK":" and failed")."\r\n";
   }
   echo '</pre>';
}

2/ Определяемся с инфоблоком – ниже в скрипте в параметр $arParams[‘IBLOCK_ID’] нужно записать его ID

3/ Решаем, нужно ли нам генерировать совсем уникальные коды. Можно вначале пройтись и создать не повторяющиеся, а для повторяющихся добавить в конце ID. За это отвечает параметр $arParams[‘IS_ADD_RAND’] – {true|false}

4/ Указываем шаг выборки – параметр $arParams[‘LIST_CNT’] – большим не стоит делать, максимум 100 элементов за раз

5/ Настраиваем параметры транслита. За это отвечает массив $arTransParams

$arTransParams = array(
   "max_len" => 100,
   "change_case" => 'L', // 'L' - toLower, 'U' - toUpper, false - do not change
   "replace_space" => '-',
   "replace_other" => '-',
   "delete_repeat_replace" => true
);

6/ Указываем для чего будем проводить генерацию – для разделов или для элементов – параметр $arParams[‘TYPE_WORK’] – возможные значения – {section | element}

7/ Жмем кнопку выполнить – прогнать скрипт нужное количество раз

Javascript – настроить фильтр (кейс: умный фильтр Битрикс) для выбора (checkbox) только одного раздела фильтра.

Javascript - настроить фильтр (кейс: умный фильтр Битрикс) для выбора (checkbox) только одного фильтра.

Понадобилось сделать так, чтобы была возможность выбрать только какой-то один фильтр, при этом, второй фильтр одновременно с выбранным выбрать было нельзя. ))

Масло масляное, но в группах товаров на сайте есть взаимоисключающие друг друга фильтры.

Для реализации этого в Битрикс, в шаблоне вывода умного фильтра, добавил для input type=”checkbox” в цикле foreach поэлементного вывода дополнительный атрибут

data-filtername="<?=$arItem["NAME"]?>"

где <?=$arItem[“NAME”]?> – это не название пункта фильтра, а название раздела фильтра. Ну, например, раздел фильтра “Цвет” имеет имеет несколько элементов – цветов. Так вот, в каждом элементе раздела “Цвет” будет поле атрибута с названием “Цвет”, т.е., data-filtername=”Цвет”.

По сути, если элементы фильтра выводятся не в цикле, то атрибут вставляется в нужные input checkbox в HTML.

И там же в шаблоне добавил скрипт для реализации функционала:

<script>

// для первого раздела фильтра
let filterCheck = document.querySelectorAll("input[data-filtername='Одно']");  // выбираем все input с нужным атрибутом
// проходим циклом по всем элементам для проверки: если в другом разделе фильтра уже выбран какой-либо пункт, то, при клике на нашем checkbox, снимаем с него галку и выводим предупреждение

filterCheck.forEach(function(item) {
item.onclick = function() {
if (document.querySelector("input[data-filtername='Другое']:checked")) {
alert('Простите, но невозможно выбрать в фильтре Одно и Другое одновременно.')
item.checked = false; // снимаем галку с элемента
}
}
});

// аналогично первому
let filterCheck2 = document.querySelectorAll("input[data-filtername='Другое']");
filterCheck2.forEach(function(item) {
item.onclick = function() {
if (document.querySelector("input[data-filtername='Одно']:checked")) {
alert('Простите, но невозможно выбрать в фильтре Одно и Другое одновременно')
item.checked = false;
}
}
});

</script>

Реализация, понятное дело, не универсальная, но на скорую руку вполне рабочий вариант.

Сайт для финансовой организации ЛОМБАРД 54 – займы под ПТС, авто и золото

сайт ЛОМБАРД 54 займы под птс и авто и золото WEBSTUDIUS

Разработали сайт и логотип для ЛОМАБРД 54.

Приятные цвета, интуитивно понятная навигация, простой вызов обратной связи – что еще нужно, чтобы получить необходимое?

Что говорят сами о себе ребята:

Существует множество причин, по которым могут срочно понадобиться деньги, и всего один способ получить их без промедления — обратиться в микрофинансовую организацию для получения срочного займа. Если вас интересуют займы под залог в Новосибирске, микрофинансовая компания ЛОМБАРД 54 готова оперативно оказать вам помощь в решении возникших финансовых проблем.

В качестве объекта залога может выступать:

АвтомобильПодходят любые авто, независимо от года выпуска, пробега и страны производителя. Допустимая сумма кредита может составлять 90% от оценочной стоимости. Минимальный ежемесячный процент составляет 4%.

Паспорт транспортного средства (ПТС)Минимальный процент — 5%. Клиент сохраняет возможность пользоваться транспортным средством на протяжении всего срока кредитования. Максимальная сумма займа — 90% от стоимости авто.

Ювелирные изделия, золотоВ качестве залога принимается ювелирные изделия. Кредит может быть предоставлен в объеме, составляющем 80% от стоимости залога. Минимальная ставка — 0,4% в сутки.

Бытовая техника.В качестве материального обеспечения обязательств может быть предложена техника любого назначения. Процентная ставка составляет от 0,4% в сутки.


Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Создание сайта для “Осьминожки” – Детской парикмахерской в Новосибирске

Сайт детской парикмахерской "Осьминожки" - создание сайтов и калибровка мониторов WEBSTUDIUS

Веселый, дружелюбный и красивый сайт для детской парикмахерской “Осьминожки”!

«Осьминожки» — это не просто парикмахерская, а возможность погрузиться в атмосферу подводного мира.

У нас созданы все условия для маленьких непосед:

  • ярко оформленный интерьер
  • много света
  • игровая зона
  • и конечно возможность познакомится с морскими обитателями.

А уставшим родителям мы подарим минуты комфорта и спокойствия.

Мы любим
своих клиентов
и поэтому
у нас все самое лучшее

Теперь у маленьких осьминожек есть свой уютный сайт, где можно выбрать модельную стрижку или укладку, окраску или подравнивание кончиков, а еще там есть женские и мужские стрижки…


Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Сайт для Агентства Рекламы и Печати – АРП. Полиграфия.

АРП - создание сайтов и калибровка мониторов WEBSTUDIUS

АРП – это агентство Рекламы и Печати в Новосибирске. 

Полиграфические услуги в Новосибирске легко и просто осуществляет типография АРП.

Почему легко и просто? Потому что есть своя база, свое оборудование и полный штат сотрудников!

Что предлагают? Да все, что угодно!

  • Разработка фирменного стиля, дизайн, переработка и корректировка Ваших материалов, верстка, допечатная подготовка.
  • Визитки, листовки, буклеты, плакаты, конверты, календари, журналы, этикетки, квитанции, бланки, папки, коробки, шелфтокеры, стикеры, магниты, стрип-ленты, клапана и т.д.
    Печать на ПВХ бумаге, пленке, пластике
  • Фальцовка, биговка, брошюровка, скрепление на пружину, ламинирование, сверление отверстий, вырубка, высечка, склейка
  • Широкоформатная и интерьерная печать
  • Разработка сайтов и реклама
  • Печать баннеров и обоев

Теперь у компании “АРП” есть свой сайт, вполне себе подходящий под сферу деятельности – как по цветовой гамме, так и по функциональности. Сразу оснащен  SEO начального уровня, хотя, достаточным, для поисковиков.

Агентство рекламы и печати  - создание сайтов и калибровка мониторов WEBSTUDIUS

Агентство рекламы и печати  - создание сайтов и калибровка мониторов WEBSTUDIUS

В мобильном виде тоже все хорошо:

Агентство рекламы и печати  - создание сайтов и калибровка мониторов WEBSTUDIUS

По сути, этот сайт больше является визиткой или лендингом, но с расширенными возможностями интернет-магазина при необходимости!


Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Сайт автосервиса “АВТОЧАСТИ” – продажа автозапчастей, распил, разбор авто

Сайт автосервиса "АВТОЧАСТИ" - продажа автозапчастей, распил, разбор авто - создание сайтов и калибровка мониторов WEBSTUDIUS

Иногда есть и такие, честные, сайты, как АВТОЧАСТИ.

Где честно пишут, что продают авто на разбор, что авто – это распил. )

Вот что говорят сами о себе владельцы:

Мы поставляем контрактные запчасти. Для любых марок, точно в срок. Опыт работы – более 15 лет. Каждая поставка отслеживается и тщательно проверяется на соответствие нормам и требованиям. Мы осуществляем двойную проверку заказанных запасных частей для того, чтобы Вы были уверены, что получите именно то, что вам необходимо. Работая с нами вы делаете правильный выбор.

Простой интернет-магазин, но это УЖЕ удобно. Просто на сайте увидеть, выбрать, купить запчасть для авто.

В наше время это особенно актуально )

Мобильный вид:

Сайт автосервиса "АВТОЧАСТИ" - продажа автозапчастей, распил, разбор авто - создание сайтов и калибровка мониторов WEBSTUDIUS

 


Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Сайт производителя пиломатериалов “Русский Лес”

"Русский Лес" - Дерево и пиломатериалы оптом и в розницу.

“Русский Лес” – Дерево и пиломатериалы оптом и в розницу.

Это именно производитель, а не перекупщик/перепродажник, что выгодно отличает эту компанию среди многих.

Свое производство позволяет гибко подходить к нуждам клиентов, формируя, практически, весь спектр доступных на рынке пиломатериалов, дерева, погонажа, доски, бруса и т.д.

Теперь у компании “Русский Лес” есть свой сайт, вполне себе подходящий под сферу деятельности – как по цветовой гамме, так и по функциональности. Сразу оснащен  SEO начального уровня, хотя, достаточным, для поисковиков.

В мобильном виде тоже все хорошо:

"Русский Лес" - Дерево и пиломатериалы оптом и в розницу.

По сути, это больше является визиткой или лендингом, но с расширенными возможностями интернет-магазина при необходимости!


Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Сайт “Лаборатории Дизайна” – BAZALAB – агентства полного цикла

BAZALAB, сделать интернет магазин, интернет-магазин, WordPress, Bitrix, 1c-bitrix, разработка сайтов, создание сайта, поддержка сайта, калибровка мониторов, профилирование принтеров, профилирование широкоформатного принтера, профилирование плоттера, MIMAKI, ROLAND, EPSON, CANON, HP, печать ООО, печать ИП, заказать печать или штамп, сколько стоит сайт, стоимость сайта онлайн, копировальный центр Новосибирск, копи-центр

Что же представляет собой агентство полного цикла в дизайне и маркетинге BAZALAB ?

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

Это когда вы работаете с агентством по принципу “одно окно” и не бегаете по разным поставщикам дизайнерских услуг.

Нужна анимация – пожалуйста! Нужен сайт – пожалуйста! Нужен интерьер? Тоже нет проблем. И картины напечатают для интерьера!

И это все при том условии, что качество услуг – выше всяких похвал!

Для справочки, краткий перечень услуг компании BAZALAB:

 

Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Error: this script must be started from Web Server’s DOCUMENT ROOT при переносе сайта 1С Битрикс (1C Bitrix)

Error: this script must be started from Web Server's DOCUMENT ROOT при переносе сайта 1С Битрикс (1C Bitrix)

Прекрасный Гайд по устранению ошибки Error: this script must be started from Web Server’s DOCUMENT ROOT при переносе сайта 1С Битрикс нашел на сайте НЕКСТАЙП (пруф)

Запощу сюда:

приведу инструкцию, как максимально просто распаковать этот бекап используя веб-сервер, файл restore.php (можно скачать через админку сайта, в разделе Резервное копирование \ Список резервных копий) и частичной правки этого файла.

  1. Заливаем все части архива в созданную директорию на сервере (например /restore_backup/)
  2. Загружаем в директорию с архивами файл restore.php
  3. В файле restore.php находим код (примерно 13 строка)
    if(realpath(dirname(__FILE__)) != realpath($_SERVER['DOCUMENT_ROOT']))
    	die('Error: this script must be started from Web Server\'s DOCUMENT ROOT');

    Его нам нужно закомментировать

  4. Перед закомментированным кодом в п.3 добавляем строчку:
    $_SERVER['DOCUMENT_ROOT'] = __DIR__;

    Далее нам нужно найти начало условной конструкции (примерно от 377 строки, у меня была 420):

    if (!$Step && $_SERVER['REQUEST_METHOD'] == 'GET')

    Наша задача закомментировать всю условную конструкцию, т.к. именно этот кусок кода будет перезатирать наш restore.php самой свежей версией.

  5. Запускаем наш restore.php через браузер и следуем примитивному визарду.

Спасибо ребятам за инструкцию!

ZADIROV NET. Разработка сайта для каталитической защиты агрегатов.

ZADIROV NET, ЗАДИРОВ НЕТ, каталитическая защита, убрать задиры в цилиндрах, задиры в двигателе, сделать интернет магазин, интернет-магазин, WordPress, Bitrix, 1c-bitrix, разработка сайтов, создание сайта, поддержка сайта, калибровка мониторов, профилирование принтеров, профилирование широкоформатного принтера, профилирование плоттера, MIMAKI, ROLAND, EPSON, CANON, HP, печать ООО, печать ИП, заказать печать или штамп, сколько стоит сайт, стоимость сайта онлайн

Снова говорим про автомобильную тематику.

В нашем портфолио – сайт ZADIROV.NET – каталитической защиты силовых агрегатов в Новосибирске.

Это ЕДИНСТВЕННАЯ официальная мастерская каталитической защиты (устранение задиров двигателя, устранение проблем с трансмиссией, восстановление характеристик топливных систем) за УРАЛлом, которая дает гарантию на свои работы.

Для справки:

Что такое каталитическая защита (обработка)?

Каталитическая обработка – это не абстрактные “нано-технологии”, не очередная присадка и “решение всех проблем”, а сложный комплекс химических реакций восстановления защитного покрытия самых ответственных узлов, которые ранее были доступны только в заводских условиях.

Вот что они говорят сами про себя:

Единственное гарантированное восстановление и ЗАЩИТА силовых агрегатов премиальных авто без капитального ремонта.

Восстановление характеристик

Каталитическая защита создает сверпрочную алмазную сетку на поверхности деталей, возвращая заводские характеристики агрегата.

Снижается расход топлива, уменьшается шумность двигателя.

Глубокая интеграция

Защитный слой проникает в существующую структуру металла, создавая прочность, превыщающую начальную, примерно в 10 раз.

Благодаря этому, РЕСУРС двигателя увеличивается, практически, в ДВА раза.

1 год гарантии

Мы абсолютно уверены в технологии. Поэтому, даём гарантию 1 год либо 30 тыс. км. пробега (при условии замены масла нашими специалистами)

Заказать сайт-визитку, лендинг, форум, портал или интернет-магазин вы можете, написав нам в Директ, WhatsApp, в ВК, на почту или позвонив нам по телефону +7-913-013-45-51.

Заказывайте у нас сайт любой сложности, на WordPress, 1C-Bitrix, Joomla, OpenCart или на той системе, которая удобнее вам. Все сделаем в лучшем виде!

#WEBSTUDIUS

Открыть чат
1
Попробуйте написать нам в WhatsApp!
Попробуйте написать нам в WhatsApp!