WPML
Status
Gelöst
Gemeldet für
WPML Multilingual CMS 4.6.6
Zugehöriges Plugin/Theme
Divi
Themen-Tags
ATE, Compatibility

Übersicht über das Problem

Wenn Sie das Divi-Theme verwenden, werden Sie feststellen, dass ein Apostroph im Text eines Buttons als HTML-Entität angezeigt wird, wenn dieser mit WPML übersetzt wird.

Problemumgehung

Bitte stellen Sie sicher, dass Sie über ein vollständiges Backup Ihrer Website verfügen, bevor Sie fortfahren.


  • Fügen Sie den folgenden Code in die Datei functions.php Ihres Themes ein:
    // WPML workaround for compsupp-7001
    add_filter('do_shortcode_tag', 'wpml_compsupp7001_decode_et_pb_button_text', 10, 4);
    
    function wpml_compsupp7001_decode_et_pb_button_text($output, $tag, $attr, $m) {
        if ( class_exists('Sitepress') && 'et_pb_button' === $tag && isset($attr['button_text'])) {
            // Decode both the ampersand and the apostrophe
            $output = html_entity_decode($output, ENT_QUOTES, 'UTF-8');
        }
    
        return $output;
    }

Beachten Sie: Wenn Sie einen Slider-Button verwenden, müssen Sie diese Zeile verwenden:

    if ( class_exists('Sitepress') && 'et_pb_slide' === $tag && isset($attr['button_text'])) {

Anstelle von:
    if ( class_exists('Sitepress') && 'et_pb_button' === $tag && isset($attr['button_text'])) {

Und wenn Sie ein Accordion-Element verwenden, müssen Sie diese Zeile verwenden:

    if ( class_exists('Sitepress') && 'et_pb_accordion_item' === $tag && isset($attr['title'])) {

Anstelle von:
    if ( class_exists('Sitepress') && 'et_pb_button' === $tag && isset($attr['button_text'])) {

Alle bekannten Probleme →