andreyryabin / sprint.editor

Редактор для контент-менеджеров (1С-Битрикс)
http://marketplace.1c-bitrix.ru/solutions/sprint.editor/
MIT License
38 stars 12 forks source link

как то можно в блоке container, при вставке его в свой составной блок, прописать ему параметры, свой список блоков? #44

Closed sirega closed 5 months ago

sirega commented 5 months ago

как то можно в блоке container, при вставке его в свой составной блок, прописать ему параметры, свой список блоков?

sirega commented 5 months ago

Ато сейчас мне приходится копировать этот блок, для того чтобы выбрать нужные блоки

var blocklist = [
    {id: 'my_marking_type', title: 'Виды разметки'},
];
andreyryabin commented 5 months ago

Да, также как и в аккордеоне, создайте файл с настройками и задайте список блоков для контейнера

<?php

$settings = [

'block_settings' => [
        'container' => [
            //подключаемые блоки к контейнеру
            'blocks' => [
                'type'  => 'hidden',
                'value' => [
                    'htag'  => 'заголовок',
                    'text'  => 'текст',
                    'image' => 'картинку',
                    'video' => 'видео',
                    'lists' => 'список',
                ],
            ],
        ],
        ],
];
sirega commented 5 months ago

спасибо посмотрел, вы вдохнули для меня в Битрикс новую жизнь. Не нашел возможности задать настройки для нескольких container внутри составоно, это возможно?

andreyryabin commented 5 months ago

да, в версии 4.13.1

вы можете описать настройки блоков по ключу в котором они сохраняются внутри составного

допустим у вас составной блок с двумя контейнерами

sprint_editor.registerBlock('complex_2_container', function ($, $el, data) {
    var areas = [
        {
            "blockName": "container",
            "dataKey": "container_abc",
            "container": ".sp-area-1"
        },
        {
            "blockName": "container",
            "dataKey": "container_xyz",
            "container": ".sp-area-2"
        }
    ];
//...
});

Тогда настройки каждого контейнера внутри составного можно описать так

$settings = [
    'complex_settings' => [

//название вашего составного блока
        'complex_2_container' => [

//dataKey для первого контейнера
            'container_abc'  => [
                'blocks' => [
                    'type'  => 'hidden',
                    'value' => [
                        'htag' => 'htag',
                        'text' => 'text',
                    ],
                ],
            ],
//dataKey для второго контейнера            
            'container_xyz' => [
                'blocks' => [
                    'type'  => 'hidden',
                    'value' => [
                        'htag' => 'htag',
                        'text' => 'text',
                    ],
                ],
            ],
        ],
sirega commented 5 months ago

спасибо большое