IFRAME и его вставка.

Рылся в поиске, не нашел решения. Как встраивать iframe? Выводит пустой экран. Вот код.

<iframe src="https://protectorat.cc/video/2f77683e25b29c4c/iframe" width="610" height="370" frameborder="0" allowfullscreen></iframe>


Читал про файл jevix.php но судя по всему он давно изменен. Сейчас там нет добавки разрешеных доменов.

19 комментариев

avatar
Помогите решить вопрос. Структура движка поменялась. Проблема осталась. Посты 2014-2016 года что тут есть не актуальны!
avatar
Вымер сайт чтоли… Помогите найти решения! Коды что тут предложены вызывают ошшибку 500
avatar
Вы хотите вставить iframe, при создание топика?
Тогда вам нужно разрешить этот тег в jevix,php.
Пример возьмите из этого
array(
	'iframe',array('width' => '#int', 'height' => '#int', 'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com')), 'frameborder' => '#int', 'quality' => '#text', 'allowfullscreen' => '#text', 'class' => '#text')),

Параметры — то, что в теге вашем, src, width, height, frameborder
и какие данные они передают. Числовое #int, текстовое #text.
avatar
я пробывал вставить этот код. у меня ошибка 500. вот код jevix.php. куда что тут вставить?
<?php


return array(
    'default' => array(
        // Разрешённые теги
        'cfgAllowTags'          => array(
            // вызов метода с параметрами
            array(
                array('ls', 'gallery', 'iframe'),
            ),
        ),
        // Коротие теги типа
        'cfgSetTagShort'        => array(
            array(
                array('ls', 'gallery', 'iframe')
            ),
        ),
        // Разрешённые параметры тегов
        'cfgAllowTagParams'     => array(
            array(
                'ls',
                array('user' => '#text')
            ),
            array(
                'gallery',
                array('items' => '#text', 'nav' => array('thumbs'), 'caption' => array('0', '1'))
            ),
            array(
                'a',
                array('data-rel' => '#text', 'class' => array('js-lbx'))
            ),
        ),
        // Теги с обязательными параметрами
        'cfgSetTagParamDefault'     => array(
            array(
                'a',
                'target',
                '_blank',
                true
            ),
            array(
                'a',
                'rel',
                'noreferrer noopener',
                true
            ),
        ),
        'cfgSetTagCallbackFull' => array(
            array(
                'ls',
                array('_this_', 'Tools_CallbackParserTagLs'),
            ),
            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),
            ),
        )
    ),
);

avatar
Вот так попробуйте…

<?php


return array(
    'default' => array(
        // Разрешённые теги
        'cfgAllowTags'          => array(
            // вызов метода с параметрами
            array(
                array('ls', 'gallery', 'iframe'),
            ),
        ),
        // Коротие теги типа
        'cfgSetTagShort'        => array(
            array(
                array('ls', 'gallery', 'iframe')
            ),
        ),
        // Разрешённые параметры тегов
        'cfgAllowTagParams'     => array(
            array(
                'ls',
                array('user' => '#text')
            ),
            array(
                'gallery',
                array('items' => '#text', 'nav' => array('thumbs'), 'caption' => array('0', '1'))
            ),
            array(
                'a',
                array('data-rel' => '#text', 'class' => array('js-lbx'))
            ),
            array(
               'iframe',
                array( src, 'width' => '#int', 'height' => '#int',  'frameborder' => '#int', 'allowfullscreen' )
            ),
        ),
        // Теги с обязательными параметрами
        'cfgSetTagParamDefault'     => array(
            array(
                'a',
                'target',
                '_blank',
                true
            ),
            array(
                'a',
                'rel',
                'noreferrer noopener',
                true
            ),
        ),
        'cfgSetTagCallbackFull' => array(
            array(
                'ls',
                array('_this_', 'Tools_CallbackParserTagLs'),
            ),
            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),
            ),
        )
    ),
);

avatar
бесполезно… белый экран chida.ru/2019/08/04/mstiteli-final.html
avatar
что логи говорят?
avatar
Сделайте так.
<?php


return array(
    'default' => array(
        // Разрешённые теги
        'cfgAllowTags'          => array(
            // вызов метода с параметрами
            array(
                array('ls', 'gallery', 'iframe'),
            ),
        ),
        // Коротие теги типа
        'cfgSetTagShort'        => array(
            array(
                array('ls', 'gallery', 'iframe')
            ),
        ),
        // Разрешённые параметры тегов
        'cfgAllowTagParams'     => array(
            array(
                'ls',
                array('user' => '#text')
            ),
            array(
                'gallery',
                array('items' => '#text', 'nav' => array('thumbs'), 'caption' => array('0', '1'))
            ),
            array(
                'a',
                array('data-rel' => '#text', 'class' => array('js-lbx'))
            ),
            array(
               'iframe',
                array( 'src' => '#text', 'width' => '#int', 'height' => '#int',  'frameborder' => '#int', 'allowfullscreen' )
            ),
        ),
        // Теги с обязательными параметрами
        'cfgSetTagParamDefault'     => array(
            array(
                'a',
                'target',
                '_blank',
                true
            ),
            array(
                'a',
                'rel',
                'noreferrer noopener',
                true
            ),
        ),
        'cfgSetTagCallbackFull' => array(
            array(
                'ls',
                array('_this_', 'Tools_CallbackParserTagLs'),
            ),
            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),
            ),
        )
    ),
);


Если Вы хотите сделать более безопасно, прописывайте домены вручную, таким образом.
'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','protectorat.cc')),
avatar
спасибо за помощь, но это по прежнему не работает((( я уже всю голову сломал…

<?php


return array(
    'default' => array(
        // Разрешённые теги
        'cfgAllowTags'          => array(
            // вызов метода с параметрами
            array(
                array('ls', 'gallery', 'iframe'),
            ),
        ),
        // Коротие теги типа
        'cfgSetTagShort'        => array(
            array(
                array('ls', 'gallery', 'iframe')
            ),
        ),
        // Разрешённые параметры тегов
        'cfgAllowTagParams'     => array(
            array(
                'ls',
                array('user' => '#text')
            ),
            array(
                'gallery',
                array('items' => '#text', 'nav' => array('thumbs'), 'caption' => array('0', '1'))
            ),
            array(
                'a',
                array('data-rel' => '#text', 'class' => array('js-lbx'))
            ),
            array(
               'iframe',
                array( 'src' => '#text', 'width' => '#int', 'height' => '#int',  'frameborder' => '#int', 'allowfullscreen' )
            ),
        ),
        // Теги с обязательными параметрами
        'cfgSetTagParamDefault'     => array(
            array(
                'a',
                'target',
                '_blank',
                true
            ),
            array(
                'a',
                'rel',
                'noreferrer noopener',
                true
            ),
        ),
        'cfgSetTagCallbackFull' => array(
            array(
                'ls',
                array('_this_', 'Tools_CallbackParserTagLs'),
            ),
            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),


'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','protectorat.cc')),

            ),
        )
    ),
);
avatar
что значит не работает, вы детально можете написать по факту, а то не работает непонятно, дайте логи сервера, в чем ошибка не отображает после добавления или что?
avatar
и что у вас за фигня в коде?

            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),


'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','protectorat.cc')),

            ),
        )
avatar
Я имел ввиду заменить

array(
               'iframe',
                array( 'src' => '#text', 'width' => '#int', 'height' => '#int',  'frameborder' => '#int', 'allowfullscreen' )
            ),

на это
array(
               'iframe',
                array( 'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','protectorat.cc')), 'width' => '#int', 'height' => '#int',  'frameborder' => '#int', 'allowfullscreen' )
            ),
avatar
Благодарю, все получилось.
avatar
Не подскажешь почему видео режит пост? chida.ru/2019/08/10/strashnaya-volya-bogov.html

<?php


return array(
    'default' => array(
        // Разрешённые теги
        'cfgAllowTags'          => array(
            // вызов метода с параметрами
            array(
                array('ls', 'gallery', 'iframe'),
            ),
        ),
        // Коротие теги типа
        'cfgSetTagShort'        => array(
            array(
                array('ls', 'gallery', 'iframe')
            ),
        ),
        // Разрешённые параметры тегов
        'cfgAllowTagParams'     => array(
            array(
                'ls',
                array('user' => '#text')
            ),
            array(
                'gallery',
                array('items' => '#text', 'nav' => array('thumbs'), 'caption' => array('0', '1'))
            ),
            array(
                'a',
                array('data-rel' => '#text', 'class' => array('js-lbx'))
            ),
            array(
               'iframe',
                array( 'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','rustream.co','soundcloud.com','protectorat.cc')), 'width' => '#int', 'height' => '#int',  'frameborder' => '0', 'allowfullscreen' )
            ),
        ),
        // Теги с обязательными параметрами
        'cfgSetTagParamDefault'     => array(
            array(
                'a',
                'target',
                '_blank',
                true
            ),
            array(
                'a',
                'rel',
                'noreferrer noopener',
                true
            ),
        ),
        'cfgSetTagCallbackFull' => array(
            array(
                'ls',
                array('_this_', 'Tools_CallbackParserTagLs'),
            ),
            array(
                'gallery',
                array('_this_', 'Media_CallbackParserTagGallery'),
            ),
        )
    ),
);
avatar
а Вы уверены что это из за видео? Есть пример другой страницы с идентичным контеном, без видео?
avatar
любая другая страница. например chida.ru/2019/08/10/bayanistyy-bayanist.html проблема именно с этим сервисом. одна страница сейчас лежит в черновике. там тоже режит страницу.
avatar
я не понимаю Вас.
avatar
Что тут непонятного? При вставке iframe кода режится пол страницы. А именно комменты и футер. Я же дал страницу с примером.
avatar
Атрибуты ифрейма (frameborder=«0» allowfullscreen и тд) все указали в джевиксе, вот тут — ..array('width' => '#int', 'height' => '#int',...?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.