maybe_unserialize

説明

mixed maybe_unserialize( string $original )
シリアライズした文字列からアンシリアライズした値を取得する。

パラメータ

  • $original
    シリアライズした文字列を指定。

返り値

$originalをアンシリアライズした値(数値、文字列、配列など)を返す。シリアライズされていない場合は$originalの値をそのまま返す。

注意

投稿情報のカスタムフィールドデータやユーザー情報の拡張データは、各種データ形式を保存できるようシリアライズしてデータベースに保存している。 get_post_meta get_user_meta関数を使用する場合は、このmaybe_unserialize関数を直接呼び出す必要はないが、対象テーブルから直接生データを取得して使用する場合はこのmaybe_unserialize関数を使用する。

使用例

  • すべての投稿情報のカスタムフィールド'basic'値を$valuesに格納する。
    global $wpdb;
    $values = array();
    $metas = $wpdb->get_results( "SELECT post_id,meta_value FROM {$wpdb->postmeta} WHERE meta_key='basic'" ) ;
    foreach ( $metas as $term ) {
    	$values[$term->post_id] = maybe_unserialize( $term->meta_value );
    }
    

フィルター

直接実行するフィルターはありません。

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/functions.php

最終更新 : 2013年04月27日 17:14



お勧め

PHPとMySQLのバージョンを確認(2013年9月11日 更新)

先日、WordPressで構築されたサイトについて最新版へのバージョンアップを依頼される。使用されていたWordPressはバージョン2.xということで、最新版へバージョンアップできるのか、PHPとMySQLのバージョンを確認することになった。

投稿一覧に独自リンクを追加する(2013年10月16日 更新)

管理者ページの「投稿一覧」や「固定ページ一覧」の各投稿記事はマウスポインタを移動すると、「編集」や「クイック編集」といったリンクが表示される。このリンクに独自のリンクを追加する方法を調べてみた。

さくらのVPSでKUSANAGI(2018年5月27日 更新)

請け負っていた業務が一段落したので、「さくらのVPS」で「KUSANAGI」を試してみました。推奨環境はメモリ4GBとなっているが、今回は実験的な利用なので、SSD 2GBプランでトライしました。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

ログインページを変える(2014年9月12日 更新)

WordPressの標準的な不正ログイン対策としては、ログインIDは'admin'を避けるパスワードはユニークで長くする、場合によってはアクセスできるIPアドレスを制限する、といった具合だろう。これらの他に何かできないものだろうかと、ちょっと考えてみた。