• Resuelto gerardbm

    (@gerardbm)


    Hola,

    He creado una página de opciones personalizada en mi theme. En functions.php creo las variables (con arrays) y el formulario de introducción de datos.

    Luego, para poder usar las variables en cualquier parte del theme, pongo este código en el header:

    <?
    global $options;
    foreach ($options as $value) {
    	if (get_settings( $value['id'] ) === FALSE) { $$value['id'] = $value['std']; } else { $$value['id'] = get_settings( $value['id'] ); }
    }
    ?>

    El problema es que en functions.php tengo otros códigos en los que también quiero usar variables, pero allí no me las toma. Sólo puedo hacerlo poniendo este código cada vez antes de $la_variable. Ejemplo:

    function meta_desc() {
            global $page, $paged;
            if ( is_home()) {  
    
                global $options;
                    foreach ($options as $value) {
                            if (get_settings( $value['id'] ) === FALSE) { $$value['id'] = $value['std']; } else { $$value['id'] = get_settings( $value['id'] ); }
                    }
    
                echo $la_variable; }
        }

    ¿Cómo lo puedo solucionar?

Viendo 1 respuesta (de un total de 1)
  • Iniciador del debate gerardbm

    (@gerardbm)

    Bueno, solucionado. En PHP hay que importar las variables externas con GLOBAL dentro de una función, y no hay otra solución que permita hacer esto con menos código.

Viendo 1 respuesta (de un total de 1)

El debate ‘Duda con página de opciones personalizada’ está cerrado a nuevas respuestas.