Добавление <iframe>в TinyMCE нарушает макет страницы - PullRequest
1 голос
/ 13 февраля 2012

Когда я вставляю код iframe непосредственно в представление исходного кода TinyMCE и нажимаю кнопку сохранить, он меняет код на:

Просмотр кода TinyMCE после сохранения добавляет &lt;/p&gt;

<iframe src="http://maps.google.co.uk/maps" width="425" height="350" frameborder="0" marginwidth="0" marginheight="0" scrolling="no">&lt;/p&gt;</iframe>

Просмотреть исходный HTML-код HTML-страницы:

<iframe src="http://maps.google.co.uk/maps" width="425" height="350" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"/>

Оригинальный iframecode

<iframe src="http://maps.google.co.uk/maps" width="425" height="350" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>

Это влияет на остальную часть макета страницы и нарушает нижний колонтитул.

Я использую Silverstripe 2.4.5, если это помогает.

Ответы [ 2 ]

2 голосов
/ 14 февраля 2012

TinyMCE не слишком большой поклонник iframe. Существует как минимум три (более или менее) быстрых исправления:

  1. Если это только для карт Google и всегда в фиксированном положении, вы можете использовать адресный модуль: http://deadlytechnology.com/silverstripe/google-map-module/

  2. Если это только для карт Google, но только в любом месте поля $Content, вы можете попробовать использовать короткие коды: http://www.ssbits.com/tutorials/2010/2-4-using-short-codes-to-embed-a-youtube-video/

  3. Исправлена ​​ошибка TinyMCE на стороне сервера в методе onBeforeWrite(): http://www.silverstripe.org/general-questions/show/16438#post305472

Если вы можете использовать 2., взгляните на полный пример:

0 голосов
/ 08 июля 2014

На самом деле самое простое решение в TinyMCE - щелкнуть маленькую иконку HTML (рядом с якорем), а затем вставить туда код iframe. Таким образом, он не заменит html-теги на &lt;/p&gt;

...