实用程序添加类似wordpress的快捷方式,用于在django中进行标记创作。

django-markdown-shortcodes的Python项目详细描述


#django的markdown shortcode

提供了在内容中使用类似wordpress的"shortcode"的能力,这些"shortcode"被呈现为html。

例如,在显示特色内容的内容体流中呈现一个更复杂的组件,或者简单地呈现一个全宽的vimeo视频。


这个包中没有定义大量的快捷方式,因为这些快捷方式具有高度的项目特定性。

它提供一个注册系统(通过一个小的装饰器),一个短代码处理器,以及一个方便的模板过滤器。

函数名应以"shortcode"开头,后跟内容中出现的字符串/名称。

使用"shortcode"decorator注册要处理的函数:

from markdown\u shortcode import shortcode

@shortcode
def shortcode\u youtube(*args):
将render\u返回到字符串("shortcode/youtube.html",{
"id":args[0],
"title":参数[1]如果len(args)>;1 else"",
"alternate_uri":参数[2]如果len(args)>;2 else"",
})


创建模板文件:

<;div class="shortcode block">;
<;div class="fluid iframe-ratio-16-9">;
<;iframe src="//www.youtube.com/embed/{{id}"
title="{{title}"
frameborder="0"
webkitallowfullscreen
mozallowfullscreen
allowfullscreen>;
此视频需要一个支持帧的浏览器。
{%if alternate_-uri%}
<;a href="{{alternate_-uri}">;请参阅{{title}<;a>;
{%else%}
<;a href="https://www.youtube.com/watch?"v={{id}">;在youtube上观看{{title};
{%endif%}
<;iframe>;
<;div>;
<;div>;



我看到一个关于准备托马托的采访。它改变了我的生活:

[[youtube xtjiggbn8l4"番茄切丁的惊险探索"]


现在我几乎每周都准备一次pico de gallo!


在内容的模板中,类似这样的内容(`expand_shortcodes`是此软件包提供的):


{%load shortcodes%}

<;div class="post bodytext-u-awesome">;
{post.body{expand_u shortcodes safe your_u markdown_u filter}
<;div>;

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring AOP:在方法之间交换信息   数组Java将字符串转换为字符[]   堆内存java。lang.OutOfMemoryError:PermGen space+java   安卓 Java。lang.ClassCastException:无法将活动强制转换到接口   java尝试使用气泡排序将随机整数数组从最大到最小排序   线程“main”java中的indexoutofboundsexception异常。lang.ArrayIndexOutofBounds异常:发电机处为3。main(Generator.java:35)   java“宽大”有什么用?   java SimpleCaptcha NoSuchMethodError   java在哪里部署Web服务的jar依赖项?   Java8获取列表中连续数字的函数方法   java为什么JWT令牌不安全?   java Uber API:在请求或发出令牌时指定多个作用域会返回无效的请求参数   java如何使用映射器从包含多个引用单元的JSON字符串中获取对象列表?   java警告匿名子类(?)没有串行版本   Jackson 2.9.0中的java JsonGenerationException。pr1   java试图打印多个catch语句   java如何创建一个sql表并获得每个唯一字段的平均价格?   java为什么SetMinimumSize设置最小高度而不是宽度?   java与使用POI合并的混淆   java在Xpath中使用“AND”和“normalizespace”时在不同浏览器中遇到不同的错误