Notifikation när någon svarar på din kommentar i WordPress

Idag fick jag förfrågning om att man borde få ett mail när någon svarar på din kommentar här på bloggen. Självklart tänkte jag och slängde snabbt ihop ett bit kod som fungerade galant!

Tänkte dela med mig den koden och visa vad det var jag lade till i functions.php:

/* Send mail to the person who just recieved a reply */
function sendMailToCommentAuthor($id) {
  $comment = get_comment($id);
  if ($comment->comment_parent) {
    $parent = get_comment($comment->comment_parent);
    $header = 'Content-type: text/html; charset=utf-8\r\nFrom: john@johndahlstrom.se\r\nReply-To: john@johndahlstrom.se';
    $subject = 'Din kommentar har blivit besvarad på johndahlstrom.se';
    $message = '' . $comment->comment_author . ' svarade med: ';
    $message .= '
' . $comment->comment_content . '< /pre>';
    $message .= '

Din kommentar var följande:
' . $parent->comment_content . '< /pre>';
    $message .= '


Direktlänk till kommentarer: ' . get_comment_link($id) . ''; $mailTo = $parent->comment_author_email; mail($mailTo, $subject, $message, $header); } } add_action('comment_post', 'sendMailToCommentAuthor');

(Ursäkta vanan att använda engelska på kommentarer och variabelnamn, men jag tror nog ni förstår ändå!)

Enkelt trick för att låta personen som skrev kommentaren få ett mail när någon svarar dem. Enjoy!

NcFTP – FTP i terminalen

Som jag nämnde i tidigare inlägg så vill jag börja använda fler CLI-baserade program och verkligen gå tillbaka till något som jag personligen gillar men som jag så som många andra är lite rädda för att börja använda. GUI gör ju faktiskt många saker mycket enklare för användaren men det tar även bort mycket för den som vill veta mer/ha mer kontroll.

Så för att inleda denna nya vana har jag börjat använda FTP genom terminalen istället för FileZilla som jag tidigare använt. Närmare bestämt NcFTP.

NcFTP Screenshot

Mycket simpelt program som var lätt att lära sig, snabbt och lightweight – precis det jag letade efter. Hjälpfiler finns det att tillgå när man behöver det, precis som det alltid finns i Linuxmiljö.

Vad gäller min hastighet från jämfört med att jobba i FileZilla så tycker jag att det går mycket snabbare med NcFTP. Mycket på grund av att jag kan använda tangentbordet och trycka ner några tangenter istället för att föra runt muspekaren och leta efter rätt fönster och sen klicka på ett par knappar i GUI:t.

Tummen upp för CLI så här långt och rekommenderas fortfarande till de som är geekiga nog att försöka sig på!

Google Web Fonts

Är det något jag gillar med CSS3 så är det att man kan använda fonts som inte finns på användarens dator med hjälp av @font-face.

För att göra det hela enklare så brukar jag använda mig av Google Web Fonts som har ett stort register av olika typsnitt man kan använda. Bara sök efter ett typsnitt, klicka på ”Quick-use” och använda en av de länkar som visas.

Självklart finns det inte stöd på alla browsers, så man ska inte ta för givet att typsnittet visas ändå. För att göra det lite lättare så kan man kolla på denna lista för att se vad som stödjer denna funktion.

Arch Linux – Ett nytt försök

Nu sitter jag här igen och har installerat Arch. Det är inte allt för många gånger jag kört det, men det har slutat med att jag fastnar på någon build/compile och sliter mig i håret som i sin tur slutar med att jag installerar något som ”bara funkar”.

Men det är något visst med Arch som jag gillar. Minimalismen. Du får PRECIS det du vill ha och INGET annat. Det är något som många andra Linux distros inte erbjuder.

Något som var annorlunda den här gången däremot var att den ”grafiska” installationen var borta och istället får du mounta, partitionera, installera osv osv helt manuellt. Lite mer pill och jobb än att klicka ”Nästa” 10 gånger, men fördelen är att du får FULL kontroll på vad som händer och vad du vill ha med från grunden. I mitt fall, i stort sett ingenting.

Jag har bestämt mig för att jag ska köra väldigt mycket CLI (command line input) den här gången och jag har i detta nu funnit lösningar till allt jag behöver för tillfället. Men mer kommer förmodligen installeras framöver.

Som window manager har jag valt WMFS2 som är vääääldigt minimalistiskt men med väldigt mycket man kan göra med det lilla som finns.

Något man inte får vara rädd för är att vissa saker KAN ta lite tid i Arch när man börjar använda det och så klart när man ska installera något nytt. Men det finns massor av hjälp att få på deras Wiki – som jag tror är en av de mest informativa wikis för en distro jag varit med om.

Nu har jag dock skrivit mer än jag hade tänkt från början, så jag känner att jag bör avsluta här och nu, men jag kommer följa upp med flertalet tips och annat angående Linux och Arch under min resa. Som sista ord kommer här ett citat från Arch’s Wiki där de skriver om sitt tänk bakom sin distro:

”Simplicity is the primary principle. All other principles must be sacrificed in favor of design simplicity. Implementation simplicity is more important than interface simplicity.”

 

Lösning för att få fungerande ljud i Ubuntu 12.04

Något som hände mig när jag installerat Ubuntu 12.04 var att mina hörlurar inte stängde av ljudet på högtalarna. Båda kanalerna spelades alltså samtidigt. Jag fick även vid ett tillfälle enbart hörlurarna att fungera men inte högtalarna. Men självklart finns det en lösning på allt!

Öppna terminalen och skriv följande:

sudo add-apt-repository ppa:ubuntu-audio-dev/alsa-daily
sudo apt-get update
sudo apt-get install alsa-hda-dkms

Detta installerar en fungerande version av Alsa som gör att allt fungerar som det ska.

Reboota och njut av fungerande ljud!

LÖSNING 2014:

Paketet som ska installeras är idag omdöpt så istället för ”sudo apt-get install alsa-hda-dkms” så ska ni skriva:

sudo apt-get install oem-audio-hda-daily-dkms

Brawl

Något jag pysslat med på fritiden är att jobba på ett litet spel som jag fick idén till för en tid sedan. Jag har lirat textbaserade spel i många många år nu – till och från men det har ändå hängt med. Det jag gillat med dem är att de ger mig mycket frihet som spelare – något som inte finns i något annat spel jag spelat – samtidigt som jag fått en chans att sitta med lite programmering som jag använt i dessa spel.

Brawl som jag har döpt mitt lilla spel kommer bli ett fightingspel i textformat. Låter inte så kul kanske, men enkelheten och målet att göra spelet väldigt casual gör att många som inte lirat textspel kanske får upp ögonen för det om de inte sett något sådant tidigare.

Än så länge har jag skapat en webbklient och i stort sett hela grunden till spelmotorn. Det som ska in nu är attacker, kombinationer, olika game modes och lite småsaker som t.ex att man kan köpa uppgraderingar till sin karaktär.

(Bilden visar hur man skapar en karaktär vid inlogg)

SVN Diff med hjälp av Vim

Jag tyckte att SVN DIFF outputen var lite tråkig och jobbig att gå igenom när den bara var i en färg. Ganska otydligt när det är så… Som tur är kan man använda Vim för att få en bättre översikt!

Skriv följande i terminalen:

 svn diff | vim -R -

Detta öppnar Vim i read only mode och visar ”diffen” i färg! Inga behov av att installera något nytt som colordiff eller liknande!

Snabba upp din TCP-hastighet på din Mac

Satt och skulle kopiera över en stor mängd filer till en remote server och tyckte det tog väääldigt lång tid. Men som tur var så kom jag över en liten rad text man kan skriva in i terminalen för att fixa detta.

Börja med att skriva:

sysctl net.inet.tcp.delayed_ack

Detta visar dig vilket värde du har på denna variabel. Sedan ändrar du det med kommandot:

sudo sysctl -w net.inet.tcp.delayed_ack=0

Detta gör att du inte ger TCP något delay, vilket den har som standard. Detta halverade tiden för mig när jag gjorde filöverföringen. Så det var en stor skillnad!

Det ska tilläggas att ibland så är denna inställning inte optimal men oftast så är det en bra lösning för att snabba upp din TCP hastighet.

Fixa indentering för PHP + HTML i Vim

Något jag tyckte var jobbigt när jag redigerade en .php fil var att html taggarna inte indenterades när jag körde g+g -> = -> G. Som tur var hittade jag en fix för detta som gjorde det möjligt att slippa byta filetype inne i filen.

Bara gå till http://www.vim.org/scripts/script.php?script_id=604 och ladda hem .vim scriptet där. Skapa sedan en mapp vid namn ”indent” i din .vim mapp. Lägg sedan php.vim filen du laddat hem i ”indent” mappen (/vim/indent/php.vim), starta om Vim och TADA så funkar allt som det ska!

Copy/Paste i Vim (Mac)

När jag satt med Vim på min arbetsdator med OS X (Snow Leopard) så upptäckte jag att jag inte kunde göra en ”yank” (kopiering) så att det sparades i systemets clipboard. Lite smått störande när man vill visa upp en liten bit kod för någon.

Som tur var så kunde det lösas enkelt genom att använda pbcopy och pbpaste. Så för att lösa problem så lägg bara in detta i din .vimrc fil:

map  :w !pbcopy
map  :r !pbpaste

Detta gör att du kan markera en text och trycka på F5 för att kopiera för användning utanför Vim. F6 i sin tur klistrar in det du kopierat.