跳转到主要内容

一个额外的输出过滤器,用于增强富文本中文件和图片链接的信息

项目描述

https://travis-ci.org/PloneGov-IT/collective.outputfilters.enhancelinks.svg?branch=master

此产品添加了一个新的输出过滤器,用于为Tiny MCE的内部链接生成附加信息。

它是collective.tinymceplugins.advfilelinks的替代品,由于它使用Products.TinyMCE >= 1.3,因此无法在Plone >= 4.3上使用。

功能

对于指向内部内容(文件或图像)的每个链接,在渲染的HTML中都会添加一些新信息

  • 链接文本之前的内容类型图标

  • 链接文本之后的内容类型和文件大小

  • 指向文件的URL指向直接下载

安装

通过将其添加到您的buildout中安装collective.outputfilters.enhancelinks

[buildout]

 ...

 eggs =
     collective.outputfilters.enhancelinks

然后运行“bin/buildout”。

无需安装。

扩展内容类型

此产品是模块化的,因此如果您想将此功能(或更多功能)添加到某些自定义内容类型,您只需提供一个新的适配器以供ILinkEnhancerProvider接口使用

<adapter
    for="your.package.interfaces.IYourContent"
    provides="collective.outputfilters.enhancelinks.interfaces.ILinkEnhancerProvider"
    factory=".adapters.YourContentEnhanceLink"
/>

然后提供Python适配器代码

from collective.outputfilters.enhancelinks.adapters import BaseEnhanceLink

class YourContentEnhanceLink(BaseEnhanceLink):
    ...

有4个基本方法用于基本覆盖

def get_url_suffix(filename):
    """ Return additional suffix to append at the end of the url """

def get_icon_url(mime_infos):
    """ Return the correct mimetype icon url """

def get_extension(content_file, mime_infos):
    """ Return the filename extension"""

def get_formatted_size(content_file):
    """ Return a formatted file size """

额外的MIME类型图标

如果您想添加更多内容类型图标(例如,用于OpenOffice文档),则可以在您的buildout中添加并安装collective.mtrsetup

贡献

兼容性

此产品已在以下平台上测试

  • Plone 5.0

  • Plone 5.1

  • Plone 5.2

它与基于Dexterity的(plone.app.contenttypes)标准文件和图像内容类型一起工作。如果您需要基于Archetype的内容类型或Plone 4的兼容性支持,请使用版本 < 1.0.0。

许可协议

项目采用GPLv2许可。

致谢

在以下机构的支持下开发

它们都支持PloneGov倡议

作者

此产品由RedTurtle技术团队开发。

RedTurtle Technology Site

贡献者

变更日志

1.1.5 (2023-01-09)

  • Python3支持。 [cekk]

1.1.4 (2020-10-08)

  • 更改了附件图标的定位。更新了测试。 [daniele]

1.1.3 (2020-05-14)

  • 修复了Unicode问题。 [daniele]

1.1.2 (2020-04-21)

  • 修复了链接描述中的额外信息。 [daniele]

1.1.1 (2020-01-30)

  • 修复了readme中的链接。 [cekk]

1.1.0 (2020-01-30)

  • 重构mimetypes补丁以避免在每次调用时进行事务写入。 [cekk]

  • Python 3兼容性。 [cekk]

  • 使用humanfriendly打印文件大小信息。 [cekk]

1.0.0 (2020-01-16)

  • 移除了对AT内容类型的支持。AT支持仅限于版本 < 1.0.0。 [arsenico13]

  • 修补了一个问题,以避免与似乎不被Products.MimetypesRegistry识别的csv文件相关的问题。 [arsenico13]

  • 更新csv文件的测试。 [arsenico13]

0.4.5 (2019-01-24)

  • 修复了当href属性为空时对象的检索问题。 [daniele-andreotti]

0.4.4 (2018-02-06)

  • 改进了Unicode/decode错误处理 [cekk]

  • 如果href属性中已存在,则不要增强带有“@@download”的链接,以避免重复 [cekk]

0.4.3 (2018-01-29)

  • 在链接检测中使用set()以删除重复条目 [cekk]

0.4.2 (2018-01-29)

  • 修复了xpath过滤器以获取所有旧式内部链接 [cekk]

0.4.1 (2017-12-18)

  • 修复了Unicode。 [daniele]

0.4.0 (2017-12-11)

  • 添加了对Plone5的支持 [cekk]

0.3.0 (2017-01-26)

  • 仅解析带有internal-link类的链接 [cekk]

0.2.1 (2016-12-21)

  • 处理了etree无法解析的格式不良的HTML问题。转换被跳过,并发出警告日志消息。 [cekk]

0.2.0 (2016-12-14)

  • 避免使用etree.tostring和带有method="html"参数自动关闭空div。这防止了与不喜欢自闭合div的浏览器相关的某些问题,并渲染了错误的HTML。 [cekk]

0.1.2 (2015-12-09)

  • 修复了当链接有子元素(例如span)时附加信息的位置 [cekk]

0.1.1 (2015-12-03)

  • 在转换中处理了UnicodeDecodeError。 [cekk]

0.1.0 (2015-12-02)

  • 初始版本。 [cekk]

项目详细信息


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

由以下支持