Intégrer un widget dans l’entête (Créer un compte)

  • Statut : non résolu
2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #481311
    jeanflo
    Membre
    Initié WordPress
    43 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 2.9
    – Version de PHP/MySQL :
    – Thème utilisé : p2
    – Extensions en place :
    – Nom de l’hebergeur : Amen
    – Adresse du site : Intranet non accessible

    Problème(s) rencontré(s) :

    Je cherche à intégrer un widget du plugin “forum serveur” dans l’entête (header) du site.
    J’ai bien trouvé les fonctions (ci dessous) qui semblent gérer le widget, mais quel code utiliser pour faire appel à la fonction qui “lance” le widget ?

    function wpf_load_widget() {
    		if (!function_exists(‘register_sidebar_widget’)) {
    			return;
    		}
    		
    		//$widget_ops = array(‘classname’ => ‘widget_fs_vasthtml’, ‘description’ => __( “Display latest activity in the forum”) );
    		
    		register_sidebar_widget(__(“Forums Latest Activity”, “vasthtml”), array(&$this, “widget”));
        	register_widget_control(“Forums Latest Activity”, array(&$this, “widget_wpf_control”));
    
    	}
    	function widget($args){
    		global $wpdb;
    		$this->setup_links();
    		$widget_option = get_option(“wpf_widget”);
    		
    		$posts = $wpdb->get_results(“SELECT * FROM $this->t_posts ORDER BY `date` DESC LIMIT “.$widget_option[“wpf_num”]);
    		echo $args[‘before_widget’];
    		echo $args[‘before_title’] . $widget_option[“wpf_title”] . $args[‘after_title’];
    		
    		echo “<div class='sidebar'><h2>Dernier article du forum</h2></div>“;
    		echo “<ul>“;
    		foreach($posts as $post){
    			$user = get_userdata($post->author_id);
    			echo “<li><a href='".$this->thread_link.”$post->parent_id.0’>”.$this->output_filter($post->subject).”</a> <small>“.$this->format_date($post->date).”</small></li>“;
    		}
    		echo “</ul>“;
    		echo $args[‘after_widget’];
    	}
    	
    	function latest_activity($num = 5, $ul = true){
    		global $wpdb;
    		$posts = $wpdb->get_results(“SELECT * FROM $this->t_posts ORDER BY `date` DESC LIMIT $num”);
    		if($ul) echo “<ul>“;
    		foreach($posts as $post){
    			$user = get_userdata($post->author_id);
    			echo “<li><a href='".$this->thread_link.”$post->parent_id.0’>”.$this->output_filter($post->subject).”</a> “.__(“by:”, “vasthtml”).” “.$this->profile_link($post->author_id).”<br /><small>“.$this->format_date($post->date).”</small></li>“;
    		}
    		if($ul)echo “</ul>“;
    	}
    	
    	function widget_wpf_control(){
    		if ( $_POST[“wpf_submit”] ) {
    		
        		$name = strip_tags(stripslashes($_POST[“wpf_title”]));
        		$num = strip_tags(stripslashes($_POST[“wpf_num”]));
        		
        		$widget_option[“wpf_title”] = $name;
    			$widget_option[“wpf_num”] = $num;
        		update_option(“wpf_widget”, $widget_option);
     		}
     			$widget_option = get_option(“wpf_widget”);
     			
    		echo “<p><label for='wpf_title'>“.__(“Title to display in the sidebar:”, “vasthtml”).”
    				<input style='width: 250px;' id='wpf_title' name='wpf_title' type='text' value='{$widget_option['wpf_title']}' /></label></p>“;
    			
    			
    		echo “<p><label for='wpf_num'>“.__(“How many items would you like to display?”, “vasthtml”);
    		echo “<select name='wpf_num'>“;
    		for($i = 1; $i < 21; ++$i){
    			if($widget_option["wpf_num"] == $i)
    				$selected = "selected = 'selected'";
    			else
    				$selected = "";
    			echo "<option value='$i' $selected>$i</option>“;
    		}
    		echo “</select>“;
    			echo “</label></p>
    				<input type='hidden' id='wpf_submit' name='wpf_submit' value='1' />“;
    	}

    Le pire c’est que cela doit être très simple.
    Merci pour votre aide
    JFB

    #722866
    chamomor
    Participant
    Maître WordPress
    1914 contributions

    bonjour, un peu vite parce que je n’ai pas lu toute la fonction :

    
    			

2 sujets de 1 à 2 (sur un total de 2)
  • Vous devez être connecté pour répondre à ce sujet.