我正在建立一个网站,使用Wordpress作为CMS,并使用Yii框架构建。所有业务逻辑都工作正常。大多数可见页面都充满了Wordpress admin的内容,只有用户配置文件部分是用Yii构建的。
我的问题是,我想在Yii应用程序中重用wordpress页面的布局。最初,我尝试在一个空白的PHP文件中执行此操作,使用此代码一切正常:
<?php
require( \'/var/www/wordpress/wp-load.php\' );
get_header();
?>
<div>
some content here
</div>
<?php
get_footer();
?>
问题是,当我在Yii中创建新布局以便重用页眉和页脚时,它会崩溃并显示空白页面。我都试过了
require(\'/var/www/wordpress/wp-blog-header.php\');
和
require( \'/var/www/wordpress/wp-load.php\' );
.这是我用来在Yii中加载wordpress功能的代码,但不幸的是它不起作用。
<?php /* @var $this Controller */
spl_autoload_unregister(array(\'YiiBase\',\'autoload\'));
require( \'/var/www/wordpress/wp-load.php\' );
get_header();
spl_autoload_register(array(\'YiiBase\', \'autoload\'));
?>
我看到的只是一个完全空白的页面(没有标记)。
任何帮助都将不胜感激。理想情况下,我想使用get_header()
和get_footer()
Yii布局/视图中的wordpress功能。
谢谢
UPDATE
我检查了Apache日志,当我尝试在浏览器中打开页面时,似乎记录了以下错误:
PHP Fatal error: Call to a member function get() on a non-object in /var/www/wordpress/wp-includes/query.php on line 27
当我评论出
get_header();
行页面打开时没有任何错误(也没有任何样式)。所以有些东西阻止了Yii中的get\\u header()to work属性。