- Status
- Gelöst
- Gemeldet für
- WPML Multilingual CMS 3.6.0
- Gelöst in
- 3.6.1
Übersicht über das Problem
Wenn Sie bestimmte Themes verwenden, kann der folgende schwerwiegende Fehler auftreten, der die Darstellung der Seite stört:
Fatal error: Uncaught exception ‘InvalidArgumentException’ with message ‘Argument ID must be numeric and greater than 0’
Problemumgehung
Das Problem wird durch die betreffenden Themes verursacht, da sie Argumente mit einem falschen Typ (Arrays anstelle von Objekten) an WordPress-Filter übergeben.
Dieses Problem wird in der nächsten Version behoben, indem die Verwendung des korrekten Typs für die Variablen erzwungen wird.
In der Zwischenzeit können Sie den Code anpassen, indem Sie die folgende Zeile manuell zur Datei sitepress-multilingual-cms/classes/language-switcher/class-wpml-ls-render.php in Zeile 127 (am Anfang der Funktion) hinzufügen:
$args = (object) $args;
Nachdem der Patch angewendet wurde, sollte der Code wie folgt aussehen:
//...
public function wp_nav_menu_objects_filter( $items, $args ) {
$args = (object) $args;
$menu_id = isset( $args->menu->term_id ) ? $args->menu->term_id : null;
//...