In Variablen deklarieren

Ich muss das PHP innerhalb der Variablen einer benutzerdefinierten Menüstruktur, aber es wird kommentiert:

   Page Name  

Erklärung der Variablen:

$icon_var – erhält Wert von einer benutzerdefinierten Eingabe _menu_custom_item wo ich Variablen ohne $ schreibe, die SVG-Code enthalten, um _menu_custom_item mit _menu_custom_item zu machen.

  function sidebar_menu() { $menu_name = 'sidebar_pages'; if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] ) ) { $menu = wp_get_nav_menu_object( $locations[ $menu_name ] ); $menu_items = wp_get_nav_menu_items( $menu->term_id ); $menu_list = '' . "\n"; } else { // $menu_list = ''; } echo $menu_list; } 

Die gewünschte Ausgabe sollte wie folgt aussehen:

 
  • Главная‌​
  • Solutions Collecting From Web of "In Variablen deklarieren"

    Sie müssen global $variable; aufrufen global $variable; bevor Sie die Variable verwenden können. Probieren Sie stattdessen den Code unten für diese Zeile aus.

     // setup your global scope here global $icon_var; // set the new value in global scope $icon_var = get_post_meta($menu_item->ID, '_menu_item_custom', true); // then use the variable $menu_list .= "\t\t\t\t\t
  • $icon_var$title
  • \n";

    DYNAMISCHER GLOBALER VARIABLENNAME

    Wenn Sie Ihre Daten in einer globalen Variablen erstellt haben und jetzt mit einer dynamischen Namensreferenz darauf zugreifen möchten, verwenden Sie direkt $ GLOBALS .

     // 'icon_home' set as global global $icon_home; $icon_home = ' '; // variable name retrieved dynamically // 'icon_home'; $icon_var = get_post_meta($menu_item->ID, '_menu_item_custom', true); $icon = $GLOBALS [$icon_var]; // output icon echo "\t\t\t\t\t
  • $icon$title
  • \n";

    Jetzt funktioniert es. Ich bin Jgraup sehr dankbar!

    Alles, was ich ändern musste, ist $icon = $GLOBALS[$icon_var]; und ändern Sie die Struktur $menu_list als jgraup empfohlen. Auch hier sind keine Änderungen durch Dritte erforderlich.

    Der endgültige Code:

     function sidebar_menu() { $menu_name = 'sidebar_pages'; if (($locations = get_nav_menu_locations()) && isset($locations[$menu_name])) { $menu = wp_get_nav_menu_object($locations[$menu_name]); $menu_items = wp_get_nav_menu_items($menu->term_id); $menu_list = '' . "\n"; } else { // $menu_list = ''; } echo $menu_list; }