我用wordpress建立了一个新的网站,看起来很棒,需要博客功能。
我们的旧网站是用Django构建的,看起来很糟糕,但多亏了Django,它有必要内置后端功能。例如,在一个页面上,它有一个下拉框,你可以从中选择选项,它会返回数据,这在Django网站上工作得很好。
我想以某种方式将这个功能集成到wordpress前端。这可能吗?如果是这样,你能建议我怎么做吗?
我知道wordpress是一个PHP CMS,而Django是一个Python框架,所以你不能简单地把它们放在一起。但是有没有人有任何建议,我如何从我现有的Django网站集成到我的wordpress前端的功能。
我发现了这个问题:Wordpress on Django
询问如何从Django连接到wordpress。但我想从wordpress连接到Django。
本质上,我想在我的wordpress站点上复制一些Django页面,利用现有的Django后台功能。
这能做到吗?有什么建议吗?
谢谢。
我将分享我创建混合解决方案的经验,尽管对我来说这是两个不同的PHP框架,但方法可能是相同的。这不是一个现成的解决方案,但也许会有所帮助。我会列出要点。
- 要让Wordpress和django在同一个url上,你必须把它们安装在同一个web服务器上(Apache最有可能)
- 将django app和Wordpress站点放在不同的文件夹中,例如
localhost/wordpress
和localhost/django
,这样重写规则就不会干扰。 - 写一个Wordpress插件,将会话存储在数据库中(网上有教程,但主要思想是实现会话保存/加载功能,并使用
session_set_save_handler()
来注册它们) - 写一个Worpdress插件,将添加菜单点为所有旧的后端功能(或只是一个菜单说"后端")
- 当用户单击此菜单时,只需将他重定向到
localhost/django/oldfunction
- 在django app中-从cookies中读取
PHPSESSID
,并使用它从数据库中读取额外的会话数据(例如user_id)并创建会话。这样你就可以在两个应用程序之间实现"单点登录"。 - 调整django中的css样式,使旧应用中的ui控件看起来与新站点相似。在大多数情况下,这必须手动完成。目标是给人留下印象,这是一个应用程序。根据我的经验,调整UI控件的配色方案就足够了,其余的并不重要。
这是一个复杂的方法,它不是很快,但它是干净的(你有两个独立的应用程序),并可能允许缓慢迁移和重构旧的应用程序功能到新的。这里的主要事情是从两个应用程序访问相同的数据库,并有他们托管在同一个web服务器上。