WPML

Visão geral do problema

Se você estiver usando o WooCommerce Membership, você notará que, se uma página for adicionada nas configurações de Restrict Content dentro de um plano de membros e posteriormente excluída, o WPML aplica incorretamente a restrição a todas as páginas do site, não apenas àquelas especificadas no plano de membros.

Solução alternativa

Este problema foi corrigido em WPML 4.7. Atualizar resolve isso no seu site, então você só precisa desta solução alternativa se ainda não puder atualizar.

Certifique-se de ter um backup completo do seu site antes de prosseguir.

  • Abra o arquivo …/wp-content/plugins/woocommerce-multilingual/compatibility/WcMemberships/class-wcml-wc-memberships.php.
  • Procure a linha 134.
  • Substitua este código:
    public function add_translated_object_ids( $object_ids ) {
    	$result = [];
    	foreach ( $object_ids as $object_id ) {
    		$type         = apply_filters( 'wpml_element_type', get_post_type( $object_id ) );
    		$trid         = apply_filters( 'wpml_element_trid', null, $object_id, $type );
    		$translations = array_values( wp_list_pluck(
    			apply_filters( 'wpml_get_element_translations', [], $trid, $type ),
    			'element_id'
    		) );
    
    		$result = array_merge( $result, $translations );
    	}
    
    	return $result;
    }
  • Por:
    public function add_translated_object_ids( $object_ids ) {
    	$result = [];
    	foreach ( $object_ids as $object_id ) {
    		$type         = apply_filters( 'wpml_element_type', get_post_type( $object_id ) );
    		$trid         = apply_filters( 'wpml_element_trid', null, $object_id, $type );
    		$translations = array_values( wp_list_pluck(
    			apply_filters( 'wpml_get_element_translations', [], $trid, $type ),
    			'element_id'
    		) );
    
    		$result = array_merge( $result, $translations );
    	}
    
    	// Workaround for compsupp-6900
    	if ( empty($result) ) {
    		return $object_ids;
    	}
    
    	return $result;
    }

Todos os problemas conhecidos

Ainda está vendo este problema?

Se a atualização não resolver, envie uma dúvida de suporte e nós vamos analisar isso com você.