Hauptmenü

Werkzeuge

Kategorien

Archiv

Problem zwischen wpShopGermany und dem awake Theme

Erstellt in Wordpress am 12. August 2014 vom Daschmi

Es gibt bis Version 3.4.2 ein Problem beim Einsatz von wpShopGermany mit dem WordPress awake Theme. Das awake Theme versucht die Namen der Input Felder als Shortcodes zu interpretieren, was zum einen zu einer merkwürdigen Darstellung der Shop Templates führt und zum anderen die Formularfelder nicht korrekt gespeichert werden.

Im awake Theme gibt es eine nicht dokumentierte Funktion, um das parsen der Shortcodes zu verhindern. Alles was zwischen [raw] und [/raw] steht wird nicht als Shortcode interpretiert. Eine Möglichkeit wäre nun alle phtml Templates in [raw] und [/raw] einzuschließen, was aber einen erheblichen Aufwand bedeutet. Ab der wpShopGermany Version 3.4.3 gibt es unter wpShopGermany -> Konfiguration -> Erweitert eine neue Funktion, die automatisch alle Frontendtemplates in [raw] und [/raw] einschließt ohne die Templates zu modifizieren.

Leider gibt es im awake Theme noch eine weitere Funktion, die offenbar den Inhalt für die Verarbeitung der Shortcodes vorbereiten soll:

function mysite_texturize_shortcode_before($content) {
$content = preg_replace(‚/\]\[/im‘, "]\n[", $content);
return $content;

Diese Funktion ersetzt aber zum Beispiel:

<input type="text" id="email" name="wpsg[checkout][email]" value="" />

durch

<input type="text" id="email" name="wpsg[checkout]
[email]" value="" />

Dies führt dann dazu, dass die Variablen nicht korrekt übergeben und gespeichert werden.

Abhilfe schafft die Änderung der mysite_texturize_shortcode_before function durch:

function mysite_texturize_shortcode_before($content) {

$pattern_full = ‚{(\[raw\].*?\[/raw\])}is‘;
$pattern_contents = ‚{\[raw\](.*?)\[/raw\]}is‘;

$pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);
$new_content = “;

foreach ($pieces as $piece)
{

if (preg_match($pattern_contents, $piece, $matches))
{

// [raw](.*)[/raw]
$new_content .= $piece;

}
else
{

$new_content .= preg_replace(‚/\]\[/im‘, "]\n[", $piece);

}

}

return $new_content;

}

so wird die Ersetzung zwischen den [raw] und [/raw] Tags nicht mehr durchgeführt.

Problem mit WordPress 3.9.1 / 3.9+ und qTranslate auch in Verbindung mit wpShopGermany

Erstellt in Allgemein am 10. Juni 2014 vom Daschmi

qTranslate ist derzeit nicht kompatibel mit WordPress 3.9.1. Es kommt aktuell zu folgendem Fehler beim Einsatz:

Catchable fatal error: Object of class WP_Post could not be converted to string in
/var/www/wp.home/wpsg/wp-content/plugins/qtranslate/qtranslate_core.php on line 455

Abhilfe schafft folgende Änderung in der Datei /wp-content/plugins/qtranslate/qtranslate_hooks.php:

add_filter(‚get_the_date‘, ‚qtrans_dateFromPostForCurrentLanguage‘, 0, 4);

in

add_filter(‚get_the_date‘, ‚qtrans_dateFromPostForCurrentLanguage‘, 0, 2);

YouTube Vorschaubild verwenden

Erstellt in Allgemein am 29. Mai 2014 vom Daschmi

YouTube generiert für Videos verschiedene Vorschaubilder, die wie folgt abgerufen werden können:

http://img.youtube.com/vi/[Video ID]/0.jpg (480×360)
http://img.youtube.com/vi/[Video ID]/1.jpg (120×90)