2011-04-08 12 views
15

मुझे हाल ही में वर्डप्रेस प्लगइन विकास में मिला है और मैं एक मेनू पेज (बाएं हाथ के मेनू में लिंक) जोड़ना चाहता हूं। पिछला अतः सवाल और वर्डप्रेस कोडेक्स कहना है कि यह फोन कर के रूप में सरल है: हालांकि जब मैं अपने प्लगइन सेटअप में यह कोशिश फाइल यह मुझसे कहता है कि समारोह अपरिभाषित हैवर्डप्रेस और अपरिभाषित फ़ंक्शन में कॉल add_menu_page()

add_menu_page($page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position); 

:

PHP Fatal error: Call to undefined function add_menu_page() 

यह लगता है प्रलेखन के अनुसार करने के लिए एक बहुत ही सरल बात की तरह, लेकिन मैं पूरी तरह से परेशान हूँ। किसी भी मदद की सराहना की वास्तव में किया जाएगा :)

उत्तर

34

मैं कैसे अपने कोड लग रहा है पता नहीं है, लेकिन यह कैसे मैं बस का परीक्षण किया है और यह काम किया:

add_action('admin_menu', 'my_menu'); 

function my_menu() { 
    add_menu_page('My Page Title', 'My Menu Title', 'manage_options', 'my-page-slug', 'my_function'); 
} 

function my_function() { 
    echo 'Hello world!'; 
} 

एक नज़र यहाँ http://codex.wordpress.org/Administration_Menus

+1

धन्यवाद, मेरी समस्या यह है कि मैं एक समारोह में कॉल डाल नहीं किया गया था। – Gazillion

+0

मुझे किसी और के कोड के साथ काम करना पड़ा और यह उत्पादन सर्वर पर काम कर रहा था लेकिन मेरे विकास सर्वर पर नहीं। मैंने 'add_action ('init', 'my_menu') बदल दिया;' to 'add_action ('admin_menu', 'my_menu'); 'और यह दोनों सर्वरों पर काम करता है, धन्यवाद :) – GabLeRoux

5

आप कर रहे हैं ले लो यह त्रुटि संदेश प्राप्त करना क्योंकि आपने किसी भी हुक के बाहर फ़ंक्शन add_menu_page का उपयोग किया है या इसे बहुत जल्दी लगाया है।

फ़ंक्शन add_menu_page को तीसरे तर्क के रूप में क्षमता प्राप्त होती है यह निर्धारित करने के लिए कि उपयोगकर्ता के पास मेनू तक पहुंचने की आवश्यक क्षमता है या नहीं, इसलिए फ़ंक्शन केवल तभी उपलब्ध होता है जब उपयोगकर्ता क्षमता आबादी हो, इसलिए आपको admin_menu हुक में फ़ंक्शन का उपयोग करना चाहिए निम्नलिखित के रूप में।

add_action('admin_menu', 'register_my_custom_menu_page'); 

function register_my_custom_menu_page(){ 
    add_menu_page( __('Custom Menu Title'), 'custom menu', 'manage_options', 'custom-page-slug', 'my_custom_menu_page'); 
} 

function my_custom_menu_page() { 
    echo __('This is custom menu page.'); 
} 

इसके बारे में जानकारी के लिए निम्न वर्डप्रेस कोडेक्स पेज देखें।

http://codex.wordpress.org/Function_Reference/add_menu_page

संबंधित मुद्दे