WordPress MS wp-admin/includes/post.php出现短码生成器错误

时间:2011-02-28 作者:Matthew Ruddy

我对Wordpress 3.1启用多站点和我的主题自定义短代码生成器有一个严重的问题。出于某种原因,每当我创建一个新的页面/帖子/自定义帖子类型页面等时,我都会遇到以下错误。这特别是单选按钮和“name”标记的问题。移除后,一切正常。当它设置为变量时,我会得到错误。但是,将变量设置为常量(如文本)会使其再次工作。

这就是我所犯的错误;我不知道这是什么意思,也不知道是什么原因造成的:

Warning: Invalid argument supplied for foreach() in /home/matthew/public_html/wp-admin/includes/post.php on line 197

Warning: Cannot modify header information - headers already sent by (output started at /home/matthew/public_html/wp-admin/includes/post.php:197) in /home/matthew/public_html/wp-includes/pluggable.php on line 897

以下是PHP代码(检查第892行):http://pastebin.com/BNK7wE2W

我有点怀疑在主题发布之前发布太多信息,但如果需要访问管理面板,那么如果可能,请与我联系。

提前谢谢你,马修。

2 个回复
最合适的回答,由SO网友:Dougal Campbell 整理而成

我确实在你的case 单选按钮条款:在<label> 标签,您使用$val, 但我想你是说$option[\'id\'].

我不明白这与foreach 您会遇到错误,但修复它不会有什么坏处。

奇怪的是,真正的错误来自核心代码:wp-admin/includes/post.php, 第197行。看起来您正在传递某个post meta,但您并没有传递它想要的数组。这有助于你缩小范围吗?

SO网友:Bainternet

当您获得:

警告:无法修改标题信息-标题已由发送(输出开始于。。。

Reason and Solution :这通常是因为开口前有空格、换行符或其他垃圾<?php 标记或结束后?> 标签确保没有并另存为不带bom的utf-8

结束