出于某种原因,get_option()
当我将网站从本地主机移动到web服务器时,返回二进制结果时开始失败。我通过FTP上传文件迁移了WordPress
然而,其他一切都很完美。甚至wp-admin
工作正常:我可以编辑、发布等。这只是一行代码,让我感到沮丧。它来自我正在使用的一个主题,但没有特定于主题的行为:它在此之前崩溃了。该行代码尝试执行以下操作:
$sqbtn_1 = unserialize(get_option(\'magaling_ads_468060_1\')); //returns null.
$sqbtn_1 = $sqbtn_1->is_empty() ? $ad_def : $sqbtn_1; //CRASHES: is_empty on a non-object.
如果我创建一个简单的PHP文件,我可以证明数据正确来自MySQL。我的WordPress选项表中有“magaling\\u ads\\u 468060\\u 1”字段,它包含以下内容:mysql_query(\'SET NAMES utf8\');
$result = mysql_query("select * from wp_options WHERE option_name = \'magaling_ads_468060_1\'");
//prints out the following value of the option_value field:
s:376:"O:18:"Padd_Advertisement":5:{s:27:"Padd_Advertisementimg_url";s:88:"http://www.echysttas.org/wp-content/themes/magaling/images/advertisement-468x060_1.jpg";s:28:"Padd_Advertisementalt_desc";s:15:"Axonn Echysttas";s:27:"Padd_Advertisementweb_url";s:24:"http://www.echysttas.org";s:26:"Padd_Advertisementtarget";s:4:"_new";s:29:"Padd_Advertisementcss_class";s:0:"";}";
所以MySQL返回数据!但是,get\\u选项返回nothing. 我回音了,它是空的。在另一边。。。get_option(\'magaling_installed\'); //works and returns "1"
其他一切都很好,甚至返回其他特定于主题的(整数或字符串)值。var_dump( get_option(\'magaling_ads_468060_1\') ); //shows bool(false)
var_dump( get_option(\'magaling_installed\') ); //shows string(1) "1"
var_dump( get_option(\'blogname\') ); //string(9) "Echysttas"