跳转到目录

主题设置和配置

现在我们已经在一个主题中概述了HTML和CSS的结构,我们需要在OJS或OMP应用程序中注册我们的插件。我们将使用一些PHP和XML文件来实现这一点。

让我们看一看我们将调用的基本主题的文件结构教程主题.

/plugins/themes/tutorial-theme/index.php/plugins/themes/TutorialThemePlugin.inc.php/plugins/themes/tutorial-theme/version.xml/plugins/themes/tutorial-theme/locale.po/plugins/themes/tutorial-theme/style/index.less/plugins/themes/tutorial-theme/style/variables.less/plugins/themes/tutorial-theme/styles/structure.less/plugins/themes/tutorial-theme/styles/forms.less

这个/plugins/themes/tutorial-theme/index.php文件用于加载我们的主题。我们加载主题的类文件并实例化一个新对象

<?php需要一次(“TutorialThemePlugin.inc.php”);返回新的家教血凝素();?>

这个/插件/主题/教程主题/TutorialThemePlugin.inc.php是我们定义主题类文件的地方。然后,我们可以加载样式表,并使用主题API.

<?php进口('lib.pkp.classes.plugins.ThemePlugin');家教血凝素延伸特梅普金{/***加载我们主题的自定义样式*@return null*/公众的功能初始化(){美元这个->addStyle(“样式表”,'样式/索引.更少');}/***获取此主题的显示名称*@返回字符串*/功能getDisplayName(){返回“教程主题”;}/***获取此插件的描述*@返回字符串*/功能getDescription(){返回“OJS或OMP的一个示例主题是用我们令人惊叹的文档构建的。”;}}

这个/插件/主题/教程主题/version.xml需要文件来配置关于主题的元数据,OJS和OMP使用这些元数据来正确加载和显示主题。

<?xml version=“1.0”encoding=“UTF-8”>教程主题插件.主题1.0.0.02016-11-21<延迟加载>1.家教血凝素

这个/插件/themes/tutorial-theme/locale/en_-US/locale.po文件允许我们将主题中的任何字符串准备好进行翻译。我们通过给字符串分配一个键来实现这一点。

“项目Id版本:\n”“将Msgid错误报告给:\n”“最后一位翻译人员:\n”“语言团队:\n”“MIME版本:1.0\n”“内容类型:text/plain;charset=UTF-8\n”“内容传输编码:8bit\n”“POT创建日期:2020-06-19T13:50:00+00:00\n”“PO修订日期:2020-06-19T13:50:00+00:00\n”“语言:\n”“Msgid”“插件.主题.教程主题.名称”msgstr“Tutorial-Theme”msgid“plugins.themes.Tutorial-Theme.description”msgstr“一个使用我们令人惊叹的文档构建的OJS或OMP的示例主题。”

还记得我们是如何在主题插件类中为主题命名和描述的吗?我们现在可以更新这些方法来加载翻译后的字符串。

/***获取此主题的显示名称*@返回字符串*/功能getDisplayName(){返回__('插件.主题.教程主题.名称');}/***获取此插件的描述*@返回字符串*/功能getDescription(){返回__('插件.主题.教程主题.说明');}

如果你正在构建一个供你个人使用的主题,你就不需要这个了。但我们始终建议为即将分发的任何主题设置翻译功能。公共知识项目的用户社区覆盖数十个国家和语言,所有这些国家和语言都需要使用自己语言的软件。188bet手机网金宝搏官网登录188金宝搏下载app

最后/插件/主题/教程主题/样式/索引.less加载自定义CSS/LESS文件。在我们的主题插件类文件中,您可能已经注意到以下内容初始化方法:

公众的功能初始化(){美元这个->addStyle(“样式表”,'样式/索引.更少');}

打电话addStyle并将其指向主LESS文件,应用程序将自动编译并加载CSS文件到使用此主题的任何期刊或报刊的前端。

如果您不确定LESS文件是关于什么的,请查看上面关于CSS/LESS的部分。

进一步探索#

主题指南的这一部分向您介绍了OJS或OMP主题的结构。但你们还可以做更多的事情主题API.

继续阅读更多关于如何使用的实用技巧儿童主题,有关主题API主题选项API,以及指向现有野外自定义主题示例的链接。

Baidu