environment->has_abilities_api() ) { $problems[] = new DependencyProblem( DependencyProblem::ABILITIES_API, true ); } $woocommerce = $this->environment->woocommerce_version(); if ( null === $woocommerce || version_compare( $woocommerce, self::MIN_WOOCOMMERCE, '<' ) ) { $problems[] = new DependencyProblem( DependencyProblem::WOOCOMMERCE, true, $woocommerce, self::MIN_WOOCOMMERCE ); } $wpml = $this->environment->wpml_version(); if ( null === $wpml || version_compare( $wpml, self::MIN_WPML, '<' ) ) { $problems[] = new DependencyProblem( DependencyProblem::WPML, true, $wpml, self::MIN_WPML ); } elseif ( ! $this->environment->is_wpml_setup_complete() ) { $problems[] = new DependencyProblem( DependencyProblem::WPML_SETUP, true, $wpml ); } $wcml = $this->environment->wcml_version(); if ( null === $wcml || version_compare( $wcml, self::MIN_WCML, '<' ) ) { $problems[] = new DependencyProblem( DependencyProblem::WCML, false, $wcml, self::MIN_WCML ); } return new DependencyStatus( $problems ); } }