2016-07-05 16 views
1

嘿,我正在嘗試擴展WP_Customize_Control類,以在使用sage主題的Customizer中添加自定義帖子下拉。我甚至試圖在custom_register動作鉤子中添加類,但仍然沒有找到錯誤:試圖擴展WP_Customize_Control在sage主題中未發現錯誤

致命錯誤:在/ home/wpsitesb/sites/rex2/wp-home中找不到類'Roots \ Sage \ Customizer \ WP_Customize_Control'內容/主題/ REX-etyhadar_v1/lib中/上線36 customizer.php

我的代碼:

add_action('customize_register', __NAMESPACE__ . '\\customizer_register_callback'); 


function customizer_register_callback($wp_customize) { 

    class Post_Dropdown_Custom_Control extends WP_Customize_Control { 

     // Dropdown code. 
    } 

} 

回答

1

也許這並不是一個真正的答案,但我寫在這裏,因爲它的長度和代碼fomating。

問題是(我認爲)是命名空間。

在您的customiser.php中您位於Roots\Sage\Customizer\命名空間下。

當你想通過擴展WP_Customize_Control來創建你的類,那麼你應該使用全局命名空間。

WP_Customize_Control之前添加\標誌。

class Post_Dropdown_Custom_Control extends \WP_Customize_Control { 
    //.... 
} 

請試試看,並告訴我結果。

+1

謝謝,全球命名空間爲我工作 –

0

檢查你的WordPress版本。它應該是> = 3.4

如果是,那麼原因可能是命名空間,使用「\」

+0

我的wp版本是> 3.4它是4.5.3 –

+1

那麼它可能是命名空間,使用'\' – Mickey

+0

是使用'\'解決了這個問題,感謝您的幫助。 –