如何为Meteor项目创建主题框架(如Wordpress')

时间:2016-06-09 00:51:02

标签: wordpress meteor frameworks themes wordpress-theming

我们想为Meteor项目创建一个主题框架----类似于Wordpress如何实现自定义主题。

我已阅读以下帖子,建议可能Iron RouterIf Blocks,而meteor-template-extension package似乎也非常受欢迎。

感谢任何意见或指导。

1 个答案:

答案 0 :(得分:0)

TL;医生

您无法为Meteor项目本身创建主题,您可以自定义用于UI或为自己提供的现有包。

说明

WordPress是CMS,它具有许多开箱即用的核心功能。所以你可以自定义这些部分的视图。

Meteor是框架,因此不同项目之间没有共享UI组件,因为每个项目都是唯一的,您无需自定义。

但是,有许多基于Blaze模板的广泛使用的包,您可以为他们创建编辑源代码的主题,例如ian:accounts-ui-bootstrap-3

另请参阅Orion - 基于Meteor的CMS,它至少有两个themes(Materialise和Bootstrap),并且可以被另一个扩展。

UPD

在您的评论之后我们正在讨论您自己项目中的一项功能。我可以同意人in question you mentioned - 您可以使用许多{{#if smth}}块来动态加载想要的模板,但是创建两个前端实例还有很多工作要做。

它可能看起来像那样:

<template name="material-button">
    <a id="myBtn" class="waves-effect waves-light btn">
        Button!
    </a>
</template>

<template name="bs-button">
    <button id="myBtn" class="btn btn-primary">
        Button!
    </button>
</template>

<template name="button">
    {{#if material}}
        {{> material-button}}
    {{else}}
        {{> bs-button}}
    {{/if}}
</template>
Template.button.helpers({
    material: function() {
        // true or false depending on user choice
        return Session.get('material');
    }
});

至于路由和布局 - 请查看recommended in Meteor Guide flow-router。您可以在布局中获取用户首选主题,然后将其作为参数传递给allnested模板。