Получить пользовательские параметры из таблицы параметров WordPress - PullRequest
0 голосов
/ 22 октября 2019

У меня есть пользовательские параметры, которые хранятся в базе данных, например:

option_name: shop_details

option_value: {"shop_name":"My shop","shop_slug":"my-shop","shop_description":"This is my cool shop.","shop_start_date":"2019-10-03","shop_end_date":"2019-10-11","shop_owner":"1","taxonomy":"shop"}

Я пытаюсь отобразить часть этой информации на внешнем интерфейсе, например:

$shop_options = get_option('shop_details');
echo $shop_options['shop_description'];

Но я получаю эту ошибку:

Warning: Illegal string offset 'shop_description' in D:\www\my-shop\wp-content\themes\shop-city\taxonomy-shop.php on line 32 {

Что я делаю не так?

1 Ответ

0 голосов
/ 22 октября 2019

Значение, которое вы получаете в $shop_options, имеет формат JSON , поэтому сначала нужно его декодировать, а затем получить массив. Используйте:

$shop_options = get_option('shop_details');
$shop_options = json_decode($shop_option);

Если вы позвоните json_decode($somestring), вы получите объект, и вам нужно получить доступ как $object->key, но если вы позвоните json_decode($somestring, true), вы получите словарь и можете получить доступ как $array['key']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...