如何将元数据应用于内容目录中的所有文件
How to apply metadata to all files in a content directory
我有一个名为 foo
的内容目录,我希望该目录下的所有文件都有一个额外的元数据项 foovar: default
,除非在文件头中明确覆盖。我认为我应该用EXTRA_PATH_METADATA来做这个,但我不知道它想要什么咒语。
(对于我当前的用例,我正在尝试在此目录中应用 template: sometemplate
,但我有兴趣解决一般情况,因为它会解决一些相关的问题)
我想你要找的实际上是DEFAULT_METADATA
。查看文档的 this portion:
DEFAULT_METADATA = {}
The default metadata you want to use for all articles and pages.
所以,在你的情况下,它在你的配置文件中可能看起来像这样:
DEFAULT_METADATA = {'foovar': 'default'}
然后要分配您的自定义模板,请参阅文档的 this portion。
我问的时候这是不可能的。我已经向开发人员发送了一个 PR 添加支持,并且它已经合并到 master 中。想必它会在下一个版本中推出。它使 EXTRA_PATH_METADATA 递归,因此您可以像这样将设置应用于子目录:
EXTRA_PATH_METADATA = {'dirname/subdir': {'status': 'hidden'}}
我有一个名为 foo
的内容目录,我希望该目录下的所有文件都有一个额外的元数据项 foovar: default
,除非在文件头中明确覆盖。我认为我应该用EXTRA_PATH_METADATA来做这个,但我不知道它想要什么咒语。
(对于我当前的用例,我正在尝试在此目录中应用 template: sometemplate
,但我有兴趣解决一般情况,因为它会解决一些相关的问题)
我想你要找的实际上是DEFAULT_METADATA
。查看文档的 this portion:
DEFAULT_METADATA = {}
The default metadata you want to use for all articles and pages.
所以,在你的情况下,它在你的配置文件中可能看起来像这样:
DEFAULT_METADATA = {'foovar': 'default'}
然后要分配您的自定义模板,请参阅文档的 this portion。
我问的时候这是不可能的。我已经向开发人员发送了一个 PR 添加支持,并且它已经合并到 master 中。想必它会在下一个版本中推出。它使 EXTRA_PATH_METADATA 递归,因此您可以像这样将设置应用于子目录:
EXTRA_PATH_METADATA = {'dirname/subdir': {'status': 'hidden'}}