Hi,
nachdem ich mir nun durch die verschiedensten Tutorials und Docs angesehen hab wende ich mich an euch in der Hoffnung, dass mir jemand auf die Sprünge helfen kann. Bin neu in der Wordpress Materie und hab einige Verständnissprobleme.
Ich hab vor einiger Zeit ein kleines PHP Script geschrieben, welches mir aus einer Datenbank auf Basis einer Formulareingabe eine Antwort generiert.
Nicht spektakulär oder auch großartig sinnvoll, soll nur erstmal das grobe Gerüst beschreiben.
Hab nun auf Basis verschiedener Tutorials erstmal folgendes zu stande gebracht:
<?php
/*
Plugin Name: bonadea
Plugin URI: http://
Description: nichts
Author: T-Jones
Version: 1.0
Author URI: http://
*/
class bonadea_Widget extends WP_Widget {
function bonadea_Widget() {
// widget actual processes
parent::WP_Widget(false, $name = 'bonadea_Widget');
}
function widget($args, $instance) {
// outputs the content of the widget
extract( $args );
?>
<?php echo $before_widget; ?>
<?php echo $before_title
. $instance['title']
. $after_title; ?>
<?php
if (! $HTTP_POST_VARS)
{
$suche = "Hallo";
}
else
{
$suche = $HTTP_POST_VARS['suche'];
}
?>
<div><?php echo $suche; ?></div>
<form action="<?php echo get_bloginfo('wpurl'); ?>" method="post">
<input type="text" name="suche"></br>
<input type="submit" value="Suche!">
</form>
<?php echo $after_widget; ?>
<?php
}
function update($new_instance, $old_instance) {
// processes widget options to be saved
return $new_instance;
}
function form($instance) {
// outputs the options form on admin
$title = esc_attr($instance['title']);
?>
<p><label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:'); ?> <input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" /></label></p>
<?php
}
}
add_action('widgets_init', create_function('', 'return register_widget("bonadea_Widget");'));
?>
Alles anzeigen
Nun zum eigentlichen Problem. Ich habe nun versucht das ganze zu minimieren und ersteinmal soweit zu kommen das ich die Eingabe ersteinmal wieder angezeigt bekomme, bevor ich versuche die Datenbank mit ins Spiel zu bringen.
Jedoch scheitere ich bereits daran. Normalerweise ruf ich die Seite mit dem Script über die Formulareingabe direkt selbst wieder auf nur funktioniert es hier leider gar nicht.
Daher meine Frage: Kann mir jemand bei diesem Denkfehler helfen?
Oder kann mir sogar jemand ne Anregung geben wie man das mit JQuery o.ä. lösen kann so das nur der jeweilige Div neu geladen wird?
Hoffe ich hab mich halbwegs verständlich ausgedrückt, wenn nich laßt es mich bitte wissen und ich werd versuchen es besser zu erklären.
Vielen Dank im vorraus!
EDIT:
Also, mit:
und
tut`s erstmal das was es bisher soll.
Aber könnte mir trotzdem jemand ein paar Anregungen geben wie man das eleganter mit JQuery oder ähnlichem umsetzen kann, so das ich nich dauernd gezwungen bin die gesamte Seite neu zu laden?
Wäre wirklich eine riesen Hilfe!