问题
Using django-cms 2.4 I need to create pages that contain bootstrap code, but the html5lib used cleans data-* attributes. No matter if you specify valid_element in TINYMCE_DEFAULT_CONFIG. (I still looking for a similar option for Wymeditor), because this is done in #plugins/text/models (clean_html function: https://github.com/divio/django-cms/issues/1529 )
Github issue: https://github.com/divio/django-cms/issues/1529
What could it be a possible workaround? How can I extend the text plugin in the admin part?
Thanks!
回答1:
i belive the removing of the fields is done by html5lib that the cms uses as python package, you'll need to open html5lib folder and open sanitizer.py, in line 184 where the code is:
if name in self.allowed_attributes])
change to:
if name in self.allowed_attributes or re.match( r'data-.*',name)])
this will allow all data-(whatever) attributes
for WYMeditor the data-(whatever) attribute is already allowed
来源:https://stackoverflow.com/questions/14774076/django-cms-editors-and-html-data-attribute-cleaned-up