2010-07-13 7 views
0

Je suis probablement faire un gâchis de cette ...classe Accès du filtre Wordpress

J'essaie d'ajouter un filtre à the_content qui ajoutera une méthode d'une classe externe, mais continuer de tourner en rond .

Quelqu'un peut-il me diriger dans la bonne direction?

class MyClass { 

    var foo; 
    var bar; 

    function myMethod($id) { 
      // some code 
    } 
} 

Je suis bloqué sur l'accès myMethod($id) à l'intérieur d'un filtre plugin comme ceci:

function extendPost($content, '') { 
    global $post; 
    $id = $post->ID; 
    $class = new MyClass(); 
    // this is where i get stuck 
    $myMethod = $class->myMethod($id) // ??; 
    $content.= "<div>" . $myMethod . "</div>"; 
} 

add_filter('the_content', 'extendPost'); 

Toute aide serait ace. Je voudrais vraiment dormir un peu ce soir;)

+0

Avez-vous réellement une instruction 'return' dans votre fonction' myMethod' qui retourne une valeur pour assigner votre variable 'myMethod'? – ScottS

+0

Aussi, je ne sais pas si c'est à cause de votre message ou de votre code actuel, mais vous avez commenté le ';' sur la ligne $ myMethod est assignée. – ScottS

Répondre

0

add_filter() prend un standard PHP callback comme argument. Pour appliquer la méthode extendPost() de l'objet $myObject;

add_filter('the_content', array(&myObject, 'extendPost')); 

Pour appliquer la méthode extendPost() de la classe myClass;

add_filter('the_content', array('myClass', 'extendPost')); 
Questions connexes