Ich wünsche alle Lesern einen wunderschönen guten Tag,
ich wende mich an dieses Forum weil ich mich seit neuestem ein wenig tiefer
in die WP Programmierung eingelesen habe.
Nachdem ich mittlerweile meine Themes selbst erstelle habe ich mich nun in Verbindung damit mit dem Schreiben eines Plugins auseinandergesetzt.
Hier stoße ich jedoch auf ein Problem.
Kurz zu dem was ich haben möchte......
Ich will ein PlugIn schreiben, welches ein Paar Einstellungen für eine JAVA Slideshow in der WP Datenbank speichert.
Diese Einstellungen werden dann via PHP im Javaskript aus der Datenbank geladen.
Zu meinem Problem:
Ich bekomme es nicht hin die Einstellungen dauerhaft in der DB zu speichern.
Das ist mein bestehendes PlugIn:
<?php
/*
Plugin Name: Java Slider
Plugin URI:xxx
Description: WP PlugIn Einbindung eines Java Templates
Version: 1.0
Author: xxx
Author URI: xxx
*/
function slideshow() {
?>
<!-- Start Optionen im Adminbereich (xhtml, ausserhalb php) -->
<div class="wrap">
<h2>Sliderkonfiguration - Portfolioslider</h2>
<form name="slidehoehe" method="post" action="
<?php
update_option( mp_slidehoehe,$_POST["ip_slidehoehe"]);
update_option( mp_slidebreite,$_POST["ip_slidebreite"]);
update_option( mp_bnamelinks,$_POST["ip_bnamelinks"]);
update_option( mp_bnamerechts,$_POST["ip_bnamerechts"]);
update_option( mp_bbreite,$_POST["ip_bbreite"]);
update_option( mp_bhoehe,$_POST["ip_bhoehe"]);
update_option( mp_vnumbofimages,$_POST["ip_vnumbofimages"]);
?>">
<table><tr><th><h5>Höhe Slideshow</h5></th>
<td><input name="ip_slidehoehe" type="text" value="<?php echo get_option( 'mp_slidehoehe') ?>"/></td>
<td><span class="description">Die Höhe der Slideshow definieren</span></td>
</tr>
<tr><th><h5>Breite Slideshow</h5></th>
<td><input name="ip_slidebreite" type="text" value="<?php echo get_option( 'mp_slidebreite') ?>"/></td>
<td><span class="description">Die Breite der Slideshow definieren</span></td>
</tr>
<tr><th><h5>Dateiname Reversebutton</h5></th>
<td><input name="ip_bnamelinks" type="text" value="<?php echo get_option( 'mp_bnamelinks') ?>"/></td>
<td><span class="description">Dateiname des Reversebuttons (Achtung: Case Sensitive!!!)</span></td>
</tr>
<tr><th><h5>Dateiname Forwardbutton</h5></th>
<td><input name="ip_bnamerechts" type="text" value="<?php echo get_option( 'mp_bnamerechts') ?>"/></td>
<td><span class="description">Dateiname des Forwardbuttons (Achtung: Case Sensitive!!!)</span></td>
</tr>
<tr><th><h5>Breite Reversebutton</h5></th>
<td><input name="ip_bbreite" type="text" value="<?php echo get_option( 'mp_bbreite') ?>"/></td>
<td><span class="description">Breite des Reversebuttons in Pixeln</span></td>
</tr>
<tr><th><h5>Höhe Forwardbutton</h5></th>
<td><input name="ip_bhoehe" type="text" value="<?php echo get_option( 'mp_bhoehe') ?>"/></td>
<td><span class="description">Höhe des Forwardbuttons in Pixeln</span></td>
</tr>
<tr><th><h5>Anzahl Bilder</h5></th>
<td><input name="ip_vnumbofimages" type="text" value="<?php echo get_option( 'mp_vnumbofimages') ?>"/></td>
<td><span class="description">Anzahl der Bilder in der Slideshow</span></td>
</tr>
</table>
<input type="submit" value="Speichern" />
<input name="action" value="insert" type="hidden" />
</form>
</div>
<?php }
function profileAddMenu() {
add_menu_page('Slideshow', 'Slideshow', 10, __FILE__, 'slideshow');
}
add_action('admin_menu', 'profileAddMenu');
?>
Alles anzeigen
ip_xxx steht für den Inputnamen
mp_xxx steht für den Datenbankeintrag
PlugIn wird mir im Adminbereich angezeigt ist alles toll. Ich kann die Daten angeben und auf "Speichern" klicken und die Daten werden in die Datenbank geschriben und können auch wieder ausgelesen werden. Soweit so gut.
Klicke ich allerdings auf den Link in der Admin BereichsNavi um auf diese Konfigseite zu gelangen schreibt er mir leere Einträge in die Datenbank und liest mir nicht die bestehenden aus.
Kann mir einer erklären (so einfach wie möglich ;-) ) wie der "Standardpluginaufbau" aussieht um sowas zu bewerkstelligen, ohne in den Standard PHP Dateien von WP rumfuhrwerken zu müssen?
Ich habe zum Beispiel auch schon versucht in der options.php neue variablen anzulegen und diese dann wieder auszulesen. (Analog zu options-general.php) Leider habe ich mir damit die DB komplett zerschossen.
(Zum Glück gibts Testsysteme ;-) )
Also ich hoffe ich habe mein Problem ausreichend erklärt und beschrieben, und hoffe ich finde Hilfe.
Wenn nicht, kennt man hier evtl. ein Forum wo ich auf Hilfe bekommen kann.
Vielen Dank mal bis hierher.
Viele Grüße
Numelle