Question

In my prestashop site i have implemented block social module and by default i can able to get facebook,twitter and rss social icons.How can i get addtional social icons such as google,pinterest and you tube.

Was it helpful?

Solution

you have to edit the blocksocial.php

this code i have added the google link

find a "getContent" method on your blocksocial.php in your module folder

and change it to

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_google', (($_POST['google_url'] != '') ? $_POST['google_url']: ''));                
        $this->_clearCache('blocksocial.tpl');
        $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">&nbsp;</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">&nbsp;</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">&nbsp;</div> 
            <label for="rss_url">'.$this->l('Goolge Plug: ').'</label>
            <input type="text" id="google_url" name="google_url" value="'.Tools::safeOutput((Configuration::get('blocksocial_google') != "") ? Configuration::get('blocksocial_google') : "").'" />

            <div class="clear">&nbsp;</div>                     
            <br /><center><input type="submit" name="submitModule" value="'.$this->l('Update settings').'" class="button" /></center>
        </fieldset>
    </form>';
}

and after that find "hookDisplayFooter" method

and change it to

public function hookDisplayFooter()
{
    if (!$this->isCached('blocksocial.tpl', $this->getCacheId()))
        $this->smarty->assign(array(
            'facebook_url' => Configuration::get('blocksocial_facebook'),
            'twitter_url' => Configuration::get('blocksocial_twitter'),
            'rss_url' => Configuration::get('blocksocial_rss'),
            'google_url' => Configuration::get('blocksocial_google')
        ));
    return $this->display(__FILE__, 'blocksocial.tpl', $this->getCacheId());
}

last you need to change the template file. if your template file override by your theme means find a "module" folder from the theme foler and find "blocksocial" folder and edit the blocksocial.tpl

if it is not override by your theme file means you can edit the blocksocial.tpl in you module folder

the changes should be

<div id="social_block">
    <p class="title_block">{l s='Follow us' mod='blocksocial'}</p>
    <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 $google_url != ''}<li class="google"><a href="{$google_url|escape:html:'UTF-8'}">{l s='Google' mod='blocksocial'}</a></li>{/if}
    </ul>
</div>

OTHER TIPS

You can use the social login module to add social icons for sharing as well as for login process from link below:

http://loginradius-social-plugins.s3.amazonaws.com/Prestashop/v1.5/sociallogin.zip

It is working good at my website.

This looks incomplete to me. Do you not have to also change 'sprite_pict_social_block.png' to get the additional logos?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top