Welcome to Geeklog, Anonymous Wednesday, October 09 2024 @ 08:42 am EDT
Geeklog Forums
Adding a +1 button
Status: offline
Dirk
Site Admin
Admin
Registered: 01/12/02
Posts: 13073
Location:Stuttgart, Germany
I wanted to add a Google +1 button to one of my sites. The instructions are easy enough but I thought a little writeup can't hurt.
The theme I'm using is loosely based on the Professional theme, so it has the story icons (email, printer, edit option) next to the story title. That seems like a good place to put the +1 icon as well. There's a small version of the icon which fits there just fine.
Step 1: In storytext.thtml, featuredstorytext.thtml, and archivestorytext.thtml, add a new template variable "plus_one":
<span class="story-icons">
{email_icon}
{print_icon}
{edit_icon}
{plus_one}
</span>
Step 2: To populate that variable, we need a small snippet of code in lib-custom.php. Find the function CUSTOM_templateSetVars, make sure it's not commented out(!), then add this piece of code:
function CUSTOM_templateSetVars($templatename, &$template)
{
case 'storytext':
case 'featuredstorytext':
case 'archivestorytext':
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$template->set_var('plus_one', '<g:plusone size="small"></g:plusone>');
}
break;
}
}
This makes sure that the +1 button only appears on the article page but not on the index pages.
Step 3: If you're using Geeklog 1.8.0, add this new function to your lib-custom.php (see below for instructions for older Geeklog versions):
function CUSTOM_getfootercode()
{
$retval = '';
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$retval = '<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>';
}
return $retval;
}
On Geeklog 1.8.0, you're already done now. Check your article pages for your shiny new +1 button.
Step 4: (Geeklog versions prior to 1.8.0 only) We need to introduce another template variable. This time for the footer template. In lib-custom.php again, add this piece of code to the CUSTOM_templateSetVars that you just edited in Step 2:
case 'footer':
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$jsplus = '<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>';
$template->set_var('plus_js', $jsplus);
}
break;
Step 5: (Geeklog versions prior to 1.8.0 only) Now we need to add the new "plus_js" variable to the theme's footer.thtml file. Put it right before the closing body tag (and leave the rest of the file as it is):
{plus_js}
</body>
</html>
And now the +1 button should appear in your articles.
Happy +1ing.
bye, Dirk
The theme I'm using is loosely based on the Professional theme, so it has the story icons (email, printer, edit option) next to the story title. That seems like a good place to put the +1 icon as well. There's a small version of the icon which fits there just fine.
Step 1: In storytext.thtml, featuredstorytext.thtml, and archivestorytext.thtml, add a new template variable "plus_one":
Text Formatted Code
<div class="story"><span class="story-icons">
{email_icon}
{print_icon}
{edit_icon}
{plus_one}
</span>
Step 2: To populate that variable, we need a small snippet of code in lib-custom.php. Find the function CUSTOM_templateSetVars, make sure it's not commented out(!), then add this piece of code:
Text Formatted Code
function CUSTOM_templateSetVars($templatename, &$template)
{
case 'storytext':
case 'featuredstorytext':
case 'archivestorytext':
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$template->set_var('plus_one', '<g:plusone size="small"></g:plusone>');
}
break;
}
}
This makes sure that the +1 button only appears on the article page but not on the index pages.
Step 3: If you're using Geeklog 1.8.0, add this new function to your lib-custom.php (see below for instructions for older Geeklog versions):
Text Formatted Code
function CUSTOM_getfootercode()
{
$retval = '';
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$retval = '<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>';
}
return $retval;
}
On Geeklog 1.8.0, you're already done now. Check your article pages for your shiny new +1 button.
Step 4: (Geeklog versions prior to 1.8.0 only) We need to introduce another template variable. This time for the footer template. In lib-custom.php again, add this piece of code to the CUSTOM_templateSetVars that you just edited in Step 2:
Text Formatted Code
case 'footer':
if (strpos($_SERVER['PHP_SELF'], 'article.php') !== false) {
$jsplus = '<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>';
$template->set_var('plus_js', $jsplus);
}
break;
Step 5: (Geeklog versions prior to 1.8.0 only) Now we need to add the new "plus_js" variable to the theme's footer.thtml file. Put it right before the closing body tag (and leave the rest of the file as it is):
Text Formatted Code
{plus_js}
</body>
</html>
And now the +1 button should appear in your articles.
Happy +1ing.
bye, Dirk
10
9
Quote
All times are EDT. The time is now 08:42 am.
- Normal Topic
- Sticky Topic
- Locked Topic
- New Post
- Sticky Topic W/ New Post
- Locked Topic W/ New Post
- View Anonymous Posts
- Able to post
- Filtered HTML Allowed
- Censored Content