WPML
Stato
Risolto
Segnalato per
WPML Multilingual CMS 3.1.9.5
Risolto in
3.1.9.7

Panoramica del problema

  1. Vai al menu e creane uno nella lingua predefinita.
  2. Prova a creare il menu nella lingua secondaria.
  3. Dopo aver salvato riceverai un errore 404.

Soluzione alternativa

Questo problema è stato risolto in WPML 3.1.9.7


Aggiorna alla versione recente di WPML per risolvere il problema

Se non vuoi o non puoi aggiornare WPML, segui queste istruzioni:


  1. Scarica la versione aggiornata di iclNavMenu.class.php

  2. Usalo per sostituire sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php:
    Molto probabilmente questo significa che dovrai usare il tuo client FTP e caricare il file in sitepress-multilingual-cms/inc/wp-nav-menus: se ti viene chiesto di sovrascrivere il file esistente, fallo.

In caso di problemi


Nel caso in cui riscontri uno di questi problemi:

  • Fatal error: Call to undefined method SitePress::get_setting() in /wp-content/plugins/sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php on line 121

  • PHP Fatal error: Call to undefined function wpml_prepare_in() in /wp-content/plugins/sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php on line 548

  • Una pagina bianca/vuota

Segui questi passaggi:

  1. Vai su “WPML” -> “Supporto”

  2. Fai clic su “informazioni di debug”: vedrai una casella di testo grigia con molte informazioni (è un oggetto json)

  3. Copia il contenuto della casella di testo in un file di testo e nominalo come preferisci: è meglio se usi l’estensione “json”, ma non è obbligatorio

  4. Crea un nuovo utente WordPress con diritti di amministratore per permettermi di eseguire il debug del problema

  5. Installa il plugin gratuito “Duplicator” (qui).
    Puoi usare un plugin diverso, se preferisci, ma le seguenti istruzioni sono specifiche per Duplicator (anche se possono essere facilmente adattate per altri plugin)

  6. Crea un nuovo pacchetto:

    1. Vai su “Duplicator” -> “Pacchetti”

    2. Fai clic su “Crea nuovo”

    3. Procedi con la procedura guidata, lasciando tutte le impostazioni predefinite (se lo desideri, puoi escludere alcuni file che ritieni non necessari o che renderebbero il pacchetto troppo grande, come i file nella cartella “uploads”)

    4. Una volta pronto lo snapshot, scarica sia il file “installer” che il file “package”

  7. Crea una cartella e includi i file dei passaggi 3 e 6.4 (ovvero il file di testo con le informazioni di debug, l’installer e il pacchetto).

  8. Comprimi quella cartella in formato zip e caricala su Google Drive, Dropbox o un servizio simile (oppure carica l’intera cartella senza comprimerla e condividila)

  9. Vai al nostro forum di supporto e crea un ticket di supporto con il seguente titolo “Workaround issues – Saving menus in non default language leads to 404 error”: ti chiederemo di condividere in privato i file che hai salvato al passaggio 8.

Se stai usando una versione troppo vecchia di WPML, questa soluzione alternativa potrebbe non funzionare.
In these cases, you may get a white page, or this errors: PHP Fatal error:  Call to undefined function wpml_prepare_in()

Per risolvere questo errore specifico, segui questi passaggi:


  1. apri
    'wp-content/plugins/sitepress-multilingual-cms/inc/functions.php'
    e cerca
    wpml_prepare_in

  2. Se non riesci a trovarlo, aggiungi questo in fondo al file:
    function wpml_prepare_in( $items, $format = '%s' ) {
     global $wpdb;
    
     $items    = (array) $items;
     $how_many = count( $items );
     if ( $how_many > 0 ) {
      $placeholders    = array_fill( 0, $how_many, $format );
      $prepared_format = implode( ",", $placeholders );
      $prepared_in     = $wpdb->prepare( $prepared_format, $items );
     } else {
      $prepared_in = "";
     }
    
     return $prepared_in;
    }

Tutti i problemi noti →