Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Клонировать карточку блока landing.block.clonecard», проанализируем лучшие практики и покажем, как правильно использовать landing.block.clonecard в реальных задачах.
Клонировать карточку блока landing.block.clonecard
Тут может не хватать некоторых данных — дополним в ближайшее время
- нужны правки под стандарт написания
- не указаны типы параметров
- не указана обязательность параметров
- отсутствуют примеры
- отсутствует ответ в случае успеха
- отсутствует ответ в случае ошибки
> Scope: landing
>
> Кто может выполнять метод: любой пользователь
Метод landing.block.clonecard клонирует карточку блока. Возвращает _true_ или ошибку.
Входящие параметры и конфигурация метода
| Метод | Описание | С версии |
|---|---|---|
lidunknown | Идентификатор страницы | |
blockunknown | Идентификатор блока | |
selectorunknown | Селектор карточки взятый с манифеста, с добавленным идентификатором карточки. Например: ‘.landing-block-card@0’. 0 в конце означает, что воздействуем на первую по порядку карточку. Если знак @ и число за ним отсутствует, вставка будет произведена в начало родительского контейнера карточек. |
Обратите внимание, что как только вы склонировали карточку, их счетчики поменялись.
Практические примеры использования в коде
- JS
try
{
const response = await $b24.callMethod(
'landing.block.cloneCard',
{
lid: 311,
block: 6057,
selector: '.landing-block-card@0'
}
);
const result = response.getData().result;
console.info(result);
}
catch(error)
{
console.error(error);
}- PHP
try {
$response = $b24Service
->core
->call(
'landing.block.cloneCard',
[
'lid' => 311,
'block' => 6057,
'selector' => '.landing-block-card@0',
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
// Нужная вам логика обработки данных
processData($result);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error cloning landing block card: ' . $e->getMessage();
}- BX24.js
BX24.callMethod(
'landing.block.cloneCard',
{
lid: 311,
block: 6057,
selector: '.landing-block-card@0'
},
function(result)
{
if(result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);Смотри также
landing.block.addcard — Метод полностью повторяет работу landing.block.clonecard но дает возможность вставить карточку сразу с измененным контентом.
💡 Экспертное мнение и рекомендации
Советы эксперта по интеграции:
- Всегда используйте кэширование при частых запросах к landing.block.clonecard, чтобы разгрузить базу данных.
- Соблюдайте стандарты PSR при написании обработчиков для «Клонировать карточку блока landing.block.clonecard».
- Регулярно проводите аудит производительности системы с помощью встроенного монитора 1С-Битрикс.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru