为什么UPDATE_POST_META对某些字符串不起作用?

时间:2011-12-16 作者:ProfK

我正在尝试使用以下代码将上载文件的本地路径存储为自定义帖子类型的元数据:

$upload = wp_handle_upload ( $_FILES [WPSM_MAIL_META_ATTACHMENT], array (\'test_form\' => false ) );
if ((isset ( $upload [\'error\'] )) && ($upload [\'error\'] != \'Specified file failed upload test.\')) {
    die ( $upload [\'error\'] );

} else {
    $path = $upload[\'file\'];
    //$path = \'C:\\Users\\Brady\\Music\\Honour, Valour, Pride\';
    update_post_meta ( 34, WPSM_MAIL_META_ATTACHMENT, $path );
}
使用$path = $upload[\'file\'] 给我打电话我明白了$path 包含“C:\\xampp\\htdocs\\wordpress/wp-content/uploads/2011/12/ReSharper-6.1-License18.txt”,但此帖子的“我的”post\\u meta“行在更新后有一个空的”meta\\u value“列。当我使用注释掉的测试文本赋值$path, meta\\u value列已正确更新为文本路径字符串。

我在这里真的迷路了。同一个函数调用的两个字符串参数怎么会有如此不同的效果?

1 个回复
SO网友:booota

仔细检查您的线路:

通过$path=$upload[\'file\']调用,我得到$path包含“C:\\xampp\\htdocs\\wordpress/wp-content/uploads/2011/12/ReSharper-6.1-License18.txt”

“\\”在“wordpress”之后更改为“/”,即.\\wordpress/,因此路径无效。但是,当您使用硬编码路径(这不是无效的)时,您就会得到答案。首先尝试修复您的路径。

结束

相关推荐

在single.php/sidebar.php中发布X of Y

有没有办法把“Y中的X”放进我的侧边栏?我想我只能在一篇博客文章(比如检查内容是否为单篇)时显示它,但我希望能够看到我正在查看的文章。在过去的20分钟里,谷歌搜索“wordpress post x of y”给了我很多关于y页中x类或类似内容的信息,所以我想在这里问一下。