使用MSM和配置引导程序将基于文件的模板同步到数据库时出现问题

时间:2012-10-31 10:14:14

标签: expressionengine

当客户宣布他们想要另一个使用MSM模块的额外网站时,我已经为客户启动了我的典型EE构建(使用引导配置)。(/ s>)。

因此添加了MSM模块,我注释了$config['site_url']$config['cp_url'],并使用$assign_to_config在index.php中设置了这些模块。

那时我发现this bug无法识别MSM配置文件设置,这很痛苦,但我可以解决它。但是,我注意到,当我创建辅助站点时,它无法识别加载项的自定义位置,因此我必须将其添加到index.php以及$assign_to_config['third_party_path'] = "../assets/third_party/";

然后我发现当我创建或修改模板文件时,它不会自动同步,因此我需要每次手动执行此操作,这是真正的PITA。

为什么我的模板不能同步到数据库?这与MSM配置错误有关吗?

2 个答案:

答案 0 :(得分:3)

虽然我还没有试过引导第三方路径,但我确实能够为MSM站点引导模板路径......你使用什么引导方法?

您的网站是否位于子域或子文件夹中?我只有子文件夹的经验,所以也许会有所不同(尽管它不应该)。

你能否详细了解一下发生了什么?您的第一个网站(site_id = 1)模板会自动从文件系统编辑中同步,但您的第二个网站却没有?然而,如果你去CP>设计>同步模板,有效吗?

MSM设置的$ assign_to_config部分在引导时肯定是一个弱点......我想知道我们是否需要为MSM + CP环境设置一个额外的引导程序,它会查看cp cookie($ _COOKIE [ 'exp_cp_last_site_id']),并根据该值设置值。

答案 1 :(得分:0)

如果您告诉我们您使用的是哪个引导程序,可能会有所帮助。例如,如果您查看this bootstrap site_urlcp_url是使用HTTP_HOST服务器变量设置的,那么这不应与您的MSM安装(以及多个域)冲突)。

也许您可以尝试使用该boostrap文件,看看它是否通过模板同步修复了您的问题?

最后,如果您要使用EE模板管理器,则不需要将模板存储为文件。相反,如果你想将模板保存为文件,使用Sublime Text或其他编辑器编辑它们可能要容易得多,而不是笨重的内置编辑器(实际上只对小/简单的更改有用)。