Wilt u een gastenblog schrijven voor UpService?

Wanneer u onderstaande gegevens invult nemen we zo spoedig mogelijk contact met u op.

Bedrijfsgegevens - invullen verplicht

Socialbookmarker CMSMS plugin

Enige tijd geleden heb ik een CMSMS plugin geschreven waarmee je eenvoudig socialbookmarks, socialmedia op je website kunt plaatsen. Hoewel er genoeg van dergelijke plugins bestaan vond ik de bestaande beperkt in de css mogelijkheden.

Wil je weten hoe je de SocialBookmarker plugin op je CMS Made Simple website kunt implementeren? Lees dan verder.

SocialBookmarker in de CMSMS Forge

De naam van mijn plugin is SocialBookmarker en is te downloaden via de CMSMS forge.

SocialBookmarker koppelt de opmaak (XHTML) en styling (CSS) volledig los van de code (PHP). Hiermee kan een websitedeveloper alle kanten op.

Voor nederlandse webmasters is deze plugin misschien interessant omdat deze naast: twitter, digg, delicious, stumbleupon, facebook, linkedin, myspace ook hyves en nujij ondersteunt.

Een implementatie voorbeeld

Stap 1: Download de SocialBookmarker plugin

  • Ga naar: http://dev.cmsmadesimple.org/project/files/910
  • Sla het .php bestand op (verander de naam niet): function.socialbookmarker.php

Stap 2: Plaats function.socialbookmarker.php in je plugins map

  • Ga naar de root directory van je CMSMS installatie open het mapje "plugins" en plaats hier function.socialbookmarker.php

Stap 3: Het koppelen van de SocialBookmarker plugin aan een CMSMS template

  • {socialbookmarker} kan je op iedere wille keurige pagina of template opnemen. Als voorbeeld neem ik de CGBlog detail template een News detail template of andere CMSMS pagina werkt ook.

Content -> Calguys Blog Module -> Detail template
.... of
Content -> News -> Detail template

{strip}
{capture assign=sourcetitle}{$entry->title|escape}{/capture}
{capture assign=sourceurl}{$entry->detail_url}{/capture} 
{socialbookmarker sourcetitle=$sourcetitle sourceurl=$sourceurl brands='twitter, facebook, digg, stumbleupon, delicious'}
{/strip}

<div>
<h3>Deel deze blog / Deel dit nieuwsbericht</h3>

{if $socialbookmarker|@count gt 0}
    <ul class="socialbookmarker">
    {foreach from=$socialbookmarker item=item}
        <li class="{$item->brand}"><a href="{$item->destinationurl}" title="{$item->brand|ucfirst}: {$item->sourcetitle|escape}">{$item->brand|ucfirst}</a></li>
    {/foreach}
     </ul> 
{/if}
</div>{* <!-- /socialbookmarker --> *}

Stap 4: CSS code schrijven en plaatjes maken

In onderstaande CSS voorbeeld maak ik gebruik van logo's voor de verschillende sociale media sites. Ik heb alle logo's in 1 plaatje geplaatst ieder logo is 40 pixels breed en 30 pixels hoog. Via css sprites toon ik het juiste logo.

/* socialbookmarker  */

.socialbookmarker {
    display: inline;
    float: left;
    height: 36px;    
}

ul.socialbookmarker {
    width: 224px;
    display: inline;
    float: left;
    list-style: none;
    overflow: hidden;
}

ul.socialbookmarker li {
    float: left;
    width: 30px;
    height: 30px;
    margin: 0 10px 0 0;
}

ul.socialbookmarker li a {
    display: block;
    width: 30px;
    height: 30px;
    overflow: hidden;
    text-decoration: none;
}

ul.socialbookmarker li a:hover,
ul.socialbookmarker li a:focus,
ul.socialbookmarker li a:active {
	opacity: 0.5; 
	filter: alpha(opacity=50); 
	-ms-filter: "alpha(opacity=50)"; 
	-khtml-opacity: 0.5; 
	-moz-opacity: 0.5;
}

ul.socialbookmarker li.twitter a {
    background-image: url('/images/icons-twitter.gif');
    background-repeat: no-repeat;
    background-position: top left;    
    text-indent: -30000000px;
}

ul.socialbookmarker li.dig a {
    background-image: url('/images/icons-dig.gif');
    background-repeat: no-repeat;
    background-position: -40px top;   
    text-indent: -30000000px;
}

/* zelfde idee voor: delicious, stumbleupon, facebook, nujij, linkedin, myspace, hyves */

Documentatie

Video

Een demostratie van bovenstaande techniek kunt u aan de onderkant van deze pagina of in onderstaande video bekijken.



Mobiele site UpService

Offerte aanvragen

Download ons offerte aanvraagformulier na het invullen kunt u deze op onze offerte aanvraag pagina uploaden.