Fiffigare taggar med Wordpress plugin | Bakom Dimridån

Bakom Dimridån

med Tom Stone

Fiffigare taggar med WordPress plugin

Ihopknåpat av Tom Stone en mÃ¥ndag i juni, 2008

PHP-kod

Hur ofta vill man egentligen göra samma jobb två gånger? Inte så ofta, gissar jag.
I WordPress finns ett inbyggt taggnings-system som gör det möjligt att sätta etiketter på sina postningar. Det gör att besökaren lätt kan hitta artiklar om liknande ämnen på din blogg. Sen kan man även sätta etiketter som går till t.ex. Bloggar.se och Technorati, för att besökaren lätt ska kunna finna andra bloggares postningar om liknande ämnen. Tyvärr är funktionerna för dessa etiketter fristående från varandra, vilket potentiellt kan innebära att man får skriva in samma taggar tre gånger. Inte så fiffigt, eller hur? Så, vad sägs om en lösning som automatiserar allt det där?

BloggarSe WordPress plugin

Jag, Tom Stone, knackade härom natten ihop min allra första WordPress-plugin, för att synka ihop alla taggarna. Inte helt enkelt, eftersom jag jobbar som trollkarl och egentligen inte kan ett dugg om programmering. Pluggen funkar dock i WordPress 2.5, och installeras som vanligt:

  1. Ladda ned en zippad fil (finns längst ned på denna sida)
  2. Dekomprimera filen på din dator
  3. Ladda upp mappen "bloggarse" till blogg > wp-content > plugins
  4. GÃ¥ till "insticksprogram" i den administrativa delen av din blogg och aktivera.

Därefter kan du gå till "inställningar" och klicka på "BloggarSe", varpå du möts av en inställningspanel:

BloggarSe panel

Här kan du välja vilka taggar som ska inkluderas på vilka ställen. För att dina postningar ska kunna indexeras på Bloggar.se, så måste den första översta kryssrutan vara ikryssad, eftersom Bloggar.se använder sig av informationen i ditt rss/atom-flöde. I övrigt kan du bestämma fritt hur taggarna till Bloggar.se, Technorati och till din egen blogg ska synas i rss-flödet (feeds), på förstasidan och/eller på enskilda poster (single).

Jag själv nöjer mig med att inkludera enbart Bloggar.se-taggar i flödet. Enbart taggar till min egen blogg pÃ¥ förstasidan, och taggar till alla pÃ¥ de enskilda visningarna. Tanken är att om besökaren enbart skummar igenom förstasidan, utan att klicka pÃ¥ nÃ¥gon "Läs mer om…"-länk, sÃ¥ är han nog inte sÃ¥ intresserad av respektive ämne, och dÃ¥ är det slöseri med en massa onödiga taggar, förutom de interna. Klickar han däremot däremot pÃ¥ "Läs mer om…", sÃ¥ är besökaren förmodligen intresserad av ämnet, och förmodligen även intresserad av vad som sägs pÃ¥ andra bloggar, och dÃ¥ är det hjälpsamt med alla taggarna.

Nofollow?
Som du ser, så finns det även alternativ för "Nofollow på framsidan" osv. Du kan låta dem vara okryssade, och ignorera det helt.
En del webb-experter har en nästan religiös uppfattning om attributet "nofollow", och vill ha en totalitär kontroll över var och när attributet ska användas - så jag plockade in det alternativet för att göra dem glada. För vem vet? Det kanske inte skadar att ha ett gäng webb-experter som är välvilligt inställda till mig? ;)

Modifiera mall-sidorna.

Det finns nu bara en sak som återstår. Att klistra in en kodsnutt i dina mallsidor, på de ställen du vill att taggarna ska synas. Gå in i mappen "themes" och leta upp temat som du använder på din blogg. Olika teman använder olika filer, men öppna de du finner av de följande: "index.php", "home.php" och "single.php" (gör gärna säkerhetskopior av dem först). Med sökfunktionen i ditt textprogram, sök efter ordet "tags" och se om du finner en rad som innehåller någon variant av "the_tags", "get_the_tags" etc. Det kan t.ex. se ut såhär:

< ?php the_tags('Tags: ',' | '); ?>

Radera det, och i dess ställe klistrar du in kodsnutten från inställningssidan, eller härifrån:

< ?php if (function_exists('bloggarse_tags')) {echo "<div class='taggs'>" . bloggarse_tags() .""; } ?>

(Notera att "<?php" och "?>" före och efter inte ska tas med, om det saknas i raden du raderar )

Visar det sig att du inte finner några rader med ordet "tags" i dina mallsidor, så sök efter ordet "endwhile;" istället och klistra in kodsnutten precis på raden innan, så att det hamnar innanför den s.k. "The loop".
Det är inte så krångligt som det kan verka - testa lite fram och tillbaka och se vad som händer. I värsta fall har du ju gjort säkerhetskopior av originalfilerna och kan återställa allt om det behövs. Lite framöver ska jag se om jag även kan fixa en mer automatisk version, så man slipper ändra manuellt i mall-sidorna.

Skriv dina inlägg

När du nu skriver dina inlägg, så behöver du bara skriva taggarna på ett ställe, en enda gång:

Taggar i WordPress

Om du har skrivit en lite längre och välskriven artikel, så kan du skriva "intressant" bland etiketterna - för då lägger min plugin automatiskt till en liten länk som gör att sajten intressant.se kommer att indexera din artikel. Se bara till att din blogg pingar sajten nyligen.se. Se deras instruktioner.

Resultatet

BloggarSe links

Resultatet är att namnet av varje etikett skrivs ut, och följs av en klickbara ikoner till bloggar.se, technorati och till din egen blogg - utifrÃ¥n hur du gjort inställningarna. Ikonerna (12×12 px) är jäkligt fula just nu, sÃ¥ om du tillverkar snyggare ikoner, sÃ¥ fÃ¥r du gärna dela med dig.

Gillar du min plugin, som var lite småtrixig att skriva och är gratis, så får du gärna nämna mig i någon av dina blogg-postningar - helst med en länk till min officiella sida http://www.tomstone.se och gärna med länktexten "Tom Stone, trollkarl"

Och här kan du nu ladda ned min plugin:

Download BloggarSe WordPress plugin Version 0.1

Downloaded a total of 99 times

(Jo, jag är medveten om att pluggens namn är lite lustigt på engelska, men nu pratar vi ju svenska, eller hur?)

Trackback URL = http://blogg.tomstone.se/kodning/fiffiga-taggar-wp-plugin.html/trackback/

Pusha
Bokmärken att klicka på: Småbilderna leder till sajter där andra kan tipsas om den här sidan, och till sajter där du kan spara det som en egen länk.
  • Google
  • Facebook
  • StumbleUpon
  • Live
  • YahooMyWeb
  • del.icio.us
  • Technorati
  • Reddit
  • bodytext
  • Ma.gnolia
  • E-mail this story to a friend!

Ämne: kodning

14 häpna utrop
  1. 1

    » tisdagen 10 juni 2008, kl. 7:08:

    Snyggt! ska prova denna framöver.

    Smart tänkt!

  2. 2

    » tisdagen 10 juni 2008, kl. 17:56:

    Snyggt och grymt jobbat.
    Blir att pröva med en gång.

    Jag hackar nog bort bilderna dock ;)

  3. 3

    » tisdagen 10 juni 2008, kl. 18:40:

    Jo, ikonerna är fula som stryk än så länge. Ska försöka fixa snyggare och mer neutrala ikoner när jag hinner.
    För att hacka bort ikonerna, sÃ¥ är det bara att ta bort img-taggen, samt ta bort “display:none” frÃ¥n css-filen. (Det är alltsÃ¥ en slags Image Replacement jag använt mig av, för att byta ut taggens namn emot en ikon).

  4. 4

    » lördagen 19 juli 2008, kl. 18:23:

    Suveränt.
    Det här skulle jag nästan vilja bygga in stöd för i mina svensksprÃ¥kiga teman…
    Stort tack!

  5. 5

    » söndagen 20 juli 2008, kl. 14:51:

    La tillslut in pluginet på min blogg, men kör bara bloggar.se-länkarna i RSS-flödet än så länge, eftersom att jag ännu inte har rullat ut taggar på bloggen.

    Skrev ett kort inlägg, och snodde din screenshot också.

  6. 6

    » söndagen 20 juli 2008, kl. 15:37:

    Hmm, när jag redigerar “BloggarSe options” och klickar pÃ¥ Update Settings sÃ¥ sparas inte inställningarna.

    De är som borttrollade. Why?

  7. 7

    » mÃ¥ndagen 21 juli 2008, kl. 3:41:

    Mickey,

    Du verkar ha vanföreställningen att jag vet vad jag sysslar med. :)
    Så är det tyvärr inte - jag har inte en susning om varför det inte funkar hos dig. Ärligt talat, eftersom jag knappt kan ett skit om programmering, så är jag överraskad att det ens funkar hos mig.

    Men-men… tillsammans kanske vi kan lista ut vad problemet bestÃ¥r av. Kan du ge mig lite systeminfo? Vilken version av WordPress har du, och vilken version av PHP?

  8. 8

    » mÃ¥ndagen 21 juli 2008, kl. 11:11:

    Humm, jag upptäckte större problem än så: pluginet verkar inte (heller) funka om man använder Excerpts när man skriver ett inlägg - fast det kanske beror på att mina inställningar inte sparas.

    PHP version 5.2.5
    MySQL version 4.1.22
    WP version 2.6

  9. 9

    » mÃ¥ndagen 21 juli 2008, kl. 11:12:

    Alltså, jag upptäckte att det inte funkar iom att Intressantknappen dök upp när jag skrev ett inlägg utan excerpts och Intressantknappen kommer inte med när jag använder excerpts.

  10. 10

    » mÃ¥ndagen 21 juli 2008, kl. 19:12:

    Mickey,

    Märkligt. PHP och mySQL är samma som hos mig. Jag har WP 2.5.1 fortfarande, så det är möjligt att något har ändrats i 2.6.
    Problemet kan alltså bero på:

    Version - Något har ändrats i WP 2.6
    Datakorruption - NÃ¥got tappades i nedladdning/dekomprimering/uppladdning.
    Konflikt - att någon annan plug påverkar.
    Karma - Kosmos vill straffa dig för tidigare illdåd.

    Jag ska kika på vad som ändrats i WP 2.6.
    Tills vidare, prova att avinstallera, radera filerna från servern och installera en ny nedladdad kopia. Kvarstår problemet, så är jag rädd för att vi, tills vidare, måste acceptera att pluggen inte funkar hos dig.

  11. 11

    » mÃ¥ndagen 28 juli 2008, kl. 3:02:

    Fick följande felmeddelande när jag bytte server under kvällen:

    Warning: unserialize() expects parameter 1 to be string, array given in /home/xxx/public_html/xxx.xx/wp-content/plugins/bloggarse/bloggarse.php on line 222

  12. Steffe

    12

    » torsdagen 23 oktober 2008, kl. 14:03:

    Hur gör jag för att få taggnamnet som länk till mina egna taggar?

    Vill ha taggen till min blogg som länktext och bild till bloggar.se

  13. 13

    » torsdagen 23 oktober 2008, kl. 18:35:

    Steffe, det borde gå att fixa med den medföljande CSS-filen.

  14. 14

    » onsdagen 3 mars 2010, kl. 14:48:

    Mycket fiffigt plugin. Ska testa det när jag kommer hem frÃ¥n jobbet…

6 Trackbacks och pingar
  1. »

    [...] Uppdatering! Det här inlägget är nu inaktuellt, då jag skrivit en plugin som fixar det. Se Fiffigare taggar. [...]

  2. »

    [...] Bakom Dimridån: Fiffigare taggar med WordPress plugin [...]

  3. »

    [...] testar just nu Tom Stones fiffiga plugin BloggarSe, som automagiskt (passande ord, eftersom att Tom är trollkarl) tar dina ...

  4. »

    [...] Fiffigare taggar med Wordpress plugin [...]

  5. »

    [...] Det hela slutade med att jag hittade ett fiffigt tillägg som utnyttjade WordPress inbyggda ettikettfunktion för att länka till ...

  6. »

    [...] bloggarSe - Ett tillägg som använder ettiketerna i WordPress för att skapa länkar till bloggar.se och technorati. Jag är ...

Tanke:

Vissa saker måste man vara en expert för att inte förstå.
Magisk show för Haiti Charlie Caper vann! Axel Adlercreutz i Talang 2009