- Statut : non résolu
- Ce sujet contient 23 réponses, 3 participants et a été mis à jour pour la dernière fois par WillPerf, le il y a 9 années et 10 mois.
-
AuteurMessages
-
24 janvier 2015 à 21 h 20 min #990098
Par construction un filtre doit MODIFIER une variable, donc la renvoyer (1!) et complète (2!) car tu sais pas si un plugin ou le core en a besoin et comment il va l’utiliser
24 janvier 2015 à 21 h 30 min #990099bah je sais pas, il me semblait que c’était correct dans la mesure ou une variable est entré modifiée et retournée et dans le contexte de son utilisation, l’endroit ou elle est utilisée est clairement défini… et connu.
Mais il y a quelque chose qui doit m’échapper et peut être qu’avant d’aller plus loin dans la conversation il faut que je retourne dans mes bouquins lol24 janvier 2015 à 21 h 39 min #990100‘bar’, ‘mine’=> »));
var_dump( $res);Te donnera [c]NULL[/c]
$res = remove_post_count( array(‘foo’=>’bar’, ‘mine’=>’titi’));
Te donnera [c]array( ‘titi’ )[/c]
Si un plugin à besoin de ‘bar’, il ne l’aura pasTu DOIS renvoyer la variable complète [c]array(‘foo’=>’bar’, ‘mine’=>’titi’)[/c]
24 janvier 2015 à 21 h 48 min #990101Ca c’est ta conception, le NULL je l’utilise a toute les sauces et heureusement que ca existe sans quoi, la gestion des exceptions serait un taf a plein temps
Maintenant il me semble qu’en php, les variables passées en paramètre sont des copies, mis a part pour les objets…
Ensuite si je dois renvoyer la variable dans son état initial j’ai vraiment du mal a comprendre… a quoi sert un filtre.26 janvier 2015 à 12 h 58 min #990102Bonjour,
Pour le code je n’ai pas utilisée le votre, j’en ai fait un qui marche du coup !
Maintenant j’ai un problème plus compliqué… Je vais faire simple:
Un utilisateur correspond à un restaurateur, mais le restaurateur peut avoir plusieurs restaurants qui contient bien sur des menus et des items pour les menus.
Comment faire pour avoir plusieurs restaurants :fire::fire:
Merci à vous !!
26 janvier 2015 à 14 h 00 min #990103WillPerf wrote:Ca c’est ta conception, le NULL je l’utilise a toute les sauces et heureusement que ca existe sans quoi, la gestion des exceptions serait un taf a plein tempsJe n’ai pas critiqué le rôre du null, mais le fait que tu en utilise 1 ici
WillPerf wrote:Maintenant il me semble qu’en php, les variables passées en paramètre sont des copies, mis a part pour les objets…Oui
WillPerf wrote:Ensuite si je dois renvoyer la variable dans son état initial j’ai vraiment du mal a comprendre… a quoi sert un filtre.Le filtre est là pour MODIFIER une variable ou pas mais tu dois la retourner.
[c]function twentyfourteen_wp_title( $title, $sep ) {
if ( is_feed() ) {
return $title;
}
// Add the site name.
$title .= get_bloginfo( ‘name’, ‘display’ );
return $title;
}
add_filter( ‘wp_title’, ‘twentyfourteen_wp_title’, 10, 2 );[/c]
Au dessus, soit tu renvoie la variable initiale, soit tu renvoies la variable modifiée. Si j’ai besoin de la modifier dans un plugin il faut bien que j’ai la variable au moins l’initiale. C’est la différence entre action et filter, c’ets pas moi qui l’impose mais wordpress…[c]add_filter(‘views_’ . $screen->id, array( $this, ‘remove_post_counts’ ) );[/c]
Par construction tu dois avoir add_filter( hook, fonction), et si remove_post_counts retourne null, ton filtre va déclencher une erreur. Peut etre un simple warning actuellement, mais dans le futur….26 janvier 2015 à 18 h 33 min #990104Bon bon, je réponds une dernière fois parce que le lieu n’est peut-être pas propice, et Lucie95 n’as peut être pas plus que ça envie de nous subir.
Pour commencer lorsque je dis que ce qui est passé en paramètre c’est simplement la copie d’une adresse et en aucun cas une référence, excepté pour un objet, je n’attendais pas un quelconque assentiment mais c’était une façon de construire une phrase en restant courtois.Pour les filtres, ils ont deux contextes d’utilisations distincts:
1) avant de stocké la données ( input )
2) avant d’affiché la donnée ( output: avant le rendu, cas présent )Concept plus que basique a maitriser ( point de vue développé par l’auteur d’un article chez wp Beginners ).
Pour ce qui est du futur, je ne suis pas devin, mais wp fait des pieds et des mains pour assurer la retro compatibilité et je fais confiance a la qualité de leur travail et de leurs compétences.
28 janvier 2015 à 15 h 33 min #990105Bonjour,
J’ai une petite question pour vous, je souhaite affiche des valeurs récupérées dans une table de la basse de données. Mais je n’arrive pas à l’afficher dans un tableau…
Début du code:
<?php
/**
Plugin Name: Modification restaurant
Description: Plugin pour la modification des informations d’un restaurants
Author: Menumoove
Version: 0.1
**/add_action(‘admin_menu’, ‘setup_menu’);
function setup_menu()
{
add_menu_page( ‘Plugin Page’, ‘Modification Restaurant’, ‘manage_options’, ‘test-plugin’, ‘test_init’ );
}function test_init()
{
echo «Visualiser informations restaurant
« ;
global $current_user;
global $wpdb;
if ( isset($current_user) )
{
$user = $current_user->ID; // recupère l’ID de l’utilisateur connecté
}$table_name = $wpdb->prefix;
$result = $wpdb->get_results( « SELECT id, name FROM « .$table_name. »mm_restaurants WHERE user_id= ».$current_user->ID);
//var_dump($result);foreach ($result as $obj)
{echo $obj->name;
}
}?>
Comment afficher le résultat de la requête dans un tableau ?
Merci !!!!
29 janvier 2015 à 3 h 36 min #990106Bonjour,
Si c’est le format sous lequel les données sont récupérées qui doit être modifié, il y a l’argument output qui permet de le définir.
$wpdb->get_results( ‘query’, output_type );
http://codex.wordpress.org/Class_Reference/wpdb
Cordialement -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.