Jump to content

Modificar Bloque Social


willyxxl

Recommended Posts

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 by Manuel Caro (see edit history)
Link to comment
Share on other sites

  • 3 months later...

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

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.

 

sprite_pict_social_block.png

Un saludo.

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

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

Guest
This topic is now closed to further replies.
×
×
  • Create New...