У меня есть Wordpress Framework Unyson, он работает на bootstrap. Он поддерживает расширения и пользовательские параметры. У меня есть расширение Mega Menu, оно содержит четыре типа пунктов меню - item, column, row, default. Внутри каждого мы можем добавить наш идентификатор опции с некоторыми типами, которые поддерживаются фреймворком, в моем topi c это:
$options = array(
'item_thumbnail' => array(
'type' => 'upload',
'label' => __( 'Image', 'fw' )
),
);
в руководстве пользователя unyson для возврата значения из идентификатора пользовательской опции, нам нужно использовать hook fw_ext_mega_menu_get_db_item_option($item_id, 'default')
Но в моем topi c он возвращает пустую строку. Если я попытаюсь отобразить массив элемента по умолчанию, он покажет мне:
array
(
[item_thumbnail] => ''
)
Но в мегаменю на странице администратора внутри элемента я могу загрузить изображение и сохранить его, после того как я смогу обновить sh страницу и увидеть ее. После этого я начал находить идентификатор опции item_thumbnail в базе данных и находить meta_key
fw:ext:mm:io:mysite
и meta_value
a:5:{s:4:"type";s:7:"default";s:3:"row";a:0:{}s:6:"column";a:0:{}s:4:"item";a:1:{s:5:"fakir";s:7:"default";}s:7:"default";a:1:{s:14:"item_thumbnail";a:2:{s:13:"attachment_id";s:2:"11";s:3:"url";s:49:"//mysite.loc/wp-content/uploads/2020/01/01.jpg";}}}
Это означает, что значение внутри массива по умолчанию существует, и содержит массив со значением url и ссылкой на изображение. Как вернуть это значение для товара?