K2 viene con una funcionalidad incluida de redes sociales en los items o artículos de contenido, sin embargo esta funcionalidad para las redes de k2 y de google+ se encuentra sólo en el idioma inglés (versiones 2.5.x). En este artículo veremos cómo realizar modificaciones al template por defecto de virtuemart para cambiar el idioma por defecto de inglés que se muestran en estas redes sociales; posteriormente haremos extensiva la funcionalidad para que maneje varios idiomas en un sitio multiidioma.
Tabla de contenidos
Por defecto esta funcionalidad viene activada crear una nueva categoría de k2, en la sección de opciones de visualización del ítem => Compartir en redes sociales, tal como se muestra en la imagen adjunta.
Para un sitio web configurado en el idioma español se mostrará por defecto de la siguiente manera, tal como muestra la imagen, sólo twitter se traduce al idioma español, facebook y google no lo hacen
2- Editando los archivos del template de k2
Podemos hacer un overrides trabajando directamente sobre el archivo /templates/TEMPLATE_ACTUAL/html/com_k2/item.php, (en caso no tener este archivo sería necesario copiarlo desde k2) , o podemos trabajar directamente sobre el archivo de template de k2 /components/com_k2/templates/default/item.php , en cualquier caso ubicamos el código de redes sociales a partir de la línea 210 aproximadamente.
-Para facebook
Ubicamos el siguiente inicio de código
js.src = “//connect.facebook.net/en_US/…
y la cambiamos por el idioma deseado, por ejemplo para español
js.src = “//connect.facebook.net/es_ES/…
-Para google+
Ubicamos el siguiente inicio de código
window.___gcfg = {lang: ‘en’}…
y lo cambiamos por el idioma deseado, por ejemplo para español:
window.___gcfg = {lang: ‘es’}…
En caso nuestro sitio web sea multiidioma entonces será necesario realizar una modificación a nivel de PHP
Insertamos el siguiente antes del código de redes sociales
<?php
$lang = JFactory::getLanguage();
$google_lang = explode(‘-‘, $lang->getTag());
$facebook_lang = str_replace(‘-‘,’_’,$lang->getTag());
?>
Luego reemplazamos en las líneas indicadas en el punto 2 por las variables correspondientes, por ejemplo
-Para facebook
js.src = “//connect.facebook.net/<?php echo $facebook_lang; ?>…
-Para google+
window.___gcfg = {lang: ‘<?php echo $google_lang[0]; ?>’}…
4- Resultado final
Después de realizar estas modificaciones, entonces tendremos los íconos de redes sociales traducidos en k2
En el siguiente video se explica de manera práctica cada uno de los puntos explicados anteriormente.
¿Te ha resultado útil este artículo?
Soporte técnico WordPress en Webempresa y ponente habitual en Meetups y WordCamps de América.