Obtener el nombre entero de la provincia en WooCommerce

Ya sabéis que hacemos principalmente dos tareas sobre los WordPress de nuestros clientes: mantenimiento y desarrollo. Pues cada vez es más habitual que resolvamos trabajos de mantenimiento con desarrollo, de hecho, muchos de nuestros clientes de mantenimiento de WordPress tienen en sus web un plugin, desarrollado por nosotros, donde vamos incorporando todas esas funciones que se pueden realizar con un mini desarrollo y así ahorrar instalar un plugin mayor.

En este caso vamos a ver cómo hemos resuelto un caso en el que teníamos que enviar el nombre completo de las provincias a un CRM vía webservice y WooCommerce sólo nos devolvía la inicial de la provincia.

Si haces desarrollo en PHP y WordPress con WooCommerce, puede que hayas notado que cuando hacemos una llamada al método get_billing_state() de un objeto de tipo pedido de WooCommerce, te devuelve el código de la provincia y no el nombre completo:

Ejemplo: Devuelve ‘SA’ en lugar de Salamanca.

Con la siguiente función, podremos tener el nombre completo de la provincia:

function get_nombre_provincia($codigo_provincia)
{
    $provincias = array(
        'AB' => 'Albacete',
        'AL' => 'Almería',
        'AV' => 'Ávila',
        'BA' => 'Badajoz',
        'PM' => 'Baleares',
        'B' => 'Barcelona',
        'BU' => 'Burgos',
        'CC' => 'Cáceres',
        'CA' => 'Cádiz',
        'S' => 'Cantabria',
        'CS' => 'Castellón',
        'CE' => 'Ceuta',
        'CR' => 'Ciudad Real',
        'CO' => 'Córdoba',
        'CU' => 'Cuenca',
        'GI' => 'Girona',
        'GR' => 'Granada',
        'GU' => 'Guadalajara',
        'SS' => 'Guipúzcoa',
        'H' => 'Huelva',
        'HU' => 'Huesca',
        'J' => 'Jaén',
        'LO' => 'La Rioja',
        'GC' => 'Las Palmas',
        'LE' => 'León',
        'L' => 'Lleida',
        'LU' => 'Lugo',
        'M' => 'Madrid',
        'MA' => 'Málaga',
        'ML' => 'Melilla',
        'MU' => 'Murcia',
        'NA' => 'Navarra',
        'OR' => 'Ourense',
        'P' => 'Palencia',
        'PO' => 'Pontevedra',
        'SA' => 'Salamanca',
        'TF' => 'Santa Cruz de Tenerife',
        'SG' => 'Segovia',
        'SE' => 'Sevilla',
        'SO' => 'Soria',
        'T' => 'Tarragona',
        'TE' => 'Teruel',
        'TO' => 'Toledo',
        'V' => 'Valencia',
        'VA' => 'Valladolid',
        'BI' => 'Vizcaya',
        'ZA' => 'Zamora',
        'Z' => 'Zaragoza'
    );

    if (isset($provincias[$codigo_provincia]))
    {
        return $provincias[$codigo_provincia];
    }
    else
    {
        //Como no existe la provincia, devolvemos el código que recibimos
        return $codigo_provincia;
    }
}
Quizá te interese...
Deja un comentario...
Suscribirme
Notificación de
guest
0 Comentarios
Comentarios en línea
Ver todos los comentarios