如何从这个 json 格式的 wordpress 中获取价值

问题描述

a:1:{s:9:"image_url";a:2:{i:0;s:62:"http://localhost/wordpress/wp-content/uploads/2021/04/g4-5.jpg";i:1;s:62:"http://localhost/wordpress/wp-content/uploads/2021/04/g1-2.jpg";}}

以上是我的数据。我正在使用 wordpress,我从 post Meta 表中检索这些数据。现在我只想显示图像。所以我想检索存储在上面的图像路径为 S:62。不知道怎么找回请帮助或指导我解决我的问题。

解决方法

它不是JSON数据而是序列化数据,如果它与post元数据相关,那么你必须使用WordPress函数get_post_meta

在 WordPress 中,大多数情况下您可以在 wp_optionswp_postmetawp_usermeta 中找到序列化数据。 WordPress 提供了各种 API 来从数据库中获取这些元数据。 (这里的表前缀 wp_ 是一个可配置的前缀,因此在大多数 WP 应用程序中,您会发现随机前缀,例如 df18ef_,WP DB 中的这一更改将提高您的 Web 应用程序的安全性。)

不要依赖自定义 SQL 总是尝试使用 WP 函数来获取数据,因为如果您的设置配置为对象缓存然后使用 WP,它们会通过将数据缓存在内存中(尤其是瞬态数据)对象中来优化获取逻辑内置函数可以为您节省很多,因为大多数用于对象缓存的插件无论是使用 redis 还是 memcache 都依赖于 WP 提供的钩子,因此使用 WP 函数而不是使用 SQL 语句来获取正确的数据。

用法:

$post_meta_1 = get_post_meta( get_the_ID(),'post_meta_key',true );

,

使用maybe_unserialize()

$unserialize = maybe_unserialize( $serialize );

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...