我的Jekyll网站中有一些元素不适合摘录,特别是在RSS源中使用时。由于它们是由Liquid标签创建的(在自定义插件中实现),我认为应该很容易。这样的事情似乎是谨慎的:
module Jekyll
class MyTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
end
def render(context)
if <in excerpt>
""
else
"this should not be in an excerpt"
end
end
end
end
Liquid::Template.register_tag('mytag', Jekyll::MyTag)
但是,我不知道如何检查标签是否为摘录而呈现。转储context.environments
,context.scopes
和context.registers
的内容x并未发现任何有用的内容。
我该怎么做?
答案 0 :(得分:1)
我没有解决Jekyll或Liquid的问题。但是,有一个相当简单的解决方法:使用CSS隐藏有问题的元素。
说你有这样的事情:
<div class="excerpt">
{{ post.excerpt }}
</div>
然后使用CSS隐藏元素:
div.excerpt {
.footnote,.footnotes,.marginnote {
display: none;
}
}
这些课程取决于您使用的Markdown引擎,插件和主题。显然。