Suporte » Desenvolvendo com WordPress » Preencher input com array

  • Resolvido Gisele

    (@gislef)


    Olá,

    No meu codigo jquery tem uma parte assim:

    $("#show").append("<img src=" +attachment.url+" alt="+attachment.alt+" title="+attachment.title+" description="+attachment.caption+" class='img-responsive img-thumbnail'/><input type='hidden' name='my_image_URL[]' value="+attachment.url+"></span>");

    Essa parte adiciona novos inputs conforme novas imagens selecionadas e insere name="my_image_URL[]" em cada um dos inputs

    Com o PHP estou tentando criar os array dos names my_image_URL[] e com JSON encode salvar em unico input :

    if ( isset( $_POST['my_image_URL'] ) ) {
    
            $urls = $_POST['my_image_URL'];
                 echo '<input name="imagens_home" value="'.$json_encode($urls).'" />';
    
            }

    Codigo completo

    options.php

      register_setting(
                'tema-setting-group',//string $option_group
                'imagens_home' //string $option_name
                //calback $sanitize_calback      
            );
    
    ---
        add_settings_field(
             'home-imagens-top',//string $id
             'Imagens',//String $title
             'tema_home_imgs',//string $calback
             'opcoes_do_tema',//string $page    
             'tema-home-options'//string $section
             //string $args          
             );
    
    //calback
    function tema_home_imgs(){   
            $urlsImagens = esc_attr( get_option( 'imagens_home' ) ); // RETURN DB DATA
    
            include( get_template_directory() . '/inc/templates/selecao_imagens.php');
    
            if ( isset( $_POST['my_image_URL'] ) ) {
    
            $urls = $_POST['my_image_URL'];
                 echo '<input name="imagens_home" value="'.$json_encode($urls).'" style="width:300px"/>';
    
            }   
        }

    selecao_imagens.php

    <input id="my_upl_button" type="button" value="Escolher Imagens" /><br/>
    
        <div class="row">
                <div id="exibe" class="sortable">       
    
                <?php           
                $urls = json_decode($urlsImagens, true);
                    if ($urls != '' ) {
                    foreach ($urls as $url) { 
                 ?>          
                        <img src="<?php echo $url;?>"  class="img-responsive img-thumbnail " />
                        <input name="my_image_URL[]" value="<?php echo $url;?>"/>
    
                <?php
                     };
                    }
                ?>
        </div>
        </div>

    theme_options.php

    <?php settings_errors();?>
    
    <form method=”post” action=”options.php”>
    <?php settings_fields (‘tema-setting-group’); ?>
    
    <?php do_settings_sections (
    ‘opcoes_do_tema’//string $page
    
    ); ?>
    
    <?php submit_button ();
    
    ?>
    
    </form>

    Aparentemente esta tudo ok, mas não consigo encontrar o erro.

    Depois do submit o input continua vazio, print_e e var_dump retornam vazio

    Agradeço ajuda

Visualizando 1 resposta (de um total de 1)
Visualizando 1 resposta (de um total de 1)
  • O tópico ‘Preencher input com array’ está fechado para novas respostas.