2010-07-13 93 views
0

我可能做的這一個爛攤子......訪問類過濾

我嘗試添加了一個篩選the_content將從外部類中添加一個方法,但保持在轉圈圈。

任何人都可以指出我在正確的方向?

class MyClass { 

    var foo; 
    var bar; 

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

我卡在從一個插件過濾器中訪問myMethod($id)像這樣:

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'); 

任何幫助將是王牌。我今晚真的很想睡一覺;)

+0

你真的在你的'myMethod'函數中有'return'語句返回一個值來分配你的'myMethod'變量嗎? – ScottS 2010-07-13 21:12:34

+0

另外,不知道這是因爲你的文章或你的實際代碼,但你註釋掉';' $ myMethod被分配。 – ScottS 2010-07-13 21:17:11

回答

0

add_filter()standard PHP callback爲參數。

應用extendPost()方法對象$myObject;

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

要應用myClassextendPost()方法;

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