跳转到主要内容

Draftail Shortcode实体,为Draftail添加类似链接的短代码。

项目描述

Wagtail Shortcode

Wagtail Shortcode添加了一个自定义的Draftail实体,提供自定义链接类型(“短代码”),使您能够以类似正常链接的方式分配值,并决定它们在页面上的渲染方式。

License: BSD-3-Clause PyPI version shortcode CI

安装

  • python -m pip install wagtail-shortcode
  • ...

'wagtail_shortcode'添加到INSTALLED_APPS

注册一个LinkHandler,以控制新链接类型在前端(|richtext过滤器)的渲染方式。

LinkHandlers必须在应用目录下的wagtail_hooks.py文件中注册,并使用与SHORTCODE_ANCHOR_TARGET_IDENTIFIER匹配的标识符,例如

# ./utils_app/wwgtail_hooks.py
from django.utils.html import escape
from wagtail import hooks
from wagtail.rich_text import LinkHandler
from wagtail_shortcode.handlers import SHORTCODE_ANCHOR_TARGET_IDENTIFIER


class CustomShortcodeLinkHandler(LinkHandler):
    identifier = SHORTCODE_ANCHOR_TARGET_IDENTIFIER

    @classmethod
    def expand_db_attributes(cls, attrs):
        href = attrs["shortcode"]
        # Do something clever
        return '<a href="%s">' % escape(href)


@hooks.register("register_rich_text_features")
def register_shortcode_link(features):
    features.register_link_type(CustomShortcodeLinkHandler)

shortcode添加到任何已覆盖默认功能列表的富文本字段的features参数中

class Header(models.Model):
    content = RichTextField(
        features=["shortcode", "h2", "h3", "bold", "italic", "link"]
    )

配置

更新窗口提示的帮助文本

在编辑器中添加短代码时,将弹出一个窗口提示,您可以通过在项目的设置文件中提供 SHORTCODE_HELP_TEXT 的值来自定义此提示框中的文本。这可以帮助编辑了解您自定义的 LinkHandler 的预期行为。

SHORTCODE_HELP_TEXT="输入短代码值"

窗口提示函数是 JavaScript 的一种方法,它支持使用特殊字符进行基本的文本格式化,因此如果需要,可以使用 \n 包含换行符。

贡献

查看文档.

项目详情


下载文件

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

源分布

wagtail_shortcode-1.0.3.tar.gz (9.0 kB 查看哈希值)

上传时间

构建分布

wagtail_shortcode-1.0.3-py3-none-any.whl (8.3 kB 查看哈希值)

上传时间 Python 3

支持者