This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Nessun supporter è disponibile a lavorare oggi sul forum Italian. Sentitevi liberi di creare ticket e li gestiremo il prima possibile quando saremo online. Grazie per la comprensione.

Etichettato: 

This topic contains 9 risposte, has 2 voci.

Last updated by Laura 3 giorni, 13 ore fa.

Assigned support staff: Laura.

Autore Post
November 9, 2019 at 12:12 pm #4918021

alessandraG-2

Buongiorno

Sto effettuando le traduzioni in inglese del sito ma sto riscontrando problemi nella traduzione degli slug, contenenti delle tassonomie, delle pagine dei Custom Post Type.

Nel dettaglio, ho creato un custom post type impostando questi parametri

            'has_archive'   => FALSE,
            'rewrite'       => [
                'slug' => 'allestimenti-fieristici/%allestimenti_category%',
                'with_front' => FALSE
            ],

Da WPML > impostazioni > Traduzione dei tipi di contenuti, ho effettuato la traduzione degli slug come da screen

Ho aggiornato i permalink, ma quando visualizzo un post tradotto del custom post type mi restituisce pagina 404

L'url in lingua nativa, che funziona, è
hidden link

L'url tradotto, che restituisce pagina 404, è
hidden link

Se imposto il Custom Post Type, senza tassonomia nell'url, nel seguente modo

            'has_archive'   => FALSE,
            'rewrite'       => [
                'slug' => 'allestimenti-fieristici',
                'with_front' => FALSE
            ],

le traduzioni funzionano e le pagine tradotte vengono visualizzate correttamente, ma a me servono gli url con le tassonomie.

La versione di WPML è la 4.3.3
La versione di WPML String Translation è la 3.0.3
La versione di WordPress è la 5.2.4

Grazie

November 9, 2019 at 2:44 pm #4918331

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Salve,

grazie per averci contattato.

Puoi provare, in WPML > Setting, a riscrivere manualmente il permalink e a salvare? So che sembra corretto, ma abbiamo avuto dei casi in cui facendo così il problema è stato risolto.

November 9, 2019 at 3:02 pm #4918455

alessandraG-2

Salve

Ho provato a riscrivere il permalink, ma il problema continua a persistere

November 9, 2019 at 3:37 pm #4918597

alessandraG-2

Ho provato anche a creare un nuovo Custom post type, con un codice differente dal precedente, direttamente all'interno del function.php di WordPress, ma il problema persiste.

November 10, 2019 at 2:08 pm #4920539

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Ciao,

ma le categorie per il CPT sono tradotte?

November 10, 2019 at 3:01 pm #4920663

alessandraG-2

Si, le categorie sono tradotte, allego screen della schermata.

Le pagine tradotte danno 404 solo quando traduco lo slug, cioè come detto prima, l'url nativo del post è
hidden link

Se non traduco lo slug, quindi
hidden link
le pagine vengono visualizzate correttamente.

Quando traduco lo slug allestimenti-fieristici/%allestimenti_category% in fair/%allestimenti_category% restituisce pagina 404

November 11, 2019 at 9:04 am #4922755

alessandraG-2

Se può servire questa è la rewrite rule che uso per inserire la tassonomia del CPT all'interno dell'url

function wpa_course_post_link( $post_link, $id = 0 ){
    $post = get_post($id);  
    if ( is_object( $post ) ){
        $terms = wp_get_object_terms( $post->ID, 'allestimenti_category' );
        if( $terms ){
            return str_replace( '%allestimenti_category%' , $terms[0]->slug , $post_link );
        }
    }
    return $post_link;  
}
add_filter( 'post_type_link', 'wpa_course_post_link', 1, 3 );
November 11, 2019 at 11:02 am #4923963

alessandraG-2

E' possibile avere del supporto tecnico?
Grazie

November 11, 2019 at 11:25 am #4924435

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Ciao,

ho chiesto un secondo parere sul tuo caso ma ancora non ho ricevuto risposta.

November 13, 2019 at 10:03 am #4937149

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Salve,

dal secondo livello mi hanno risposto che il tuo è considerato codice custom, e non possiamo supportarlo.

Ad ogni modo il problema è nelle rewrite rules, che non usano la funzione add_rewrite_rule perciò probabilmente WPML non le riconosce.