我如何将wordpress前端集成到我现有的Django web应用程序之上?


How can I integrate a wordpress front-end on top of my existing Django web application

我用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最有可能)
  1. 将django app和Wordpress站点放在不同的文件夹中,例如localhost/wordpresslocalhost/django,这样重写规则就不会干扰。
  2. 写一个Wordpress插件,将会话存储在数据库中(网上有教程,但主要思想是实现会话保存/加载功能,并使用session_set_save_handler()来注册它们)
  3. 写一个Worpdress插件,将添加菜单点为所有旧的后端功能(或只是一个菜单说"后端")
  4. 当用户单击此菜单时,只需将他重定向到localhost/django/oldfunction
  5. 在django app中-从cookies中读取PHPSESSID,并使用它从数据库中读取额外的会话数据(例如user_id)并创建会话。这样你就可以在两个应用程序之间实现"单点登录"。
  6. 调整django中的css样式,使旧应用中的ui控件看起来与新站点相似。在大多数情况下,这必须手动完成。目标是给人留下印象,这是一个应用程序。根据我的经验,调整UI控件的配色方案就足够了,其余的并不重要。

这是一个复杂的方法,它不是很快,但它是干净的(你有两个独立的应用程序),并可能允许缓慢迁移和重构旧的应用程序功能到新的。这里的主要事情是从两个应用程序访问相同的数据库,并有他们托管在同一个web服务器上。