Blogposts von blogCFC an twitter senden
Bloggen, twittern, facebooken, chatten: Man kommt gar nicht mehr zum Arbeiten, wenn man alle Kanäle bedienen will. Deshalb habe ich heute meinen Blog (blogCFC) mit twitter kurzgeschlossen. Will heissen: Posts in diesem Blog erscheinen nun auch automatisch und verlinkt bei twitter.com.
Um dies zu ermöglichen, waren ein paar kleine Modifikationen an Raymond Camdens blogCFC notwendig.
Zuerst habe ich mit Andy Jarrets twitterCFC, ein Plugin für den Mango-Blog geschnappt. Darin enthalten ist ein simpler Code, mit dem der Twitter-Feed aktualisiert werden kann. Und was mit Mango funktioniert, geht natürlich auch mit blogCFC.
Das ini-File des Blogs – zu finden unter /org/camden/blog/ – habe ich ergänzt mit einem generellen Parameter, mit dem sich die Verknüpfung zu twitter.com ein-, beziehungsweise ausschalten lässt. Dazu kommen zwei Parameter für die Twitter-Benutzernamen und -Passwort.
Die Funktion zum Versenden habe ich in der Datei blog.cfc untergebracht:
<cfargument name="entryid" type="uuid" required="true">
<cfset var entry = getEntry(arguments.entryid,true)>
<cfset var entrylink = makeLink(entry.id)>
<cfset var status = "">
<cfset var i = "">
<!--- check release status --->
<cfif entry.released and dateCompare(dateAdd("h", instance.offset,entry.posted), blogNow()) lte 0>
<cfset status = entry.title>
<!--- init shrinkURL library --->
<cfif Not StructKeyExists(application,"shrinkUrl")>
<cfset application.shrinkUrl = CreateObject("component", "org.sweettweets.shrinkURL")>
</cfif>
<!--- shrink the link for this post --->
<cfset entrylink = application.shrinkUrl.shrink(service="tinyurl", url=entrylink)>
<!--- add the blog-link, if the maximum characters has not been exceeded --->
<cfif Len(status & entrylink) LT 138>
<cfset status = status & ": " & entrylink>
</cfif>
<!--- add the blog-categories, as long as the maximum characters has not been exceeded --->
<cfloop list="#StructKeyList(entry.categories)#" index="i">
<cfif Len(status & entry.categories[i]) LT 138>
<cfset status = status & " ##" & entry.categories[i]>
</cfif>
</cfloop>
</cfif>
<cfif status neq "">
<cfset application.twitter.postToTwitter(status) />
</cfif>
</cffunction>
Zur Generierung der Kurz-Urls verwendet ich die Bibliothek shrinkURL, die im Download-Paket von blogCFC bereits enthalten ist. Und wie man ebenfalls herauslesen kann, habe ich die Twitter-Bibliothek in den application-Scope geladen.
Aufgerufen wird der Versand übrigens in der Datei /client/admin/entry.cfm – nachdem der Eintrag worden ist.
So, Blog und twitter sind nun verbunden – was kommt wohl als nächstes dran?
TrackBacks
Trackback URL dieses Eintrages:
http://www.samelis.ch/blog/mischa/trackback.cfm?id=657205C7-CAE6-4380-A828579A75B43771
Kommentare
Für diesen Eintrag existieren keine Kommentare.