Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

【问题】:cover这里有个bug #918

Closed
3 tasks done
lovelyJason opened this issue Apr 4, 2024 · 2 comments
Closed
3 tasks done

【问题】:cover这里有个bug #918

lovelyJason opened this issue Apr 4, 2024 · 2 comments
Labels
bug-report 反馈一个 BUG help 使用遇到问题(报错、样式与示例不一致等)

Comments

@lovelyJason
Copy link
Collaborator

检查清单

  • 已经搜索过,没有发现类似 issue。
  • 已经搜索过主题文档,没有发现相关内容。
  • 已经尝试使用过最新版,问题依旧存在。

主题版本

6.x

复现地址

https://www.qdovo.com

问题描述

如图, 这里代码逻辑错误
image

你的意思是当配置了page.cover为true的时候在判断是否首页,是否prev=0,是否height_scheme=full都没用。因为博客首页的page.cover不可能为true, 即使在_post下新建index.md设置cover为true,hexo也不会读取。

image

所以后果就是首页的cover永远不会显示,不管怎么配置, 因为首页page.cover这段if就进不来。

难道是我用错了?我记得之前版本不是这样, 解答一下疑惑

配置文件

主题配置文件

cover:
  logo: null
  title: qdovo
  height_scheme: full # full, half
  layout_scheme: dock # 

plugins:
  comment_typing: false
  # backstretch:
  # #   enable: false
  #   position: fixed
  #   images:             # For personal use only. At your own risk if used for commercial purposes !!!
  #     - https://cdn.qdovo.com/scenic/4456776-3705836a00587303.jpeg
  parallax:
    enable: true
    position: cover       

环境信息

node.js & npm

在这里粘贴替换 `node -v && npm -v` 输出的信息

package.json

在这里粘贴替换 `npm ls --depth 0` 输出的信息

@lovelyJason lovelyJason added help 使用遇到问题(报错、样式与示例不一致等) bug-report 反馈一个 BUG labels Apr 4, 2024
@lovelyJason
Copy link
Collaborator Author

起因是我之前把cover设置为了fixed关掉了,现在想开启,发现怎么都不出来

@lovelyJason
Copy link
Collaborator Author

我刚在volantis/layout/_pre.ejs中看到了一段代码

<%_
if (page.cover == undefined && theme.cover) {
  if (is_home() && page.prev == 0) {
    page.cover = theme.cover.display.home;
  } else if (is_archive()) {
    page.cover = theme.cover.display.archive;
  } else {
    page.cover = theme.cover.display.homers;
  }
}

原来是在主题配置文件中读取cover.display.home这个值,赋值给page.cover。我去, 大坑啊, 这太绕了,开启一个cover要设置了太多地方。我cover.display写在config文件顶部,plugins.parallax又写在文件底部, 导致我改一个东西,这里改一下,那里改一下才知道这个cover是这么个事。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug-report 反馈一个 BUG help 使用遇到问题(报错、样式与示例不一致等)
Projects
None yet
Development

No branches or pull requests

1 participant