public function setCustomFieldValue($field_name, $value, $editor = null, $required = null)
    {
        $custom_fields = isset($this->custom_fields) ? json_decode($this->custom_fields) : array();
        $custom_fields[] = array(
            'name'     => $field_name,
            'value'    => $value,
            'editor'   => $editor,
            'required'   => $required
        );
        $this->custom_fields = json_encode($custom_fields);
        return $this;
    }