folded %}
function getColumnSizeClass(columnCount) {
switch (columnCount) {
case 2:
- return 'is-4-tablet is-4-desktop is-4-widescreen';
+ return 'is-4-tablet is-4-desktop is-3-widescreen';
case 3:
return 'is-4-tablet is-4-desktop is-3-widescreen';
{% endcodeblock %}
你可以参考[Bulma文档](https://bulma.io/documentation/columns/sizes/)来获取更多关于布局系统的细节。
下面时一些创建单栏/双栏/三栏布局的提示:
- 你可以从主题配置中移除所有的挂件来创建单栏布局。
- 你可以将所有的挂件移动到页面的一侧来创建双栏布局。
- 你可以将挂件放在页面两边来创建三栏布局。
若要更改单个文章或页面的布局,请参考[配置文件与优先级](/hexo-theme-icarus/Configuration/icarus用户指南-主题配置/#配置文件与优先级)。
挂件/评论插件/分享按钮...的布局文件在哪里?我如何个性化内置的挂件/评论插件/分享按钮...?
插件和挂件的布局文件已被移至一个单独的Node.js库中——[`hexo-component-inferno`](https://github.com/ppoffice/hexo-component-inferno)。
这样,主题开发者可以更好地在不同主题之间复用这些通用组件,并且普通用户可以更简便地覆盖这些内置组件。
若要自定义这些组件,从`hexo-component-inferno`仓库中拷贝布局文件并把它们放入`
/layout`下的的相应目录中。
例如,如果你想要自定义Valine评论插件,你可以从`hexo-component-inferno`仓库中拷贝
[`src/view/comment/valine.jsx`](https://github.com/ppoffice/hexo-component-inferno/blob/0.2.4/src/view/comment/valine.jsx)
到`/layout/comment/valine.jsx`。
同时像下面这样改正此文件头部的一些Node.js引用:
{% codeblock <icarus_directory>/layout/comment/valine.jsx lang:diff %}
- const { cacheComponent } = require('../../util/cache');
+ const { cacheComponent } = require('hexo-component-inferno/lib/util/cache');
{% endcodeblock %}
最后,用`hexo clean`清理你的站点并重新生成HTML文件。
类似的,你可以用同样的方式覆盖主题内置的静态文件,如
[`asset/js/insight.js`](https://github.com/ppoffice/hexo-component-inferno/blob/0.2.4/asset/js/insight.js) 。
为什么我的改变的布局文件在我刷新页面时没有生效(假设我正在使用hexo server
)?
当你使用`hexo server`启动本地Hexo服务器时,Icarus会缓存布局文件。
如要使布局文件的修改生效,请重启本地服务器。
其他情况下临时生成的数据会被Hexo缓存在内存或者`db.json`数据库中。
在运行`hexo server`或`hexo generate`之前执行`hexo clean`应该可以解决此问题。
## 内容
我的图片没有正确显示。 / 我的图片仅在首页显示,却无法在文章页面显示。
请确保你使用了图片的绝对路径。
例如,你的站点位于你域名的子目录下,如`https://ppoffice.github.io/hexo-theme-icarus`,
并且你的图片`image.jpg`放在了`source/gallery/`目录下。
那么你应该用`/hexo-theme-icarus/gallery/image.jpg`来引用你的图片。
你也可以像下面这样使用{% raw %}{% img %}{% endraw %}
这个Hexo标签来自动引用图片:
```
{% img /gallery/image.jpg "Image title" %}
```
在这种情况下,你可以从图片路径中省略网站子目录。
你可以参考[Hexo文档](https://hexo.io/zh-cn/docs/index.html)来了解更多详情。
如何为文章添加摘要?如何显示“阅读更多”按钮?
在你的文章中添加``标签。
标签前面的文章内容会被标记为摘要,而其后的内容不会显示在文章列表上。
你也可以在文章的front-matter中设置自定义摘要。
{% codeblock some-post.md lang:yaml %}
title: 一篇文章
date: 2020-01-01
excerpt: 这是一篇关于...
---
# 文章内容...
{% endcodeblock %}
我如何加密文章?
使用如[hexo-blog-encrypt](https://github.com/MikeCoder/hexo-blog-encrypt)这样的第三方的Hexo插件。
我如何像这篇文章一样使用炫酷的页面元素?
请参考[Bulma文档](https://bulma.io/documentation/)来了解所有可选的元素和样式。
复制其中的HTML代码段并直接放入你的Markdown文件中。
## 挂件与插件
我如何才能移除页面上警告我一些配置值没有设置的红色警示信息?
这些警示信息通常在你遗漏一些插件或挂件的配置设置时出现。
如果你不想开启某个插件或挂件,把它们从你的主题配置中删掉或注释掉。
例如,注释掉这几行来禁用掉评论插件:
{% codeblock _config.icarus.yml lang:diff %}
- comment:
- type: disqus
- shortname:
+ # comment:
+ # type: disqus
+ # shortname:
{% endcodeblock %}