edx 平台无法应用 stanford 主题

edx platform cannot apply stanford theme

我是 运行 aws 中的全栈 edx 平台,使用预安装的映像。 我尝试使用此处所述的手动方法应用斯坦福主题:

https://github.com/edx/edx-platform/wiki/Stanford-Theming

我克隆了一个位于此处的主题存储库:

https://github.com/Stanford-Online/edx-theme

并按照上述教程中的描述进行操作。 主题文件放在各自的目录下。

但是重新编译lms资产后,lms并没有改变。

什么都没发生。

###这些说明最初是为 Birch 编写的。请参阅下面 Eucalyptus(及更高版本)的更新部分

以下是使用此处描述的手动方法启用自定义主题的步骤:

https://github.com/edx/edx-platform/wiki/Stanford-Theming

首先创建基础虚拟机:

mkdir fullstack
cd fullstack
curl -L https://raw.githubusercontent.com/edx/configuration/master/vagrant/release/fullstack/Vagrantfile > Vagrantfile
vagrant plugin install vagrant-hostsupdater
export OPENEDX_RELEASE="named-release/birch"
vagrant up

下载虚拟框可能需要一些时间。关键是导出 OPENEDX_RELEASE 环境变量。这特别是安装 Birch 命名版本。随着时间的推移,这会改变。在此处查看有关命名版本的更多信息:

https://edx.readthedocs.io/projects/edx-developer-docs/en/latest/named_releases.html

现在,SSH 进入虚拟机并成为 edxapp 用户:

vagrant ssh
sudo su edxapp -s /bin/bash
cd ~
source edxapp_env

从github下拉主题:

mkdir themes
cd themes
git clone https://github.com/Stanford-Online/edx-theme.git default

配置 edX 以使用新主题:

cd /edx/app/edxapp
vi lms.env.json
change "USE_CUSTOM_THEME": false to "USE_CUSTOM_THEME": true
change "THEME_NAME": "", to "THEME_NAME": "default",
exit and save vi

重新编译资产:

cd /edx/app/edxapp/edx-platform
paver update_assets lms --settings=aws

使用浏览器测试:http://192.168.33.10:8000/courses 或 http://localhost:8000/courses

#更新

###Eucalyptus 版本中的安装和主题过程发生了变化。

要安装 devstack 或 fullstack,请按照以下步骤操作: edx-installing-configuring-and-running

要启用 Stanford 主题,请按照下列步骤操作: edx-installing-configuring-and-running...#enable-themes

/edx/app/edxapp/lms.env.json 中设置了以下变量:

ENABLE_COMPREHENSIVE_THEMING: true,
COMPREHENSIVE_THEME_DIRS: ["/edx/app/edxapp/edx-platform/themes" ],
DEFAULT_SITE_THEME: "stanford-style",

然后重启应用:sudo /edx/bin/supervisorctl restart edxapp:

如果这有效,那么恭喜!您已正确配置 Open edX 主题。现在开始自定义您的主题,您需要将“stanford-style”下的所有文件复制到您自己的目录结构中。这非常重要,因此您可以将文件置于独立于 Open edX 的配置控制之下。

将主题放在这里:/edx/app/edxapp/themes/<your-theme-name>

sudo mkdir /edx/app/edxapp/themes
sudo chown edxapp:edxapp /edx/app/edxapp/themes
cd /edx/app/edxapp/themes
sudo cp -R /edx/app/edxapp/edx-platform/themes/stanford-style <your-theme-name>
sudo chown -R edxapp:edxapp <your-theme-name>

然后,更改lms.env.json

中的变量
ENABLE_COMPREHENSIVE_THEMING: true,
COMPREHENSIVE_THEME_DIRS: ["/edx/app/edxapp/themes" ],
DEFAULT_SITE_THEME: "<your-theme-name>",

在进入生产环境之前,通过将变量移至 /edx/app/edx_ansible/server-vars.yml 使这些更改永久化(仅适用于全栈或本机)。如果该文件尚不存在,则创建它。 server-vars.yml.

中变量的定义和命名略有不同
EDXAPP_ENABLE_COMPREHENSIVE_THEMING: true
EDXAPP_COMPREHENSIVE_THEME_DIRS:
  - /edx/app/edxapp/themes
EDXAPP_DEFAULT_SITE_THEME: "<your-theme-name>"

然后,运行 sudo /edx/bin/update edx-platform open-release/eucalyptus.2 自动生成一个新的 lms.env.json。检查 lms.env.json 以确保正确处理了 ansible 变量。

你需要:

  1. 主题文件的根目录
  2. 创建主题
  3. 启用和应用主题
  4. 编译主题

有完整的指南:

http://edx.readthedocs.io/projects/edx-installing-configuring-and-running/en/latest/configuration/changing_appearance/theming/