october主题介绍

说明


主题或更换主题是针对于整个cms界面的。october主题是完全基于文件的,可以使用任何版本控制系统进行管理,例如Git。下面对主题的基本说明:

对象 描述
页面 pages 表示网站的具体内容页
部件 partials 包含可重复使用的HTML标记块
布局 layouts 定义页脚手架
内容 contents 文本,HTML或Markdown块,可以引用到页面或布局文件。
资源 assets 是资源目录,如图像,CSS和JavaScript文件。

主题都有一个单独的目录,通常有切仅有一个活跃的主题用于显示网站。此示例显示“网站”主题目录。

themes/
  website/           <=== Theme starts here
    pages/           <=== Pages directory
      home.htm
    layouts/         <=== Layouts directory
      default.htm
    partials/        <=== Partials directory
      sidebar.htm
    content/         <=== Content directory
      intro.htm
    assets/          <=== Assets directory
      css/
        my-styles.css
      js/
      images/

修改主题可修改config/cms.php中的 'activeTheme' => 'demo'配置项。或登录后台
设置(setting)->内容管理(cms)->前端主题( Front-end Theme)相应进行查找更换、编辑!

子目录

october cms支持页面,部分,布局和内容文件的单级子目录.资源目录可以有任何结构。这简化了组织大型网站。在下面的示例目录结构中,您可以看到pages和partials目录包含blog子目录,content目录包含home子目录。

themes/
  website/
    pages/
      home.htm
      blog/                  <=== Subdirectory
        archive.htm
        category.htm
    partials/
      sidebar.htm
      blog/                  <=== Subdirectory
        category-list.htm
    content/
      footer-contacts.txt
      home/                  <=== Subdirectory
        intro.htm
    

要从子目录引用部分或内容文件,请在模板名称之前指定子目录名称。从子目录中渲染部分的示例

{% partial "blog/category-list" %}

注意:模板路径总是绝对的。如果在一个部分中,您将从同一个子目录中渲染另一个部分,您仍然需要指定子目录名称。

模板结构

url = "/blog"
layout = "default"
==
function onStart()
{
    $this['posts'] = ...;
}
==
<h3>Blog archive</h3>
{% for post in posts %}
    <h4>{{ post.title }}</h4>
    {{ post.content }}
{% endfor %}
配置部分

配置部分设置模板参数。支持的配置参数特定于不同的CMS模板,并在相应的文档文章中进行了说明。配置部分使用简单的INI格式,其中字符串参数值用引号括起来。页面模板的示例配置部分:

url = "/blog"
layout = "default"

[component]
parameter = "value

PHP代码部分


PHP部分中的代码在渲染模板之前每次执行。PHP部分对于所有CMS模板是可选的,其内容取决于定义它的模板类型。PHP代码部分可以包含可选的打开和关闭的PHP标签,以便在文本编辑器中启用语法高亮。应该始终在分隔符的另一行上指定打开和关闭标签==。

url = "/blog"
layout = "default"
==
<?
function onStart()
{
    $this['posts'] = ...;
}
?>
==
<h3>Blog archive</h3>
{% for post in posts %}
    <h4>{{ post.title }}</h4>
    {{ post.content }}
{% endfor %}

在PHP部分,您只能使用PHP use关键字定义函数并引用命名空间。PHP部分中不允许使用其他PHP代码。这是因为PHP页面被解析时转换为PHP类。使用命名空间引用的示例:

url = "/blog"
layout = "default"
==
<?
use Acme\Blog\Classes\Post;

function onStart()
{
    $this['posts'] = Post::get();
}
?>
==

作为设置变量的一般方法,您应该使用数组访问方法$this,虽然为简单起见,您可以将对象访问用作只读,例如

// Write via array
$this['foo'] = 'bar';

// Read via array
echo $this['foo'];

// Read-only via object
echo $this->foo;

使用的twig模版引擎,查看twig语法,http://twig.sensiolabs.org/documentation

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,962评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,126评论 6 342
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,034评论 25 709
  • 圆桌派 第一季:第二十一集 缺钱:为什么感觉越来越穷? 《圆桌派》是由著名媒体人、文化名嘴窦文涛携手优酷“看理想”...
    大尉说说阅读 4,274评论 0 0
  • 周二,晴。 昨晚睡得早,今早起的早,精神尚佳,工作心情愉快。 晚上去师大南区练习步伐挥拍,看旁边场上的人打得生龙活...
    蘑菇菌阅读 1,648评论 0 1

友情链接更多精彩内容