WPALLIMPORT从中继场导出图像

时间:2019-02-18 作者:Alex Trainor

我在导出自定义字段图像时得到此输出,

s:267:"a:9:{s:10:"sm-field-0";s:4:"1228";s:10:"sm-field-1";s:4:"1229";s:10:"sm-field-2";s:4:"1230";s:10:"sm-field-3";s:4:"1231";s:10:"sm-field-4";s:4:"1232";s:10:"sm-field-5";s:4:"1233";s:10:"sm-field-6";s:4:"1234";s:10:"sm-field-7";s:4:"1235";s:10:"sm-field-8";s:4:"1236";}";
我可以添加一个函数或php将其转换为URL?但我不知道。有人能帮忙吗?

1 个回复
最合适的回答,由SO网友:mrben522 整理而成

这是一个序列化字符串,实际上是一个序列化字符串的序列化字符串,这很奇怪。您需要将其转换为数组,然后从它返回的ID中获取图像URL。

比如说$str 是包含该字符串的变量,下面是如何从这些附件ID获取图像URL。仅供参考我放第二个unserialize 在if语句内部调用,以便在值变为单个序列化字符串时不会中断

function parseUrlsFromSerializedIds($str) {
    $arr = unserialize($str);
    if (is_serialized($arr)) {
        $arr = unserialize($arr);
    }
    $results = [];
    foreach ($arr as $imageID) {
        $url = wp_get_attachment_url($imageID);
        $results[] = $url;
    }
    return implode(\',\', $results);

}
在里面foreach 您将需要对URL执行一些操作。我不确定你想用什么格式把它们全部返回,所以我就不说了。

相关推荐

https images not displaying

Setup嗨,伙计们!我有个奇怪的问题。我正在使用安装了ssl证书的wordpress Premium BeTheme。Problem问题是,虽然图像是用https上传到网站上的,但它们没有显示出来。如果我手动将图像的URL从https切换到http,它们就会开始显示。What I have done?我尝试过在internet上卸载ssl证书和几乎所有的解决方案,但都没有解决。Here is the URL of the website : https://uptimeelite.com/