Yandex Metrika
sanches.free 19 просмотров

Узнать ID элемента по URL в Битрикс

<?php
use Bitrix\Main\Loader;
Loader::includeModule("iblock");

// Получаем текущий URL из адресной строки
$currentUrl = $_SERVER["REQUEST_URI"];

// Разбираем URL и извлекаем путь без GET-параметров
$parsedUrl = parse_url($currentUrl);
$path = $parsedUrl['path'];

// Разделяем путь на части, чтобы извлечь символьный код
$parts = explode('/', trim($path, '/'));
$elementCode = end($parts); // Берем последний сегмент пути как символьный код элемента

// Выводим отладочную информацию
echo "URL: " . $currentUrl . "<br>";
echo "Код элемента: " . $elementCode . "<br>";

// Указываем ID инфоблока
$iblockId = 11; // Замените на ID вашего инфоблока

// Настраиваем выборку и фильтр для поиска элемента
$arSelect = ["ID", "NAME"];
$arFilter = [
    "IBLOCK_ID" => $iblockId,
    "ACTIVE" => "Y",
    "CODE" => $elementCode
];

// Выполняем запрос к инфоблоку
$res = CIBlockElement::GetList([], $arFilter, false, false, $arSelect);

if ($element = $res->Fetch()) {
    echo "ID элемента: " . $element["ID"];
} else {
    echo "Элемент с указанным символьным кодом не найден.";
}

Не хотите копаться сами?

Починю за 1-3 дня. Без предоплаты — оплата по результату.

15+ лет опыта с 1С-Битрикс · Без предоплаты · 7 дней гарантии