V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ZyZyZzz
V2EX  ›  问与答

想实现 Hexo 的多语言切换,然而 index 访问不到 page 变量

  •  
  •   ZyZyZzz · 2016-05-18 10:41:20 +08:00 · 2871 次点击
    这是一个创建于 3113 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人正在尝试修改 tranquilpeak 主题,想给每一种语言准备一个 index

    source/en/index.md
    source/zh-en/index.md
    

    Front-matter 像这样

    ---
    title: *language*
    layout: index
    comments: false
    lang: *language*
    ---
    

    这样生成的 index 会自动落到 public 的./zh-cn/或./en/目录下

    但是 index.ejs 中有用到 page.posts.each(), hexo g的时候会报each of undefined, 改成 site.posts.each()后,在 index.ejs 里包含的 pagination.ejs 又会报错。再移除 pagination 的 partial 引入就没 bug 了,但是我要分页啊。

    综合看下来应该是访问不到用于首页( index ) 的 page 变量的问题。难道在 front-matter 里标明 index 布局不行?只有 hexo-generator-index 生成出来的那个 index 才能访问到?有什么办法没?

    详细报错可戳这里

    1 条回复    2016-05-18 11:30:18 +08:00
    ZyZyZzz
        1
    ZyZyZzz  
    OP
       2016-05-18 11:30:18 +08:00
    补充:我这里是仿照 hexo.io 官网处理多语言的,他们在 source/zh-cn 和 source/zh-tw 里分别放了一个 index.jade 文件,应该没问题。可能唯一的差别是 hexo 官网的 homepage 没用到分页相关的变量?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3197 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 13:25 · PVG 21:25 · LAX 05:25 · JFK 08:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.