# 主题

# 主题覆盖

主题覆盖的工作原理是通过检测一个文件覆盖来替换一个给定的主题文件,因此系统将使用覆盖而不是默认文件。覆盖文件被放置在 app/themes/Peafowl/overrides。例如,假设你想替换 app/themes/Peafowl/views/image.php,你只需简单地将文件复制到 app/themes/Peafowl/overrides/views/image.php,系统将使用覆盖而不是默认文件。

# 自定义钩子

自定义钩子允许在主题的指定区域或部分中添加或编辑代码。默认主题包括一个自定义钩子文件夹,在那里你可以添加自己的东西,并充满了大量的示例文件。例如,自定义分享按钮,按照以下步骤:

  • 进入主题自定义钩子文件夹 app/themes/Peafowl/custom_hooks/
  • 复制一份 share_links.sample.php (在此副本中进行所有需要的编辑)
  • 将您的工作副本重命名为 share_links.php

Chevereto 会检测到你的覆盖文件,并将这个文件加载到主题中。

# 克隆默认主题

如果你需要更多的定制,你应该克隆默认的 "Peafowl "主题,并在这个新主题中完成您的工作。要克隆默认主题,请执行以下操作:

  • 复制 app/themes/Peafowl/ 并将其粘贴在同一目录下
  • 将您的新主题命名为您想要的任何名称(没有空格)

最好的方法是在你的电脑上创建一个本地的 git repo 来跟踪默认主题的变化。创建一个本地 git repo,里面有 Chevereto 的最后一个版本,每次你想合并代码时都要提交,这样就可以逐行看到所有的变化。