Lyhyempi URL Sociable-lisäosan jakonappeihin

Käytän WordPressin päälle rakennetussa blogissani Sociable-lisäosaa, jolla postauksiin saa jakonapit. Jakonapit saa joko automaattisesti Sociablen asetuksilla jokaisen postauksen (ja halutessaan myös sivun) loppuun, mutta nappien paikan voi myös määritellä itse. Myös näytettävät palvelut voi valita ja järjestää itse melkein sadan joukosta..
Jos Sociable-nappien paikan haluaa määrittää itse, se tehdään ulkoasuteeman tiedostoihin lisäämällä seuraava koodi sopivaan kohtaan.
<?php
if (function_exists('sociable_html')) {
echo sociable_html();
}
?>
Halutessaan koodin voi laittaa esimerkiksi <div class="share"></div> -tagien väliin helpottamaan CSS-muotoilua. Kun paikan määrittelee itse, kannattaa ruksit ottaa pois Sociablen asetuksista otsakkeen Position alta. Samoin Tagline-rivi kannattaa tyhjentää. Muut asetukset voi laittaa kuten haluaa.
Ja sitten kirjoituksen varsinaiseen aiheeseen…
Sociable-lisäosa tuottaa kullekin jakopalvelulle omanlaisensa linkin, jonka avulla postauksen nimi ja osoite (URL), ja joissain tapauksissa myös postauksen katkelma, siirretään jakopalveluun. Näitä linkkirimpsuja voi halutessaan (osatessaan) muokata haluamakseen. Lisäosaa voi muokata suoraan WordPressin hallintapaneelissa: Lisäosat > valitse Sociablen kohdalta Muokkaa.
Ensimmäisenä WordPressin editoriin aukeaa sociable.php-tiedosto, joka onkin ainoa, joka tarvitsee muutoksia. sociable.php-tiedostossa on jokaisen valittavissa olevan palvelun rimpsut ja jonkin verran muuta koodia. Rimpsut voi halutessaan muokata uuteen muotoon. Kussakin rimpsussa vilahtelee kaksi tai kolme seuraavista: PERMALINK, TITLE ja ENTRY. PERMALINK lisää rimpsuun postauksen osoitteen, TITLE postauksen otsikon ja ENTRY tarvittaessa katkelman.
Jos käytössäsi on WordPressin nätit URLit, jotka ovat muotoa http://www.omaosoite.fi/2010/08/06/postauksen-otsikko, PERMALINK pidentää lopullista rimpsua melkoisesti. Varsinkin Twitterissä merkit ovat kultaakin kalliimpia, koska yksi tweet on maksimissaan 140 merkkiä pitkä, joten lyhyt osoite olisi parempi kuin pitkä. Postauksen osoite pitää tietenkin pitää mukana, joten sitä ei voi rimpsusta poistaa, mutta keksin keinon, jolla linkistä saa lyhyemmän hukkaamatta osoitteesta omaa domainia.
PERMALINKin tuottaman osoitteen muokkaus on yksinkertaista. Etsi sociable.php-tiedostosta seuraava kohta. Siinä $permalink-rivi määrittää, mitä PERMALINKin tilalle laitetaan. Oletuskoodi siis hakee postauksen normaalin osoitteen, on käytössäsi minkälainen WordPress-URL tahansa.
// Clean the excerpt for use with links
$excerpt = str_replace('+','%20',$excerpt);
$permalink = urlencode(get_permalink($post->ID));
$title = str_replace('+','%20',urlencode($post->post_title));
Kun koodi muutetaan seuraavaan muotoon (korvaa http://omaosoite.fi omalla domainillasi ilman www:tä), pitkäksi venähtävän osoitteen tilalle sijoitetaan WordPressin oletusmuotoinen URL http://omaosoite.fi/?p=10. Alla olevassa koodissa $post->ID tulostaa osoitteeseen postauksen ID-numeron, joka on juokseva numero ykkösestä eteenpäin.
// Clean the excerpt for use with links
$excerpt = str_replace('+','%20',$excerpt);
$permalink = 'http://omaosoite.fi/?p='.$post->ID;
$title = str_replace('+','%20',urlencode($post->post_title));
WordPress-blogisi osaa ohjata lyhennetylläkin linkillä oikeaan osoitteeseen ilman, että sinun tarvitsee tehdä muita muutoksia. Muutoksen jälkeen kaikkissa valitsemissasi jakolinkeissä postaukseen osoittava linkki on lyhyttä muotoa.
Lyhentämällä linkit näin, lyhennetty linkki on luotettavamman näköinen kuin verkosta löytyvillä URL-lyhennyspalveluilla toteutetut linkit, jotka ovat yleensä sekalaisten merkkien jono.
Esimerkiksi tämän postauksen lyhennetty URL on http://sippingdesigns.com/?p=1151. Toimii!
Lisämuutoksia
Itse olen muokannut myös Twitter-rimpsua erikseen, koska haluan, että Twitter-nimimerkkini näkyy vierailjoiden jakamissa tweeteissä, jos he eivät sitä poista. Alla on oletusmuotoinen Twitter-rimpsu.
'Twitter' => Array( 'favicon' => 'twitter.png', 'awesm_channel' => 'twitter', 'url' => 'http://twitter.com/home?status=TITLE%20-%20PERMALINK', 'spriteCoordinates' => Array(343,55), 'supportsIframe' => false, ),
Olen muokannut sen seuraavaan muotoon. Olen lisännyt oletusrimpsun alkuun “RT @perminna: “-pätkän. Rimpussa välilyönnit pitää korvata %20-merkinnällä. Rimpsun alkuosaan ei saa kajota, jos haluaa että Twitter-jakolinkki toimii oikein. Muutoksia saa tehdä =-merkistä alkaen.
'Twitter' => Array( 'favicon' => 'twitter.png', 'awesm_channel' => 'twitter', 'url' => 'http://twitter.com/home?status=RT%20@perminna:%20TITLE%20-%20PERMALINK', 'spriteCoordinates' => Array(343,55), 'supportsIframe' => false, ),
Alla olevaan kuvakaappaukseen olen merkinnyt punaisella kohdat, jotka näkyvät lopullisessa tweetissä, jossei sitä jakaja muokkaa.

Samaan tapaan voisi muokata myös muiden jakopalvelujen rimpsut.












