Support » Allgemeine Fragen » Plugin Options Page | Auto Populate dropdown

  • Hallo zusammen

    ich habe folgendes „Problem“:

    • Habe eine dropdwon Selectbox die automatisch von einem Ordnerinhalt befüllt wird.
    • Nach der Auswahl und dem sichern sprint die Auswahl im Dropdown wieder auf den default value zurück.

    Habe auch mit selected=“Selected“ getestet, aber es klappt nicht. Hat jemand einen Idee?

    /*create the field*/
    
    add_settings_field( 
        'psg_dyn_select_1', 
        __( 'Settings field description', 'wordpress' ), 
        'psg_dyn_select_1_render', 
        'pluginPage', 
        'psg_pluginPage_section' 
    );
    
    /*output the field*/
    
    function psg_dyn_select_1_render ( ) {
    
    $options = get_option( 'psg_settings' );
    ?>
    <select name= 'psg_settings[psg_dyn_select_1]'>
       <?php foreach ( glob( plugin_dir_path( __FILE__ ) . "assets/images/*" ) as $filename){
       $filename = basename($filename);
       echo "<option value='" . $filename . "'>".$filename." </option>";}?>     
    </select> 

    vielen Dank und einen schönen Tag Euch allen.

    Dani

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Habe auch mit selected=“Selected“ getestet, aber es klappt nicht.

    Das sollte aber gehen:
    https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select

    Was meinst du denn mit default value? Den ersten Wert in der Liste?

    Gruß, Torsten

    Thread-Starter soniccube

    (@soniccube)

    Hallo Torsten

    danke für Deine Antwort. Ich habe es heute hinbekommen, weiss aber nicht ob es auch einfacher gehen würde?

    function psg_select_thumbnail(  ) { 
    	
    			$options = get_option( 'psg_settings' );
       			?><select name='psg_settings[psg_dyn_select_1]'>
    			<?php
        		foreach ( glob( plugin_dir_path( __FILE__ ) . "../assets/images/*" ) as $filename['psg_dyn_select_1']){
            	$filename['psg_dyn_select_1'] = basename ($filename['psg_dyn_select_1'],'.svg' );
            	if ($filename['psg_dyn_select_1'] == $options['psg_dyn_select_1']) {
                echo '<option value="'.$filename['psg_dyn_select_1'].'" selected="selected">'.$filename['psg_dyn_select_1'].'</option>';
           		} else {
              	echo '<option value="'.$filename['psg_dyn_select_1'].'">'.$filename['psg_dyn_select_1'].'</option>';
            	}
        		}
      			?> </select><?php
    		}
Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Das Thema „Plugin Options Page | Auto Populate dropdown“ ist für neue Antworten geschlossen.