как разобрать значения таблицы wordpress post_meta - PullRequest
10 голосов
/ 26 февраля 2011

Мне нужно разобрать wordpress post_meta таблицу, в частности "_ wp_attachment_metadata"

Например:

Его значение для идентификатора записи = 99

> a:6:{s:5:"width";s:3:"238";s:6:"height";s:3:"179";s:14:"hwstring_small";s:23:"height='96'
> width='128'";s:4:"file";s:21:"2010/11/matt-lane.jpg";s:5:"sizes";a:1:{s:9:"thumbnail";a:3:{s:4:"file";s:21:"matt-lane-150x150.jpg";s:5:"width";s:3:"150";s:6:"height";s:3:"150";}}s:10:"image_meta";a:10:{s:8:"aperture";s:1:"0";s:6:"credit";s:0:"";s:6:"camera";s:0:"";s:7:"caption";s:0:"";s:17:"created_timestamp";s:1:"0";s:9:"copyright";s:0:"";s:12:"focal_length";s:1:"0";s:3:"iso";s:1:"0";s:13:"shutter_speed";s:1:"0";s:5:"title";s:0:"";}}

Я не понял, как он компилируется или как его можно анализировать вне WordPress. Я должен загрузить последние статьи со всеми наборами данных поста на платформе magento из wordpress.

Пожалуйста, помогите мне разобрать эти данные для получения изображений.

Заранее спасибо

Ответы [ 3 ]

19 голосов
/ 26 февраля 2011

Попробуйте:

$a = unserialize("");
print_r($a);

http://php.net/manual/en/function.unserialize.php

7 голосов
/ 29 июля 2012

Что я понимаю, это:

Существует два типа переменных, например:

  1. a:6:
  2. s:3:

a = массив и 6 - размерность массива
s = строка и 3 длина строки

2 голосов
/ 26 февраля 2011

Большое спасибо за быстрый ответ Крейга.

Использовал метод unserialize и получил все из строки.

Array
(
    [width] => 523
    [height] => 523
    [hwstring_small] => height='96' width='96'
    [file] => 2010/11/tee1.jpg
    [sizes] => Array
        (
            [thumbnail] => Array
                (
                    [file] => tee1-150x150.jpg
                    [width] => 150
                    [height] => 150
                )

            [medium] => Array
                (
                    [file] => tee1-300x300.jpg
                    [width] => 300
                    [height] => 300
                )

            [post-thumbnail] => Array
                (
                    [file] => tee1-523x198.jpg
                    [width] => 523
                    [height] => 198
                )

        )

    [image_meta] => Array
        (
            [aperture] => 0
            [credit] => 
            [camera] => 
            [caption] => 
            [created_timestamp] => 0
            [copyright] => 
            [focal_length] => 0
            [iso] => 0
            [shutter_speed] => 0
            [title] => 
        )

)

Вот вывод, теперь можно взять любое изображение из поста WordPress meta_data

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