Skip to content

Instantly share code, notes, and snippets.

View SeRGei93's full-sized avatar

Sergei Stefanovich SeRGei93

View GitHub Profile
@SeRGei93
SeRGei93 / Битрикс полезные функции
Last active February 8, 2023 13:06
Битрикс полезные функции
https://estrin.pw/bitrix-d7-snippets/s/current-user-is-authorized/
if(\Bitrix\Main\Engine\CurrentUser::get()->getId())
{}
\Bitrix\Main\Engine\CurrentUser::get()->isAdmin()
\Bitrix\Main\Engine\CurrentUser::get()->getLogin()
//лого без ссылки на главной
<? $isIndex = ($APPLICATION->GetCurPage(false) == SITE_DIR)?>
<?if (!$isIndex):?>
@SeRGei93
SeRGei93 / wp
Created March 19, 2018 20:14
wordpress
//*замена адрема после переноса
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://ilyarrl2.beget.tech', 'http://re-wp.by') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE(guid, 'http://ilyarrl2.beget.tech','http://re-wp.by');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://ilyarrl2.beget.tech', 'http://re-wp.by');
update_option( 'siteurl', 'http://ilyarrl2.beget.tech' );
update_option( 'home', 'http://ilyarrl2.beget.tech' );
//**замена адрема после переноса
@SeRGei93
SeRGei93 / товары со скидкой
Last active January 16, 2020 06:44
Битрикс получить товары со скидкой
<?
function getAllDiscounts()
{
Bitrix\Main\Loader::includeModule('sale');
require_once ($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/handlers/discountpreset/simpleproduct.php");
$arDiscounts = array();
$arProductDiscountsObject = \Bitrix\Sale\Internals\DiscountTable::getList(array(
'filter' => array(
'=ACTIVE' => 'Y',
// 'ID' => 1231,
@SeRGei93
SeRGei93 / laravel help
Last active March 12, 2020 08:20
laravel help
#Плагины
https://github.com/barryvdh/laravel-ide-helper
https://github.com/barryvdh/laravel-debugbar
#Модели
php artisan make:model Models/BlogPost #создать модель
php artisan make:model Models/BlogPost -m #создать модель и миграцию для нее
#Очистить кеш
php artisan config:cache
@SeRGei93
SeRGei93 / git hepler
Last active November 2, 2022 07:17
git hepler
#сбросить все измененния и откатится
git reset --hard HEAD
git clean -fd
#удалить файл из git
git rm -r --cached <path>
@SeRGei93
SeRGei93 / bitrix remove all orders
Created August 6, 2021 10:40
Битрикс удалить все заказы
<?
if (!isset($_SERVER['DOCUMENT_ROOT']) || !$_SERVER['DOCUMENT_ROOT']) {
$_SERVER['DOCUMENT_ROOT'] = dirname(__DIR__);
}
require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");
\Bitrix\Main\Loader::includeModule('sale');
use Bitrix\Sale;
@SeRGei93
SeRGei93 / bitrix import\export users
Last active April 16, 2024 08:12
перенос пользователей битрикс
Если перед вами встала задача по переносу пользователей из одного Битрикс в другой, то сделать это достаточно просто.
Для начала составьте таблицу соответствия групп пользователей, где ключи - id группы пользователей на первом сайте, а значения id соответствующей ему группы пользователей на втором. Примерно так:
$tableOfGroups = [
'1' => 1,
'2' => 2,
'3' => 3,
'4' => 4,
'5' => 9,
@SeRGei93
SeRGei93 / _attention.md
Created August 10, 2021 17:12 — forked from sukhikh18/_attention.md
Получение списка элементов инфо-блока, их свойства и раздел (D7) #Bitrix #ORM

ElementTable

Заметка 1

При использовании множественных связей (1:N, M:N) параметр limit ограничивает количество связей.

Заметка 2

fetch и fetchAll получают все результаты, в то время как fetchObject может получать несколько результатов объекта (при множественныъ связях). При незнании этого conunt($rs->fetchAll()) - может возвращать неожиданный результат

Заметка 3

Метод getFieldname работает только для описанных в getMap полей. Используйте $rs-&gt;fetchObject()-&gt;get('FIELD_NAME') для runtime reference (или $entity-&gt;addField вместо runtime)

@SeRGei93
SeRGei93 / bitrix mass update
Created August 15, 2021 22:27
Обновление через коллекцию
\Bitrix\Main\Loader::includeModule('iblock');
$iblock = \Bitrix\Iblock\Iblock::wakeUp(3);
$class = $iblock->getEntityDataClass();
$arResult = [];
$elements = $class::getList([
'select' => ['ID', 'IBLOCK_ID', 'XML_ID', 'ARTICLE'],
//'limit' => 5000,
'order' => ['ID' => 'ASC']
@SeRGei93
SeRGei93 / delete empty prop
Last active October 19, 2024 13:56
Чистка не используемых свойств инфоблока
\Bitrix\Main\Loader::includeModule('iblock');
$getCountValues = function ($propId){
$res = \Bitrix\Iblock\ElementPropertyTable::getList([
'select' => ['*'],
'filter' => ['ELEMENT.IBLOCK_ID' => 23, 'IBLOCK_PROPERTY_ID' => $propId],
'count_total' => true,
]);
return $res->getCount();