我正在使用wordpress网站,但对于网站的一部分,我已决定手动连接到数据库,并基本上绕过wordpress来编辑数据库并检索结果。
问题是,当我包含WP页眉和页脚时,我得到一个空白页面,虽然我无法理解,但查看源会出错。
这是页面显示的源代码:
<!DOCTYPE html>
<!--[if IE 6]>
<html id="ie6" <br />
<font size='1'><table class='xdebug-error xe-fatal-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Fatal error: Call to undefined function language_attributes() in C:\wamp\www\thurston\wp-content\themes\twentyeleven\header.php on line <i>15</i></th></tr>
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0013</td><td bgcolor='#eeeeec' align='right'>388104</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\thurston\wp-content\themes\twentyeleven\editdb.php' bgcolor='#eeeeec'>..\editdb.php<b>:</b>0</td></tr>
<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0024</td><td bgcolor='#eeeeec' align='right'>438352</td><td bgcolor='#eeeeec'>require( <font color='#00bb00'>'C:\wamp\www\thurston\wp-content\themes\twentyeleven\header.php'</font> )</td><td title='C:\wamp\www\thurston\wp-content\themes\twentyeleven\editdb.php' bgcolor='#eeeeec'>..\editdb.php<b>:</b>3</td></tr>
</table></font>
对不起,但所有这些都显示出来。
实际页面的代码是这样的(链接到它,因为此站点上的代码功能不起作用):
https://dl.dropbox.com/u/10062971/editdb.php
wordpress标题:
https://dl.dropbox.com/u/10062971/header.php
添加到数据库然后显示数据库中的信息在主页上工作,它只需单击编辑并转到出现问题的editdb.php页面。
有没有人有任何想法?
答案 0 :(得分:0)
language_attributes()位于wp-includes / general-template.php。
中你不能只包括header.php和foter.php并希望最好。你必须包括所有依赖项。
在像[myAnchorText]这样的页面中插入一个anchortext,使用输出缓冲来捕获最终的HTML并替换achor文本:
<?php
// example from php.net
function callback($buffer) {
// replace all the apples with oranges
//or whatever logic you have
return (str_replace("[myAnchorText]", "oranges", $buffer));
}
ob_start("callback");
?>
<html><body>
<p>It's like comparing apples to oranges.</p>
</body></html>
<?php ob_end_flush(); ?>
/* output:
<html><body>
<p>It's like comparing oranges to oranges.</p>
</body></html>
*/