willyxxl Posted February 21, 2013 Share Posted February 21, 2013 Estimados amigos, el modulo bloque social viene con las redes sociales facebook, twitter y RSS. Lo que yo quería hacer es añadir Instagram me podrían indicar como podría añadir esta red social?? Espero respuesta. Gracias Link to comment Share on other sites More sharing options...
Manuel Caro Posted February 21, 2013 Share Posted February 21, 2013 (edited) Para conseguir eso y además tener opción también a usarlo con pinterest, tienes que reemplazar el contenido del archivo: blocksocial.php (está en modules\blocksocial) por esto: <?php /* * 2007-2012 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * [url="http://opensource.org/licenses/afl-3.0.php"]http://opensource.or...ses/afl-3.0.php[/url] * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to [url="http://www.prestashop.com"]http://www.prestashop.com[/url] for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2012 PrestaShop SA * @license [url="http://opensource.org/licenses/afl-3.0.php"]http://opensource.or...ses/afl-3.0.php[/url] Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ if (!defined('_CAN_LOAD_FILES_')) exit; class blocksocial extends Module { public function __construct() { $this->name = 'blocksocial'; $this->tab = 'front_office_features'; $this->version = '1.0'; parent::__construct(); $this->displayName = $this->l('Block social'); $this->description = $this->l('Allows you to add extra information about social networks'); } public function install() { return (parent::install() AND Configuration::updateValue('blocksocial_facebook', '') && Configuration::updateValue('blocksocial_twitter', '') && Configuration::updateValue('blocksocial_rss', '') && Configuration::updateValue('blocksocial_instagram', '') && Configuration::updateValue('blocksocial_pinterest', '')&& $this->registerHook('displayHeader') && $this->registerHook('displayFooter')); } public function uninstall() { //Delete configuration return (Configuration::deleteByName('blocksocial_facebook') AND Configuration::deleteByName('blocksocial_twitter') AND Configuration::deleteByName('blocksocial_rss') AND Configuration::deleteByName('blocksocial_instagram') AND Configuration::deleteByName('blocksocial_pinterest') AND parent::uninstall()); } public function getContent() { // If we try to update the settings $output = ''; if (isset($_POST['submitModule'])) { Configuration::updateValue('blocksocial_facebook', (($_POST['facebook_url'] != '') ? $_POST['facebook_url']: '')); Configuration::updateValue('blocksocial_twitter', (($_POST['twitter_url'] != '') ? $_POST['twitter_url']: '')); Configuration::updateValue('blocksocial_rss', (($_POST['rss_url'] != '') ? $_POST['rss_url']: '')); Configuration::updateValue('blocksocial_instagram', (($_POST['instagram_url'] != '') ? $_POST['instagram_url']: '')); Configuration::updateValue('blocksocial_pinterest', (($_POST['pinterest_url'] != '') ? $_POST['pinterest_url']: '')); $output = '<div class="conf confirm">'.$this->l('Configuration updated').'</div>'; } return ' <h2>'.$this->displayName.'</h2> '.$output.' <form action="'.Tools::htmlentitiesutf8($_SERVER['REQUEST_URI']).'" method="post"> <fieldset class="width2"> <label for="facebook_url">'.$this->l('Facebook URL: ').'</label> <input type="text" id="facebook_url" name="facebook_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_facebook') != "") ? Configuration::get('blocksocial_facebook') : "").'" /> <div class="clear"> </div> <label for="twitter_url">'.$this->l('Twitter URL: ').'</label> <input type="text" id="twitter_url" name="twitter_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_twitter') != "") ? Configuration::get('blocksocial_twitter') : "").'" /> <div class="clear"> </div> <label for="rss_url">'.$this->l('RSS URL: ').'</label> <input type="text" id="rss_url" name="rss_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_rss') != "") ? Configuration::get('blocksocial_rss') : "").'" /> <div class="clear"> </div> <label for="instagram_url">'.$this->l('INSTAGRAM URL: ').'</label> <input type="text" id="instagram_url" name="instagram_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_instagram') != "") ? Configuration::get('blocksocial_instagram') : "").'" /> <div class="clear"> </div> <label for="pinterest_url">'.$this->l('PINTEREST URL: ').'</label> <input type="text" id="pinterest_url" name="pinterest_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_pinterest') != "") ? Configuration::get('blocksocial_pinterest') : "").'" /> <div class="clear"> </div> <br /><center><input type="submit" name="submitModule" value="'.$this->l('Update settings').'" class="button" /></center> </fieldset> </form>'; } public function hookDisplayHeader() { $this->context->controller->addCSS(($this->_path).'blocksocial.css', 'all'); } public function hookDisplayFooter() { global $smarty; $smarty->assign(array( 'facebook_url' => Configuration::get('blocksocial_facebook'), 'twitter_url' => Configuration::get('blocksocial_twitter'), 'rss_url' => Configuration::get('blocksocial_rss'), 'instagram_url' => Configuration::get('blocksocial_instagram'), 'pinterest_url' => Configuration::get('blocksocial_pinterest') )); return $this->display(__FILE__, 'blocksocial.tpl'); } } ?> y luego completar el archivo blocksocial.tpl para que quede asi: <div id="social_block"> <h4 class="title_block">{l s='Follow us' mod='blocksocial'}</h4> <ul> {if $facebook_url != ''}<li class="facebook"><a href="{$facebook_url|escape:html:'UTF-8'}">{l s='Facebook' mod='blocksocial'}</a></li>{/if} {if $twitter_url != ''}<li class="twitter"><a href="{$twitter_url|escape:html:'UTF-8'}">{l s='Twitter' mod='blocksocial'}</a></li>{/if} {if $rss_url != ''}<li class="rss"><a href="{$rss_url|escape:html:'UTF-8'}">{l s='RSS' mod='blocksocial'}</a></li>{/if} {if $instagram_url != ''}<li class="instagram"><a href="{$instagram_url|escape:html:'UTF-8'}">{l s='Instagram' mod='blocksocial'}</a></li>{/if} {if $pinterest_url != ''}<li class="pinterest"><a href="{$pinterest_url|escape:html:'UTF-8'}">{l s='Pinterest' mod='blocksocial'}</a></li>{/if} </ul> </div> Una vez modificados los dos archivos, eso sólo te faltaría crear los dos nuevos iconos y modificar el css añadiendo #social_block li.instagram {} y #social_block li.pinterest {} especificando la ruta de la imagen Edited February 21, 2013 by Manuel Caro (see edit history) Link to comment Share on other sites More sharing options...
Carpideco-Webmaster Posted June 13, 2013 Share Posted June 13, 2013 Buenos dias, Yo tengo todo modificado perfectamente y se muestra google + y youtube ( las dos redes sociales que he querido añadir), pero no consigo que aparezcan las imagenes o logos de las redes sociales. Esto es lo que tengo en el global.css del theme. /*************** Block SOCIAL ***************/ #social_block {padding:15px 10px;} #social_block li {padding-left:22px !important;} #social_block li.facebook {background:url(../../../modules/blocksocial/img/facebook.png) no-repeat 0 6px;} #social_block li.twitter {background:url(../../../modules/blocksocial/img/twiter.png) no-repeat 0 -26px;} #social_block li.google {background:url(../../../modules/blocksocial/img/google.png) no-repeat 0 -56px;} #social_block li.youtube {background:url(../../../modules/blocksocial/img/youtube.png) no-repeat 0 -76px;} #social_block li.rss {background:url(../../../modules/blocksocial/img/rss.png) no-repeat 0 -96px;} Las imagenes estan en esa url. Son en formato png y no tiene fondo... No se que más mirar , alguien me puede ayudar?. Un saludo, Link to comment Share on other sites More sharing options...
Manuel Caro Posted June 13, 2013 Share Posted June 13, 2013 En principio y sin ver la web, deduzco que el problema es que el módulo original trae una única imagen que contiene todos los logos y en función de estas medidas (6px, -25px, -56px), la va colocando para que solo se vea el logo que corresponde. Como veo que tu has creado distintas imágenes para cada clase, deberías cambiar las medidas que te menciona antes por 0, o lo que mejor se ajuste a tu diseño. Ahí va la imagen original por si quieres seguir usando ese sistema. Si tienes alguna duda indícame la url de tu tienda y te puedo dar más detalle. Un saludo. Link to comment Share on other sites More sharing options...
Carpideco-Webmaster Posted June 13, 2013 Share Posted June 13, 2013 (edited) Gracias Manuel, consegui solucionarlo. Edited June 14, 2013 by Carpideco-Webmaster (see edit history) Link to comment Share on other sites More sharing options...
juanmanuel_mercaonline Posted August 19, 2013 Share Posted August 19, 2013 ¿ Es posible modificar el bloque para que soporte multiples idiomas? Gracias Link to comment Share on other sites More sharing options...
BorjaFuertes Posted October 17, 2013 Share Posted October 17, 2013 Buenas Manuel, Al acceder a /modules/blocksocial, tengo un blocksocial.tpl (que ya he modificado segun tu plantilla) pero no tengo ningún php, en cambio en esta carpeta tengo un blockspecials.tpl (tengo otro modulo con ese nombre, no me explico que hace esto aqui). Estoy aprendiendo a marchas forzadas todo lo referente a prestashop para poder lanzar mi proyecto cuanto antes por necesidad, lo comento por si algo de lo que he puesto suena ridículo, de ante mano, me disculpo, soy neófito en este mundo. ¿Qué se te puede ocurrir? Gracias de antemano. Un saludo Link to comment Share on other sites More sharing options...
Recommended Posts