Turns the Plone 'Description' field into Richtext/HTML
Project description
Introduction
Adds the new HTML-formatable textfield richdescription content types can use.
There are two behaviors provided:
- collective.richdescription
The single richdescription field.
- collective.richdescription.basic
A drop-in replacement for plone.basic. This is what you usually want: Disable plone Basic and enable this.
- collective.richdescription.optionaltitle
A special replacement for plone.basic, but with an non-required title. To be used i.e. with file and image.
When the field is saved, the contents are also stored in the classic dublincore description field, but without html-formatting.
A metadata index is provided, so that richdescription can be read directly from catalog brains.
A module global collective.richdescription.behavior.PATTERN_OPTIONS is used to configure the widget, It comes with a reduced set of features and can be patched if more are needed. There is no control panel yet (contributions are welcome).
There is no folder_listing or similar template yet. If you want to have HTML formatted descriptions in folder_listing use something like this:
<tal:block
tal:define="item_description item/richdescription|nothing;
item_description python:item_description or item.Description;">
<p class="akaDescription"
tal:condition="item_description"
tal:content="structure item_description">DESCRIPTION</p>
</tal:block>
Warning
Although there are no big issues with this package, use it at your own risk! The description field wasn’t meant to hold HTML data. People may tend to write long essays in the description field, which is not what you want, probably. Some use cases require this functionality though, so have fun.
Migration?
There should be no need for a specific migration step. When no richdescription field is available for a content type, it falls back to the normal description field. When saving a content type, the richdescription field is set and the catalog’s metadata richdescription column is filled.
Compatibility
Tested with Plone 6
Source Code and Contributions
If you want to help with the development (reporting, improvement, update, bug-fixing, …) of collective.richdescription this is a great idea!
Please file any issues or ideas for enhancement at the issue tracker.
The code is located in the github collective.
You can clone it or get access to the github-collective and work directly on the project.
Maintainer is Johannes Raggam and the BlueDynamics Alliance developer team. We appreciate any contribution and if a release is needed to be done on pypi, please just contact one of us dev@bluedynamics dot com
Changelog
3.0.1 (2023-10-19)
Add textindexer for title and description. [agitator]
Update pattern options for tinymce 5.10.2 in Plone 6. [agitator]
3.0.0 (2022-03-23)
Add collective.richdescription.title as a drop in replacement for plone.basic. Also add collective.richdescription.optionaltitle as a variant for file/image. [jensens]
Add patchable PATTERN_OPTIONS global to collective.richdescription.behavior in order to be able to set reduced options here (default). [jensens]
Python 3 compatibility - remove Archetypes support. [agitator]
2.0 (2014-11-11)
Cleaning up. [jensens]
Add Dexterity support. [thet]
Refactoring. [thet]
1.0.1 (2014-06-13)
Metadata update. [thet]
1.0 (2012-11-07)
Initial release [thet]
1.0pre
When no description is set, return a BaseUnit as fallback. Fixes AttributeError, where original_encoding was tried to accessed on a string value. [thet]
Register the skins folder for any theme. [thet]
Initial version on 2010-10-05 for sfd.at.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for collective.richdescription-3.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | da03e8c8638b2856db3f970d5ef708ada28537e42f2b3d615913b62edbbdf65b |
|
MD5 | 6d6d32a5c17ab6b98990359255e79008 |
|
BLAKE2b-256 | ddb73607cb334da3b82706674c2e578a6679d57516b6c51fe601d73001d5072d |
Hashes for collective.richdescription-3.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9efdaf8bb06f35a78b1549b8a5a88ad09461d15a7e1ab678e67ab79f28bd0551 |
|
MD5 | c5c619f9b82b05f281d6dbc6ddb3179b |
|
BLAKE2b-256 | 3206c3c3e66da7616257e4dc5bd49b6feea59f532ce2684e1fd6f4f8ffe5693d |