Необработанный HTML в основном тексте после импорта контента с использованием transmorgrifier

Я использую рецепт transmorgrifier для импорта некоторых данных из drupal в сборку на основе Plone 4.1. Сборка основана на https://github.com/claytron/drupal-plone-transmogrifier(в основном я обновил его, чтобы использовать plone 4.1 вместо 4.0). Импорт работает, я успешно импортировал данные с сайта drupal на свой plone-сайт. Единственная проблема заключается в том, что теги html из импортированного html отображаются в виде буквенных тегов.

Если после успешного импорта я вручную перехожу к каждому элементу и выбираю "редактировать", затем нажимаю "сохранить", тогда HTML-код интерпретируется правильно, но это будет много редактирования и сохранения, чтобы исправить мою проблему.

смотрите скриншот недавно импортированного контента с отображением HTML-тегов. HTML-теги, показывающие

План, выполняющий фактический импорт поля, (я полагаю) показан ниже:

 [text_mimetype]
 blueprint = collective.transmogrifier.sections.inserter
 key = string:_text_mimetype
 value = string:text/html

Я экспериментировал с использованием текста / структурированного вместо текста / HTML в проекте, но это дало тот же результат:

Что мне нужно, так это либо дополнительный план, который вызывает интерпретацию html, либо подсказки о том, как обеспечить интерпретацию моего html при импорте.

Полный список чертежей, используемых в моем конвейере, приведен здесь: https://github.com/claytron/drupal-plone-transmogrifier/blob/master/src/my.migration/my/migration/config/base.cfg

3 ответа

Решение

Если он работает под Plone 4.0, но не под Plone 4.1, то я предполагаю, что это связано с PLIP "фактор преобразования пользовательских выходов из редакторов", который был объединен как часть Plone 4.1. Я бы посмотрел на изменения из этого PLIP и увидел, как нужно настроить конвейер.

С такой же проблемой столкнулся при переносе контента с использованием wsapi4plone.core.

Решение: прикрепите zope.contenttype к версии 3.5.5 (по умолчанию в следующей версии 4.1.1).

Причина: PLIP # 9938 - http://dev.plone.org/plone/ticket/9938 в соответствии с описанием.

На самом деле этот раздел только вставляет значение "text/html" в ключ "_text_mimetype"

Настоящая инкапсуляция сделана здесь:

[mimetype_encapsulator]
data-key = text
mimetype = python:item.get('_%s_mimetype' % key)
# replace the data in-place
field = key
condition = mimetype

дополнительная информация: http://pypi.python.org/pypi/plone.app.transmogrifier

Во всяком случае, я экспериментировал, что инкапсулировать HTML-текст не обязательно, он также работает с простой строкой.

Пока, Джакомо

Другие вопросы по тегам