Reputation: 2323
I am Using CI3.
I have a snippet of code (included below) that displays social sharing links on my site. The code is only required on certain views. The HTML code is;
<!-- Sharingbutton Facebook -->
<a class="resp-sharing-button__link" href="https://facebook.com/sharer/sharer.php?u=http://www.example.com<?php echo .$result['id'] ?>" target="_blank" aria-label="Share on Facebook">
<div class="resp-sharing-button resp-sharing-button--facebook resp-sharing-button--large"><div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.77 7.46H14.5v-1.9c0-.9.6-1.1 1-1.1h3V.5h-4.33C10.24.5 9.5 3.44 9.5 5.32v2.15h-3v4h3v12h5v-12h3.85l.42-4z"/></svg>
</div>Share on Facebook</div>
</a>
<!-- Sharingbutton Twitter -->
<a class="resp-sharing-button__link" href="https://twitter.com/intent/tweet/?text=Super%20fast%20and%20easy%20Social%20Media%20Sharing%20Buttons.%20No%20JavaScript.%20No%20tracking.&url=http%3A%2F%2Fsharingbuttons.io" target="_blank" aria-label="Share on Twitter">
<div class="resp-sharing-button resp-sharing-button--twitter resp-sharing-button--large"><div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M23.44 4.83c-.8.37-1.5.38-2.22.02.93-.56.98-.96 1.32-2.02-.88.52-1.86.9-2.9 1.1-.82-.88-2-1.43-3.3-1.43-2.5 0-4.55 2.04-4.55 4.54 0 .36.03.7.1 1.04-3.77-.2-7.12-2-9.36-4.75-.4.67-.6 1.45-.6 2.3 0 1.56.8 2.95 2 3.77-.74-.03-1.44-.23-2.05-.57v.06c0 2.2 1.56 4.03 3.64 4.44-.67.2-1.37.2-2.06.08.58 1.8 2.26 3.12 4.25 3.16C5.78 18.1 3.37 18.74 1 18.46c2 1.3 4.4 2.04 6.97 2.04 8.35 0 12.92-6.92 12.92-12.93 0-.2 0-.4-.02-.6.9-.63 1.96-1.22 2.56-2.14z"/></svg>
</div>Share on Twitter</div>
</a>
Rather than copy/paste this code snippet on each of my views, I thought I could create a helper function and include this on the page where I want to display the code snippet - Is this possible?
So my view would look something like;
// some html here
<?php social_share_links_helper() ?>
// more html here
I have created an empty file at helpers/social_share_links_helper.php
and in my controller I have included $this->load->helper('social_share_links');
I'm not sure what to do next in order to echo
the html in the social_share_links_helper()
helper?
Maybe there is a more efficient way of doing this?
Any advice is appreciated.
Upvotes: 1
Views: 159
Reputation: 9717
Yes you can do with the help of helper you created further you can do like this :
Just create a function name social_share_links
in your social_share_links_helper.php
function social_share_links()
{
/*Just replace your anchor here with yours */
$social_links = '<a class="resp-sharing-button__link" href="https://facebook.com/sharer/sharer.php?u=http://www.example.com/'.$result['id'].' target="_blank" aria-label="Share on Facebook">
<div class="resp-sharing-button resp-sharing-button--facebook resp-sharing-button--large">
<div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M18.77 7.46H14.5v-1.9c0-.9.6-1.1 1-1.1h3V.5h-4.33C10.24.5 9.5 3.44 9.5 5.32v2.15h-3v4h3v12h5v-12h3.85l.42-4z"/>
</svg>
</div>Share on Facebook
</div>
</a>';
/*Other link here*/
$social_links .= '<a href=""></a>';
echo $social_links;
}
In your view use social_share_links
method like this :
<div class="row">
<?php social_share_links();?>
</div>
Upvotes: 1