Skip to content

Conversation

@sbussetti
Copy link
Contributor

@sbussetti sbussetti commented Oct 6, 2016

Fixes #700.

Discussion: https://wordpress.org/support/topic/term-meta-is-saved-but-it-doesnt-appear-in-term-edit-screen-later/page/2/#post-8259773

So order matters here due to the caching pattern used in CMB2_

        public function object_type( $object_type = '' ) {
                if ( $object_type ) {
                        $this->object_type = $object_type;
                        return $this->object_type;
                }

                if ( $this->object_type ) {
                        return $this->object_type;
                }

                $this->object_type = $this->current_object_type();

                return $this->object_type;
        }

Which I think explains why different folks report different results. Depending on the order things get initialized in, object_type could be set differently.

However, in the case where nothing else is setting object_type (this only happens during render_form_open and render_form_close), then in the above logic, current_object_type is NEVER called, because $this->object_type is already defaulted to 'post'.

If you remove that default, everything works great!

Changes proposed in this pull request

  • Sets default object_type to null for CMB2_Base

@jtsternberg
Copy link
Member

jtsternberg commented Dec 12, 2016

Many have reported this as fixing issues with term meta not saving, so merging. Thank you for submitting.

jtsternberg added a commit that referenced this pull request Dec 12, 2016
ADC07 pushed a commit to ADC07/CMB2 that referenced this pull request Jan 20, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants