WP_List_Table und der Übernehmen-Button

Wenn man ein Plugin für WordPress entwickelt und dabei die Klasse „WP_List_Table“ für die Darstellung der Listen im Backend nutzt, so gibt es einige Dinge zu beachten. Das fängt damit an das man die Klasse „WP_List_Table“ nicht nutzen sollte, da sie nur für die interne Verwendung von WordPress gedacht ist. Stattdessen soll die entsprechende Datei unter einem anderen Namen in das Pluginverzeichnis kopiert werden.

Eine Instanz der WP_List_Table

Eine Instanz der WP_List_Table

Bei Verwendung der „WP_List_Table“ kann es passieren, das der „Übernehmen“-Button nicht funktioniert. Der Grund dafür ist recht simpel – der Button muss in ein Formularelement eingebettet werden. Das könnte dann so aussehen:

<form id="events-filter" method="post">
<?php
$wp_list_table = new Own_List_Table();
$wp_list_table->prepare_items();
$wp_list_table->search_box( __( 'Search users' ), 'project' );
$wp_list_table->display();
?>
</form>

Das Formular schließt den erzeugten Listenquellcode ein und der Button kann wieder genutzt werden.

Twitter Bibliothek für .NET und Mono

Möchte man in einer .NET respektive Monosprache einen Anwendung schreiben welche mit der Twitter API interagiert, so sollte man hierfür eine Bibliothek nutzen um den Aufwand in Grenzen zu halten.

tweetinvi.codeplex.com

tweetinvi.codeplex.com

Eine empfehlenswerte Biblitothek in diesem Bereich ist dabei Tweetinvi welche auf CodePlex zu finden ist. Tweetinvi ist dabei unter der Microsoft Public License lizensiert und somit freie Software. Die Bibliothek ist dabei problemlos in der Lage mehrere Millionen Tweets zu verarbeiten und befindet sich in aktiver Entwicklung. Ein einfaches Beispiel um einen Tweet abzusetzen könnte dabei so aussehen:

IToken token=new Token(twitterAccessToken, twitterAccessTokenSecret, twitterConsumerKey, twitterConsumerSecret);
ITweet tweet=new Tweet(tweetText, token);
bool success=tweet.Publish();

Damit hätte man den ersten Tweet mit dieser Bibliothek abgesendet.

Probleme mit Mono auf Ubuntu-Servern

Wenn man beim Ausführen einer Mono-Applikation auf einem Ubuntu-Server Fehlermeldungen wie diese:

Unhandled Exception: System.TypeLoadException: A type load exception has occurred.
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException: A type load exception has occurred.

zu sehen bekommt, so lässt sich dieses Problem meist leicht lösen, indem man die passenden Mono-Bibliotheken durch Installation des Paketes „mono-complete“ hinzufügt:

apt-get install mono-complete

Danach sollte die entsprechende Anwendung ohne Probleme starten.

Wer bin ich?

Wer im neuen Jahr seine Kenntnisse in Programmiersprachen auffrischen will, der sollte es mal mit dem Hello Word Quiz probieren.

Hello World Quiz

Hello World Quiz

Bei dem Quiz bekommt man ein Stück Quelltext zu sehen. Die Aufgabe ist es nun die dazugehörige Sprache zu bestimmen. Zu finden ist das ganze dabei auf helloworldquiz.com. Das Quiz ist dabei unter der MIT-Lizenz lizensiert. Der entsprechende Quelltext befindet sich auf GitHub.

ERM Designer für den Browser

Wer Entity-Relationship-Modelle bzw. die entsprechenden Diagramme (ERD) erstellen möchte, der kann hierfür Software wie die freie MySQLWorkbench nutzen. Für das plattformübergreifende Erzeugen solcher Diagramme kann man allerdings auch die freie Webapplikation wwwsqldesigner nutzen.

Der ERD-Designer in Aktion

Der ERD-Designer in Aktion

Auf der Webseite des Autors gibt es eine Demo zum Ausprobieren. Die in PHP und Javascript geschriebene Software steht dabei unter einer BSD-Lizenz und ist somit freie Software. Bei der Installation muss das entsprechende Archiv nur auf dem Webserver entpackt werden und kann sofort genutzt werden. Nur wer die Möglichkeiten der serverseitigen Speicherung nutzen möchte, muss einige Parameter konfigurieren.