更新POST元数据未序列化数组

时间:2016-01-28 作者:Robbert

出于某种原因,我的update_post_meta() 函数不接受数组。通常情况下,该函数会自行序列化数组,但现在我需要自己完成此操作,否则它不会更新。

这可能是因为我把它叫做类内吗?

My code:

class Checkout {

    // Initializes object, calls the init hook
    public function __construct( $testMode = false ) {

        // Calls the init hook
        add_action( \'init\', array( $this, \'setup\' ) );

    }

    public function setup() {

        // Insert a post 
        $post_id = wp_insert_post( array( \'post_title\' => \'Post title\', \'post_content\' => \'\', \'post_type\' => \'transaction\', \'post_status\' => \'publish\' ) );

        // Create order data array
        $order_data = array( 
            \'subtotal\'  => 100,
            \'vat\'       => get_option( \'vat_percentage\' )
        );

        // Update order price
        update_post_meta( $post_id, \'order_data\', $order_data );

    }

}

// Call object
$checkout = new Checkout();

1 个回复
最合适的回答,由SO网友:Robbert 整理而成

问题是在我的方式中包括了一些spl_autoload_register() 作用这导致WordPress核心出现了一些问题。请原谅我之前没有测试这个。

相关推荐

Foreach循环内的if/ellif in_array仅显示一个POST的问题

如果某个类别的帖子对应一个类别,我会尝试为每个帖子指定一个特定的背景色。我的函数可以工作,但仅限于在结果中显示一篇文章。如果我删除此功能,将显示所有帖子。更多信息:在我的页面上,我有按类别筛选帖子的按钮。如果单击一次,我将显示该类别的所有帖子。但每个帖子都包含几个类别。我选择了一些类别来为每个帖子设置背景色,但这些类别与过滤器按钮不同。Wordpress显示此错误;您的站点出现严重错误,请了解有关调试WordPress的详细信息"E;在显示第一个帖子之后。以下是我的全部代码:<?php&#x