0

我正在尝试将 Wordpress 集成到 CakePHP 2.6.1中,以将其用作最终用户的 CMS。我包含了访问 wordpress 功能所需的文件:wp-blog-header.php.

由于 CakePHP 只允许包含位于 CakePHP 内部的文件,所以我将 wordpress 安装在里面app/Vendor/wordpress,现在我试图以AppController这种方式导入必要的文件:

App::import('Vendor', 'wordpress'.DS.'wp-blog-header');

但似乎有一些功能冲突,因为我从 CakePHP 收到此错误:

错误:无法重新声明 __()(之前在 /home/todopeta/alvarotrigo/pruebas/cakephp/lib/Cake/basics.php:581 中声明)
文件:/home/todopeta/alvarotrigo/pruebas/cakephp/app/Vendor/wordpress /wp-includes/l10n.php
行:163

以前有人在 CakePHP 中集成过 wordpress 吗?

有什么办法呢?

我已经看到其他 PHP MVC frameworksk 似乎是可能的,例如 Laravel。CakePHP 在这方面是否更严格?

4

2 回答 2

1

使用这种方法,您将做噩梦并最终得到大量代码。

相反,为什么不尝试使用 CakePHP CMS 系统,例如:

https://croogo.org/

于 2015-02-08T20:25:29.447 回答
1

通过为 CakePHP 创建一个 WP 插件来访问 WP 数据,并为每个 WP 表添加一个模型,并通过 CakePHP 读取数据。

您链接的文章也是如此,但它使用 WP_Query 类和更远的 Corcel,这似乎是 Eloquent ORM 和 WP 之间的混合。我不会走那条路并使用 CakePHP ORM。

我可以向你保证,由于丑陋的 WP 代码和架构,其他一切都会变得很痛苦。

如果您尝试在 CakePHP 中使用 WP 代码,就像您尝试过的那样,这将变得非常痛苦、耗时,并且如果没有一些非常非常丑陋的代码,可能永远无法正常工作。

如果您只需要 WP 的部件,请考虑创建一个 WP 插件并通过 iframe 在您的页面中嵌入 WP 内容。这些天,AFAIK WP 也有一个 json API,您也可以尝试通过该 API 读取数据。

于 2015-02-09T00:17:18.710 回答