Ho recentemente rilasciato un aggiornamento del mio plugin per Woocommerce che permette di aggiungere allo store il metodo di pagamento di Setefi fornito da Intesa San Paolo.

La novità più importante rigurda l’adozione delle nuove api 2.0 di Monetaweb, che implementano il protocollo XML Hosted 3DSecure.

La versione precedente del plugin continuerà a funzionare con le vecchie api di Monetaweb, mentre l’aggiornamento è gratuito per tutti i clienti che lo hanno già acquistato nel corso del 2014. Non cambiano le modalità di utilizzo e configurazione, quindi in caso di upgrade, basterà disinstallare il precedente e procedere con l’attivazione di quello nuovo per essere subito operativi.


Con la nuova versione del plugin ho introdotto il filter wc_setefi_hosted_page_language che permette di configurare manualmente la lingua della pagina di pagamento sul server di Setefi: una funzionalità molto utile per gli store multilingua.

Tramite questo filtro lo sviluppatore può applicare una funzione custom per impostare arbitrariamente la variabile della lingua, a seconda della lingua corrente nel sito, che può essere recuperata attingendo alle api dei vari plugin di traduzione.

Quí un esempio di utilizzo con il plugin WPML:

function modify_hosted_page_language( $language ) { 
	if( ICL_LANGUAGE_CODE != 'it' ) {
		$language = 'ITA';
	} else if (ICL_LANGUAGE_CODE != 'en') {
		$language = 'USA';
	} 
    return $language;
}

add_filter( 'wc_setefi_hosted_page_language', 'modify_hosted_page_language' );

Unica nota è che il gateway di Monetaweb accetta come parametro della lingua solo 5 valori possibili (ITA, USA, SPA, FRA e DEU), che non necessariamente possono trovare una corrispondenza nei codici delle lingue del plugin di traduzione adotatto, ragione per la quale è necessario adottatare un codice procedurale con istruzioni condizionali come nell’esempio.