Kategorien
Webdeveloper Tools WordPress

WordPress Tools: Speakreader

Ein interessanter Service für barrierefreie Webseiten: der Speakreader für das automatische Vorlesen einer Seite und als Cloud-Service ohne Aufwand:

  • schnell installiert, WordPress etc. als Plugin downloadbar
  • Cloud basiert
  • Barrierefreiheit +
  • nicht kommerziell: kostenlos,
  • kommerziell auf Anfrage…
Kategorien
WordPress

WordPress Addthis Plugin selber positionieren

Das Addthis Plugin wehrt sich mit Händen und Füßen an sich positionieren zu lassen. Mit einem kleinem Hack funktioniert dies aber auch ohne die Backend Einstellungsmöglichkeiten zu verlieren (siehe Share Box unterhalb des Artikels)

Im Backend stellt man das gewünschte Aussehen und Verhalten ein und aktiviert einen Option, z.B:

Enable the following sharing tool at the Bottom of posts

addthis_backend

Kategorien
WordPress

WordPress related Artikel aus denselben Kategorien

Um bei WordPress die letzten 5 Artikel aller Kategorie eines Artikels (es kann mehrere geben) auszugeben, braucht man den folgenden Code:

function getMyRelatedPosts()
{
    $categories = get_the_category();
    $categoriesArray = array();
    if($categories){
        foreach($categories as $category) {
            $categoriesArray[] = $category->term_id;
        }
    }
    $queryRelatedPosts = new WP_Query(
        array (
            'category__and' => $categoriesArray,
            'orderby' => 'date',
            'order' => 'DESC',
            'posts_per_page' => 5,
            'post_status' => array( 'publish')
        )
    );
    return $queryRelatedPosts;
}
                        $relatedPosts = getMyRelatedPosts();
                            while ( $relatedPosts->have_posts() ) :
                                $relatedPosts->the_post();
                                echo " <a class='relatedPosts' href='".get_permalink()."' title='".the_title_attribute('echo=0')."'>".get_the_title()."</a><br>";
                            endwhile;
                            wp_reset_postdata();
Kategorien
WordPress

WordPress lokal testen Links anpassen

Damit beim lokalen Testen alle Links auf der Seite funktionieren muss man in der Datenbank in der Tabelle wp_options die Felder

option_id = 1, option_name = siteurl

und

option_id = 37, option_name = home

anpassen auf option_value an den lokalen Ordner bspw.  http://localhost/myTest/.

Danach funktionieren alle Links auf der Domain localhost und führen nicht mehr auf die Internetseite oder Ähnliches.

Die Verbindung zur Datenbank muss in der wp-config.php angepasst werden:

/** MySQL database username */
define('DB_USER', 'root');
/** MySQL database password */
define('DB_PASSWORD', '');
Kategorien
WordPress

WordPress Artikel von heute

Zum Auswählen aller Artikel, die am heutigen Tag veröffentlicht worden sind, kann man bei WordPress ganz einfach mit:

$today = getdate();

$queryToday = new WP_Query(
     array (
         'year' => $today["year"],
         'monthnum=' => $today["mon"],
         'day' => $today["mday"],
         'orderby' => 'date',
         'order' => 'DESC',
         'post_status' => array( 'publish')
    )
 );

 while ( $queryToday->have_posts() ) :
     $queryToday->the_post();
     echo " <a class='todayArticle' href='".get_permalink()."' title='".the_title_attribute('echo=0')."'>".get_the_title()."</a><br>";
 endwhile;

wp_reset_postdata();
Kategorien
PHP

PHP Analyse von Stichproben mit Pearsons C

Zur Analyse eine Stichprobe oder einfacher gesagt, wenn man von bestehenden Daten Rückschlüsse auf andere Daten machen will, kann man je nach Typ der Daten verschiedene statistische Zusammenhangskennzahlen berechnen. Da PHP leider so gut wie keine brauchbare Bibliothek für eine statistische Auswertung bietet, habe ich die Berechnung von Pearsons C bzw. des Korrigierter Kontingenzkoeffizient nach Pearson selber implementiert sowie die nötige Berechnung von Chi-Quadrat:

Kategorien
PHP

Cross Site Ajax Requests erlauben PHP

Bei der Entwicklung von Webapps oder modernen Webseiten steht man zwangsläufig vor dem Problem, dass man Ajax Requests zu anderen Domains oder Subdomains machen muss.

Als Cross Ajax Requests gilt auch schon ein Requests von http://foo.de zu https://foo.de.

Wennn man dies versucht kriegt man im Chrome und Safari die folgende Fehlermeldung auf der Javascript Konsole:

XMLHttpRequest cannot load Origin http://foo2.de is not allowed by Access-Control-Allow-Origin.

und ein Fehlerobject zurück:

Object {readyState: 0, status: 0, statusText: "Error: NETWORK_ERR: XMLHttpRequest Exception 101"}

Im Firefox bei Verwendung einer von Google gehosteten jQuery Version erhält man nur die kryptische Nachricht:

"[Exception... "Failure"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js :: <TOP_LEVEL> :: line 2"  data: no]"
Kategorien
WordPress

Hacker Angriff WordPress Blog Kommentare

Heute hat jemand versucht über die Kommentarfunktion meines Blogs meine Webseite zu hacken- ohne Erfolg. Die Kommentare die eingegen wurden waren:

20121205-182344.jpg

Kategorien
WordPress

WordPress eigenen Code einbinden in Posts

Als ich eigenen Javascript Code einbetten wollte in einen Blog Post, hatte ich das Problem, dass WordPress meinen Code immer automatisch geparst und encodiert hat, wodurch mein Javascript nicht mehr funktioniert hat.

Daraufhin habe ich eine kleine sehr nützliche Funktion geschrieben, mit der man über Shortcodes Inhalt kennzeichnen kann, wie z.B. Javascript oder CSS, der nicht verändert werden soll:

Einfügen von Javascript Code in WordPress Post

[nocode]
</strong>&lt;script&gt;alert('Hello');&lt;/script&gt;<strong>

[/nocode]

Einfügen von CSS Code in WordPress Post

[nocode]
</strong>&lt;style&gt;body{width:100px;}&lt;/style&gt;<strong>

[/nocode]

Kategorien
PHP Webdeveloper Tools

Mantis Benachrichtigungs Emails Inhalt reduzieren

Mantis als PM Tool versendet bei konfigurierbaren Events an bestimmte User Benachrichtigungs E-Mails, die sehr viele Informationen beinhalten und schnell lang werden können.

Um nicht immer die gesamte History in der E-Mail zu sehen, kann man folgenden Code ändern:

core/bugnote_api.php l.372:

$t_bugnote_count = 1;// vorher: count( $t_all_bugnotes );

Damit wird nur die letzte Note versendet.

Oder man konfiguriert diesen Wert bei jedem User einzeln: My Account->Preferences->E-mail Notes Limit = 1

Ticket Informationen kürzen