Feed
Contact
XING
LinkedIn
Twitter
ICQ
meebo.com

BlogEngine.NET - Fehler beim ein- und ausschalten von Erweiterungen

by Roland Schumacher alias GENiALi 16. August 2010 -- 212 Wörter  -- 391 mal gelesen
Dieser Beitrag ist mir was wert:  

Wenn bei BlogEngine.NET eine Erweiterung aus- oder eingeschaltet wird kommt eine Meldung die einem mitteilt, dass auf die Web.config nicht geändert werden kann. Das kommt daher, dass der ExtensionManager versucht, bei einer Änderung des Status einer Erweiterung, das Blog neu zu starten. Versucht wird das in dem die Web.config geringfügig verändert wird. Bei einer Änderung der Web.config wird das Web automatisch neu gestartet.

Um den Fehler zu verhindern müsste man dem Account, unter dem das Web läuft, schreibrechte auf die Web.config geben. Wenn man einen eigenen IIS hat ist das kein Problem. Bei einem Shared Hosting geht das aber nicht immer. Ich kann z.B. auf den Dateien im root-Verzeichnis keine Rechte ändern. Die Web.config ist also immer schreibgeschützt für die Webanwendung. Dann kommt immer der Fehler.

Man kann das Web aber noch anders neu starten. Mit HttpRuntime.UnloadAppDomain(); erreicht man das selbe ohne die Fehlermeldung und gefühlt schneller. Angepasst werden muss folgendes.

In der ExtensionManager.cs:

public static void ChangeStatus(string extension, bool enabled)
{
    foreach (ManagedExtension x in _extensions)
    {
        if (x.Name == extension)
        {
            x.Enabled = enabled;
            BlogEngine.Core.DataStore.ExtensionSettings xs = new BlogEngine.Core.DataStore.ExtensionSettings(x.Name);
            xs.SaveSettings(x);
            SaveToCache();

            //string ConfigPath = System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath + "Web.Config";
            //File.SetLastWriteTimeUtc(ConfigPath, DateTime.UtcNow);

            HttpRuntime.UnloadAppDomain();
            break;
        }
    }
}
Die Zeilen 12 und 13 werden auskommentiert. Die Zeile 15 ist neu und bewirkt ein neustarten der Webanwendung.

Artikel empfehlen auf .NET-Kicks Deutschland

Tags: ,

Blog | Entwicklung

GEBEE - Flattr Extension 1.0

by Roland Schumacher alias GENiALi 6. August 2010 -- 496 Wörter  -- 400 mal gelesen
Dieser Beitrag ist mir was wert:  

Vor kurzem habe ich beschrieben wie man relativ einfach den Flattr Button in BlogEngine.NET einbinden kann. Diese Lösung hatte noch so seine Mängel und Tücken. Ich habe auch erwähnt das es über kurz oder lang noch eine richtige Extension geben wird. Die habe ich jetzt erstellt.

Der Einbau in das Blog sollte eigentlich keine Probleme verursachen.

  1. Herunterladen des ZIP Archives. --> GEBEE_Flattr_Extension.V.1.0.zip
  2. Einpacken ins Root Verzeichnis von BlogEngine.NET. Die Verzeichnisstruktur sollte eigentlich passen.
  3. Ein stück Code in der Datei PostView.ascx einbauen. Wichtig ist nur der Teil <%= GEBEEFlattr.GetFlattr(Post) %>.
    <div class="Flattr">
    Dieser Beitrag ist mir was wert: &nbsp;<%= GEBEEFlattr.GetFlattr(Post) %>
    </div>
  4. In den Settings noch die User ID erfassen und den Rest einstellen.

Das war es eigentlich schon.

Der Administrationsbereich sieht so aus:

GEBEEFlattr Settings

Und das eingebaute Button kann so aussehen:

So sieht der Flattr Button aus

Das generierte Java Script Snippet sieht z.B. so aus.

<script type="text/javascript">
    var flattr_btn = 'compact';
    var flattr_uid = '25101';
    var flattr_tle = 'GEBEE - Flattr Extension 1.0';
    var flattr_dsc = 'Vor kurzem habe ich beschrieben wie man relativ einfach den Flattr Button in BlogEngine.NET einbinden kann. Diese L&#246;sung hatte noch so seine M&#228;ngel und ...';
    var flattr_cat = 'rest';
    var flattr_lng = 'de_DE';
    var flattr_tag = 'GEBEE, GEBEEFlattr, Extensions, BlogEngine.NET, Flattr';
    var flattr_url = 'http://blog.geniali.ch/post/2010/08/06/GEBEE-Flattr-Extension-10.aspx';
    var flattr_hide = 'False';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>

Also viel Spass beim flattrn.

English

English text by http://gordon-breuer.de

In a previous article I described how to integrate the Flattr button within the BlogEngine.NET. This solution had a few shortcomings and I mentioned that there will be a real extension sooner or later. This future is now:

The integration into your own installation of the BlogEngine.NET is a straight forward process in four easy steps:

  1. Download the ZIP archive, here: GEBEE_Flattr_Extension.V.1.0.zip
  2. Extract the downloaded archive into the root directory of your BlogEngine.NET installation. All files will automatically be unpacked into the correct directory.
  3. Now you have to insert a small piece of code into your PostView.ascx where the Flattr button should be displayed. I created the extension as a user control so that you can decide where to insert it on your blog wherever you want: <%= GEBEEFlattr.GetFlattr(Post) %>
    <div class="Flattr">
    Dieser Beitrag ist mir was wert: &nbsp;<%= GEBEEFlattr.GetFlattr(Post) %>
    </div>
  4. Log into your administration panel and go to the extension settings. Here you have to enter your Flattr User-ID and you can change some visual options of how to display the button like in the following example:

    GEBEEFlattr Settings

This is an example of how your button could look:

So sieht der Flattr Button aus

The user control is generating some Javascript to generate the Flattr Button. Here is an example of this generated code:

<script type="text/javascript">
    var flattr_btn = 'compact';
    var flattr_uid = '25101';
    var flattr_tle = 'GEBEE - Flattr Extension 1.0';
    var flattr_dsc = 'Vor kurzem habe ich beschrieben wie man relativ einfach den Flattr Button in BlogEngine.NET einbinden kann. Diese L&#246;sung hatte noch so seine M&#228;ngel und ...';
    var flattr_cat = 'rest';
    var flattr_lng = 'de_DE';
    var flattr_tag = 'GEBEE, GEBEEFlattr, Extensions, BlogEngine.NET, Flattr';
    var flattr_url = 'http://blog.geniali.ch/post/2010/08/06/GEBEE-Flattr-Extension-10.aspx';
    var flattr_hide = 'False';
</script>
<script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>

Happy flattering!

Artikel empfehlen auf .NET-Kicks Deutschland

Tags: , , , ,

Blog | GEBEE

Flattr - Der Versuch

by Roland Schumacher alias GENiALi 20. July 2010 -- 662 Wörter  -- 531 mal gelesen
Dieser Beitrag ist mir was wert:  

Man sieht ihn immer öfters. Auf immer mehr Blogs / Webseiten. Ein Button mehr auf den man klicken kann. Nur dieser ist anders. Ganz anders.

Die meisten anderen Buttons, wie zum Beispiel “kick it-de” sind Themen bezogen. Den setzte ich nur in Postings ein wo es irgend wie um Entwicklung oder Informatik geht. Der zählt nur hoch wie oft jemand seine Bewunderung kund getan hat. Man sieht nur eine Zahl. Mehr nicht. Trotzdem wird der rege genutzt.

Jetzt kommt Flattr.com. Was ist hier anders?

  1. Man muss registriert sein. OK, bei den Anderen auch. Smile
  2. Wenn bei dem Flattr-Button eine Zahl steht heisst dass auch, dass ich für das Posting etwas in Monetärer Form bekommen habe.
  3. Man muss eine gewisse Geldsumme dem Dienst zur Verfügung stellen die dann verteilt wird.

Mindestens 2 Euro im Monat. 10% gehen an Flattr. Der Rest wird auf die geleisteten Klicks verteilt.

Was heisst das nun für mich. Ich habe mir mal ein Budget von 8 Euro gegeben. 10% behält Flattr für sich, den Rest kann ich “verklicken”.

Jedes Mal wenn ich den Button sehe, und das Posting gut finde, kann ich dem Autor damit was bezahlen. Die Klicks, die ich tätige, werden gezählt und am ende des Monates werden die 8 Euro weniger 10% durch die anzahl Klicks geteilt und jeder klick erhält diese Summe gutgeschrieben.

Testes halber habe ich mir ein Posting gesucht das den Button drin hat. Habe ihn angeklickt und sehe in der Statistik folgendes Bild.

Flattr Übersicht

Ich habe diesen Restmonat noch 3.14 Euro zu verteilen. Ich habe einmal geklickt. Dieser Autor bekäme, wenn ich nichts anderes mehr anklicke, von mir 3.14 Euro für sein Posting. Wenn ich jetzt noch ein anderes Posting sehe was mir gefällt, und das auch noch anklicke, dann bekommt er nur noch die Hälfte und so weiter.

Das heisst, um so mehr ich klicke um so weniger wird ende Monat verteilt pro Klick.

Ich werde es also einfach mal ein, zwei vielleicht auch drei Monate probieren. Ich befürchte aber, dass es mehr Verlierer geben wird wie Gewinner. Ein Gewinner ist sicher Flattr. Aber Geld vermehrt sich nicht einfach so. Wenn alle bemüht sind mehr zu bekommen als sie investieren wird sich das System tot laufen. Jeder der über längere Zeit Verlust macht wird aussteigen.

Der Einbau in BlogEngine.NET ist relativ einfach.

Einfache Lösung

In der Datei PostView.aspx wird folgendes stück Code eingefügt (Java Script). Man sollte natürlich die PostView.aspx aus dem Theme nehmen das man aktiviert hat. Aber wer das hier einbaut wird schon Bescheid wissen.

<div class="Flattr">
Dieser Beitrag ist mir was wert: &nbsp; 
    <script type="text/javascript">
        var flattr_btn = 'compact';
        var flattr_uid = '25101';
        var flattr_tle = '<%= Server.HtmlEncode(Post.Title) %>';
        var flattr_dsc = '<%= Regex.Replace(Post.Content, @"</?\w+((\s+\w+(\s*=\s*(?:"".*?""|'.*?'|[^'"">\s]+))?)+\s*|\s*)/?>", "").Replace(Environment.NewLine, " ").Substring(0, 250) + " [...]" %>';
        var flattr_cat = 'text';
        var flattr_lng = 'de_DE';
        var flattr_url = '<%= Server.HtmlEncode(Post.AbsoluteLink.AbsoluteUri) %>';
        var flattr_hide = 'false';
     </script>
    <script src="http://api.flattr.com/button/load.js" type="text/javascript"></script>

</div>

Die genaue Definition der Parameter ist hier zu finden. Das ist die schnelle Lösung für BlogEngine.NET.

Noch einfachere Lösung

Warten. Smile

Mir wurde geflüstert das jemand eine Extension für Flattr macht. Dann könnte es noch einfacher werden. Vor allem die Sache mit dem Parameter flattr_dsc. Dort sollten keine HTML Tags drin vorkommen. Vor allem keine <img… oder <a href… Flattr hat damit wahrscheinlich keine Probleme. Aber der W3C HTML Check. Deshalb das komische Konstrukt mit dem Regex.Replace. Allerdings werden ausgerechnet die <img… und <a href… nicht entfernt. Das sollte dann die Extension besser machen.

Ach ja. Wenn jemand einen RegEx hat der mir alle HTML Tags entfernt … Ihr wisst ja wo die Kommentarfunktion ist. Die sollte jetzt auch mit dem IE7/8 tun.

Noch etwas. Flattr ist BETA. Läuft aber angeblich sehr stabil so das es nur noch eine Frage der Zeit ist bis es nicht mehr BETA ist. Vielleicht bleibt es ja auch BETA. Ist im Web 2.0 Umfeld ja cool. Aber es geht mir um was anderes. Wenn sich jemand anmelden will muss er zur Zeit einen “invite” Code haben. Ich kann davon drei anbieten. Die ersten drei Kommentare die einen wollen bekommen einen. Einfach melden. Im Kommentar. Mit gültiger EMail.

kick it on dotnet-kicks.de

Tags: ,

Blog

Sachen testen

by Roland Schumacher alias GENiALi 5. July 2010 -- 255 Wörter  -- 164 mal gelesen
Dieser Beitrag ist mir was wert:  

Eigentlich wollte ich das nie machen. Etwas testen und dann daüber berichten. Aber wie es so ist, man wird älter und überlegt sich so einiges anders. So geht es mir auch beim diesem Thema. Aber wie kam es jetzt dazu.

Ich bekam ein Mail einer Firma mit der Frage, ob ich ein Produkt von ihnen testen wolle um danach auch auf meinem Blog etwas darüber zu berichten. Da es nicht Themenfremd ist, hat was mit PC zu tun, gab ich mir einen kleinen Ruck. Ich fragte mal bei Twitter in die Runde ob das irgend wie nicht passend ist. Etwas zu testen und danach zu Bloggen. Einer sagte dann, wie so nicht. Wenn es dich interressiert mach es. Du bekommst was, hast was zu schreiben und jemand ist glücklich. OK, mache ich.

Gleichzeigtig meinte dieser Kollege das er das schon lange macht. Nicht unbedingt testen und dann Bloggen, aber eben einfach nur testen. Etwas bekommen, anschauen, testen und darüber in irgend einer Form zu berichten. Zur Zeit testet er ein Handy. Wenn er in 80 Tagen 100 Bilder veröffentlicht, dann darf er es behalten. Das machte mich neugierig und ich meldete mich an. Das Projekt heisst trnd. Die Regeln um mitzumachen sind mir sehr sympatisch. Deshallb habe ich mich angemeldet und warte jetzt auf einen möglichen test für ein Spielzeug für “grosse Jungs”. Suppen, Salben und so Zeugs interessiert mich nicht wirklich. Aber so elektronische Spielzeuge würde ich doch gerne testen und auch darüber Bloggen.

trnd

Also schauen wir mal was uns das Projekt trnd bringt.

Tags: ,

Blog

Alter Google PageRank ist zurück

by Roland Schumacher alias GENiALi 30. June 2010 -- 418 Wörter  -- 225 mal gelesen
Dieser Beitrag ist mir was wert:  

Vor gut einem Monat war ich quasi am Boden zerstört. Google machte wieder einmal ein PageRank Update. Die Startseite meines Blogs schmierte dabei von PageRank 4 auf PageRank 0 ab. Das tat weh. Ja ja, ich weiss. Auf den PageRanke sollte man in zwischen Pfeifen können. Leider ist dem nicht so. Es gbit noch genügend aktuelle Projekte die den PageRank in ihre Bewertung einbeziehen. Nicht nur Linkhändler. Als Beispiel sei seitwert.de genannt.

Also war jetzt Ursachenforschung angesagt. Was wurde in letzter Zeit geändert an meinem Blog? Ich hatte fast 3 oder 4 Jahre einen PR 4, was für so ein 0815 Blog gar nicht mal so übel ist. Aber wieso schmierte der PR von 4 auf 0 ab?

Es dauerte etwa 3 Tage. Ich kam per Zufall auf dem Blog von klaus_b@.net vorbei. Da ich die Google Toolbar installiert habe viel mir der grüne Balken ins Auge, beziehungsweise der nicht mehr grüne Balken. Da machte es klick. Ich vermutete den Grund in folgendem Posting. Wie verwende ich den Meta-Tag robots in meinem Blog?

Als ich damals den Artikel las war alles so schlüssig. Wie so nicht. Die Aussagen machen durchaus Sinn. Also schnell nachgebaut. Es zeigte sich auch, dass die indexierten Seiten, 380 an der Zahl (nur ungefähre Werte), bei Google schnell runter gingen. Vor etwa 3 Wochen lag der Wert noch bei 197 Seiten. Dort stagnierte er. Es ging nicht mehr aufwärts. Und dann kam das PR Desaster.

Also schnell die Einstiegsseite auf index, follow setzen und hoffen. Das war ja die Einzige grosse Änderung. Drei Wochen passierte nichts. War auch so zu erwarten. Die indexierten Seiten nahmen aber wieder zu. Aktuell 261.

Irgendjemand sagte mir in einem Kommentar eines Posting, dass er auf Ende Juni hoffe. Ich dachte allerdings das Google den öffentlichen PR nur etwa 4-mal im Jahr neu rechnet.

Und heute Morgen dann die grosse Überraschung. Ich hatte wieder einen grünen Balken. Tatsächlich, der PR 4 ist zurück. Schnell auf das Blog von klaus_b@.net. Dieses Blog hat auch wieder einen grünen Balken. Schnell den HTML Code angeschaut. Ja was sehe ich den dort?! Das robots Meta-Tag war auch wieder auf index, follow.

Ich würde also ganz stark behaupten, dass eine Seite die nicht indexiert werden soll schlicht keinen PR bekommt. Mach ja auch Sinn. Wie so soll eine Seite, die nicht indexiert wird, bewertet werden? Der PR ist meiner Meinung nach nichts anderes als eine Bewertung. Ohne Index keine Bewertung.

Gibts noch Andere die die Einstiegsseite ihres Blogs von noindex, follow auf index, follow geändert haben und wieder einen PR bekommen haben?

kick it on dotnet-kicks.de

Tags: , ,

Blog

Übersetzen

Diverses

Seitwert

Locations of visitors to this page

Rating
Excellent - 97%overlay Icon

Statistik