Hallo!
Ich habe für mein Template eine Seite für verschiedene Einstellungen erstellt die im Backend angezeigt wird.
Nur werden die eingegebenen Werte irgendwie nicht übernommen. :roll:
Kurzer Einblick in meine functions.php
$options = array(
array("name" => "Hauptfarbe",
"desc" => "",
"id" => $shortname. "_color",
"type" => "text",
"std" => "")
);
function citybreakersone_add_admin() {
global $themename, $shortname, $options;
if ( $_GET['page'] == basename(__FILE__) ) {
if ( 'save' == $_REQUEST['action'] ) {
foreach ($options as $value) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }
foreach ($options as $value) {
if( isset( $_REQUEST[ $value['id'] ] ) ) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] );
} else {
delete_option( $value['id'] );
}
}
header("Location: themes.php?page=functions.php&saved=true");
die;
} else if( 'reset' == $_REQUEST['action'] ) {
foreach ($options as $value) {
delete_option( $value['id'] );
}
header("Location: themes.php?page=functions.php&reset=true");
die;
}
}
add_theme_page($themename." Einstellungen", "".$themename." Einstellungen", 'edit_themes', basename(__FILE__), 'citybreakersone_admin');
}
function citybreakersone_admin() {
... // code gekürzt weil nicht relevant
case 'text';
?>
<tr>
<td width="20%" rowspan="2" valign="top"><strong><?php echo $value['name']; ?></strong></td>
<td width="80%" valign="top"><input style="width:400px;" name="<?php echo $value['id']; ?> id="<?php echo $value['id']; ?> type="<?php echo $value['type']; ?>" value="<?php if ( get_settings( $value['id'] ) != "") { echo get_settings( $value['id'] ); } else { echo $value['std']; } ?>"></td>
</tr>
<?php break;
}
}
?>
<p class="submit">
<input name="save" type="submit" value="Einstellungen speichern">
<input type="hidden" name="action" value="save">
</p>
</form>
<form method="post">
<p class="submit">
<input name="reset" type="submit" value="Einstellungen zurücksetzten">
<input type="hidden" name="action" value="reset">
</p>
</form>
</div>
<?php
}
...
Alles anzeigen
Hat jemand ne Idee woran es liegen könnte?