Skip to content

Instantly share code, notes, and snippets.

View livevasiliy's full-sized avatar
🗑️
https://bitbucket.org/livevasiliy/

Vasiliy livevasiliy

🗑️
https://bitbucket.org/livevasiliy/
View GitHub Profile
@livevasiliy
livevasiliy / README.txt
Last active March 29, 2023 10:41
Персональные скидки Битрикс
Для создания кастомизированного правила работы с корзиной на сайт необходимо:
1. Скопировать файл saleactiondiscountfromdirectory.php в папку сайта рядом с init.php (либо в /local/php_interface/init.php либо /bitrix/php_interface/init.php либо /bitrix/php_interface/ID сайта/init.php).
2. Подключить файл saleactiondiscountfromdirectory.php в init.php:
include "saleactiondiscountfromdirectory.php";
3. Создать Highload блок. Импортировать файл discount_hlb.xml со структурой hl-блока на странице ваш-сайт/bitrix/admin/highloadblock_import.php
4. Создать записи в hl-блоке.
@livevasiliy
livevasiliy / fetchAllProductsFromChildrens.php
Created August 11, 2020 10:19
Получить все товары из подразделов и сгруппировать по родительской категорий
<?php
use Bitrix\Main\Loader;
use Bitrix\Main\LoaderException;
const CATALOG_IBLOCK_ID = 17; // ID Инфоблока Каталога
function fetchAllProducts()
{
try {
@livevasiliy
livevasiliy / BitrixHelper.php
Last active October 29, 2023 20:16
Импорт из CSV файла на API Битрикс.
<?php
use Bitrix\Main\ArgumentException;
use Bitrix\Main\Loader;
use Bitrix\Main\LoaderException;
use Bitrix\Main\ObjectPropertyException;
use Bitrix\Main\SystemException;
/**
* Отформатированный вывод массива
@livevasiliy
livevasiliy / order.php
Last active April 1, 2023 09:10
Ajax обработчик для оформление заказа на Bitrix D7.
<? require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');
use Bitrix\Main\Application;
use Bitrix\Main\Loader;
use Bitrix\Main\LoaderException;
use Bitrix\Sale\Order;
use Bitrix\Sale\Delivery;
use Bitrix\Sale\PaySystem;
use Bitrix\Sale\Basket;
use Bitrix\Currency\CurrencyManager;
@livevasiliy
livevasiliy / init.php
Created October 8, 2019 11:45
Импорт товаров с торговыми предложениями из CSV файла на 1С Bitrix Framework.
<?php
use \Bitrix\HighLoadblock as HL;
use \Bitrix\Main\Loader;
use \Bitrix\Main\SystemException;
use \Bitrix\Main\ObjectPropertyException;
define('CATALOG_IBLOCK_ID', 17); // ID Инфоблока Каталога.
define('SKU_CATALOG_IBLOCK_ID', 20); // ID Инфоблока Торговые предложения.
define('BRAND_IBLOCK_ID', 12); // ID Инфоблока Бренды.
@livevasiliy
livevasiliy / top_multilvl-menu.php
Last active August 11, 2019 12:32
Многоуровневое меню для Битрикс на Bootstrap 4
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?if (!empty($arResult)):?>
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="nav navbar-nav">
@livevasiliy
livevasiliy / modules.php
Created June 20, 2019 14:42
My custom config for package nwidart/module
<?php
return [
/*
|--------------------------------------------------------------------------
| Module Namespace
|--------------------------------------------------------------------------
|
| Default module namespace.
@livevasiliy
livevasiliy / laravel_generator.php
Created June 20, 2019 14:40
My custom config for package infyom/laravel-generator
<?php
$modulePath = 'Modules\\' . env('CURRENT_MODULE');
$moduleNamespace = 'Modules\\'. env('CURRENT_MODULE'). '\\';
return [
/*
|--------------------------------------------------------------------------
| Paths
@livevasiliy
livevasiliy / newOrderCustomHandler.php
Last active April 1, 2023 09:09
Обработчик события для почтового шаблона SALE_NEW_ORDER (Новый заказ) на Битрикс D7. Для добавления новых полей в почтовый шаблон.
<?php
use \Bitrix\Main\Loader;
use \Bitrix\Main\SystemException;
use \Bitrix\Sale;
use \Bitrix\Main\UserTable;
use \Bitrix\Main\EventManager;
$eventManager = EventManager::getInstance();
$eventManager->addEventHandler('sale', 'OnOrderNewSendEmail', 'customSaleMails');
@livevasiliy
livevasiliy / pre_export.php
Last active November 8, 2021 12:34
Beautiful display var_export. [EN] | Вывести в отформатированном формате var_export. [RUS]
<?php
/**
* Beautiful display var_export.
* Вывести в отформатированном формате var_export.
*
* @return mixed
*/
function pre_export($value)
{