مینو صفحات Menu Pages
()add_menu_page
یہ فنکشن ایک صلاحیت لیتا ہے جس کا استعمال اس بات کا تعین کرنے کے لیے کیا جائے گا کہ آیا کوئی صفحہ مینو میں شامل ہے یا نہیں۔
پیج کی آؤٹ پٹ کو ہینڈل کرنے کے لیے جو فنکشن استعمال ہوا ہے اسے یہ دیکھنا چاہیے کہ صارف کے پاس مطلوبہ صلاحیت بھی ہے۔
پیرامیٹرزParameters
- page_title$ :–مینو کے منتخب ہونے پر صفحہ کے ٹائٹل ٹیگز میں ظاہر ہونے والا متن۔
- menu_title$ :- مینو کے لیے استعمال ہونے والا متن۔
- capability$ :- اس مینو کے لیے صارف کو دکھانے کے لیے مطلوبہ صلاحیت۔
- menu_slug$ :—اس مینو کا حوالہ دینے کے لیے سلگ کا نام۔ اس مینو صفحہ کے لیے منفرد ہونا چاہیے اور صرف چھوٹے حروف تہجی، ڈیشز، اور انڈر سکور حروف جو ()sanitize_key کے ساتھ ہم آہنگ ہوں۔
- callback$ :—اس صفحہ کے مواد کو آؤٹ پٹ کرنے کے لیے بلایا جانے والا فنکشن۔
- icon_url$ :– اس مینو کے لیے استعمال کیے جانے والے آئیکن کا URL۔
- position$ :-مینو میں پوزیشن جس ترتیب سے یہ آئٹم ظاہر ہونا چاہیے۔
نوٹ: اگر آپ یہ میسج دیکھ رہے ہیں کہ”آپ کے پاس اس صفحہ تک رسائی کے لیے کافی اختیارات نہیں ہیں” ، تو آپ نے اپنے فنکشن کے لیے مناسب ہک استعمال نہیں کی ہے۔ آپ کو جو ہک استعمال کرنا چاہئے وہ ہے admin_menu۔
یہ صرف لازمی پیرامیٹرز کے ساتھ مثال ہے۔
()remove_menu_page
یہ اعلی درجے کے مینو کو ہٹانے کے لیے استعمال کیا جاتا ہے۔جیسے
remove_menu_page( string $menu_slug )
درج ذیل کوڈ کی مدد سے آپ سابقہ منیو کو ہٹا سکتے ہیں.
سب مینو صفحات Sub-menu Pages
جب آپ اپنے مین پیج یا ٹاپ لیول مینو میں کو سب مینو شامل کرنا چاہتے ہیں تو مندرجہ ذیل فنکشن استعمال کیا جاتا ہے اور اس میں کچھ پیرامیٹرز دینا ضروری ہوتا ہے.
add_submenu_page( string $parent_slug, string $page_title, string $menu_title, string $capability, string $menu_slug, callable $callback = ”, int|float $position = null )
یہ فنکشن اس بات کا تعین کرنے کے لیے استعمال کیا جائے گا کہ آیا کوئی صفحہ مینو میں شامل ہے یا نہیں۔
صفحہ کے آؤٹ پٹ کو ہینڈل کرنے کے لیے جو فنکشن استعمال ہوا ہے اسے یہ دیکھنا چاہیے کہ صارف کے پاس مطلوبہ صلاحیت بھی ہے کہ نہیں۔
پیرامیٹرز Parameters
1:-parent_slug$
یہ اس پیرنٹ مینو کے سلگ کا نام ہوتا ہے جس کا یہ سب مینو بنایا جا رہا ہے (یا معیاری ورڈپریس ایڈمن پیج کی فائل کا نام)۔
2:-page_title$
مینو کے منتخب ہونے پر صفحہ کے ٹائٹل ٹیگز میں ظاہر ہونے والا متن۔
3:-menu_title$
یہ وہ تحریر ہوتی ہے جو مینو کے ٹائٹل کے لیے ستعمال کی جاتی ہے.
4:-capability$
یہ اس بات کیا تعین کرتا ہے کہ اس مینو کو صارف کو دکھانے کے لیے مطلوبہ صلاحیت دینی ہے کہ نہیں۔
5:-menu_slug$
اس مینو کا حوالہ دینے کے لیے سلگ کا نام۔ اس مینو صفحہ کے لیے منفرد ہونا چاہیے اور صرف چھوٹے حروف تہجی، ڈیشز، اور انڈر سکور حروف جو ()sanitize_key کے ساتھ ہم آہنگ ہوں پر مشتمل ہونا چاہیے۔
نوٹ: مندرجہ بالا تمام پیرامیٹرز کو ()add_submenu_page فنکشن میں شامل کرنا ضروری ہے۔
6:-callback$
اس فنکشن کو صفحہ کے مواد کو آؤٹ پٹ کرنے کے لیے بلایا جانا ہے اور اس کی ڈیفالٹ ویلیو ایک خالی سٹرنگ ہے۔جیسے ‘ ‘.
7:-position$
مینو میں وہ پوزیشن جس ترتیب سے یہ آئٹم ظاہر ہونی چاہیے۔
نوٹ: اگر آپ یہ میسج دیکھ رہے ہیں کہ”آپ کے پاس اس صفحہ تک رسائی کے لیے کافی اختیارات نہیں ہیں” ، تو آپ نے اپنے فنکشن کے لیے مناسب ہک استعمال نہیں کی ہے۔ آپ کو جو ہک استعمال کرنا چاہئے وہ ہے admin_menu۔
menu_slug$ کے لیے براہ کرم __FILE__ استعمال نہ کریں یہ ایک بدصورت URL بناتا ہے، اور یہ ایک معمولی سیکیورٹی issue بھی پیدا کرتی ہے۔
مثال.
ہر پلاٹ کو ایک ہک کی ضرورت ہوتی ہے۔ Every Plot Needs a Hook
ایڈمیسٹریشن مینو شامل کرنے کے لیے، تین چیزیں کرنے کی ضرورت ہے:
- ایک فنکشن بنائیں جس میں مینو بلڈنگ کوڈ ہو۔
- اگر آپ نیٹ ورک کے لیے مینو شامل کر رہے ہیں تو admin_menu ایکشن ہک – یا network_admin_menu کا استعمال کرتے ہوئے مذکورہ فنکشن کو رجسٹر کریں۔
- اسکرین کے لیے HTML آؤٹ پٹ بنائیں، جو مینو آئٹم پر کلک کرنے پر ظاہر ہوتی ہے۔
زیادہ تر ڈویلپر اس فہرست کے دوسرے مرحلے کو نظر انداز کرتے ہیں۔ آپ صرف مینو کوڈ کو کال نہیں کر سکتے۔ آپ کو اسے کسی فنکشن کے اندر رکھنے کی ضرورت ہے، اور پھر اس فنکشن کو رجسٹر کریں۔
یہاں بیان کردہ ان تین مراحل کی ایک سادہ مثال ہے۔ یہ ترتیبات کے اعلی سطحی مینو کے تحت ذیلی سطح کے مینو آئٹم کو شامل کرے گا۔ منتخب ہونے پر، وہ مینو آئٹم ایک بہت ہی بنیادی اسکرین دکھائے گا۔
یہاں بیان کردہ ان تین مراحل کی ایک سادہ مثال ہے۔ یہ ترتیبات کے اعلی سطحی مینو کے تحت ذیلی سطح کے مینو آئٹم کو شامل کرے گا۔ منتخب ہونے پر، وہ مینو آئٹم ایک بہت ہی بنیادی اسکرین دکھائے گا۔
اس مثال میں، فنکشن ()my_menu فنکشن ()add_options_page کے ذریعے سیٹنگ ایڈمنسٹریشن مینو میں ایک نیئ آئٹم شامل کرتا ہے۔
نوٹ: نوٹ کریں کہ مرحلہ 2 میں ()add_action کال ()my_menu فنکشن کو admin_menu ہک کے تحت رجسٹر کرتی ہے۔اس کے بغیر، ()add_action کال، غیر متعینہ فنکشن کے لیے پی ایچ پی ایرر دے گا۔آخر میں، ()add_options_page کال سے مراد ()my_options فنکشن ہوتا ہے جس میں ظاہر کیا جانے والا اصل صفحہ ہوتا ہے (اور پی ایچ پی کوڈ پر کارروائی کی جاتی ہے) جب کوئی مینو آئٹم پر کلک کرتا ہے۔
نئے مینو کے لیے مقام کا تعین کرنا Determining Location for New Menus
نیا مینو بنانے سے پہلے، پہلے فیصلہ کریں کہ آیا مینو ایک اعلیٰ سطح کا مینو ہونا چاہیے، یا ذیلی سطح کا مینو آئٹم۔انتظامیہ کے مینو میں ایک اعلی سطحی مینو نئے حصے کے طور پر ظاہر ہوتا ہے اور اس میں ذیلی سطح کے مینو آئٹمز ہوتے ہیں۔اس کا مطلب ہے کہ ذیلی سطح کا مینو آئٹم موجودہ ٹاپ لیول مینو کا ممبر ہے۔
ایسا شاذ و نادر ہی ہوتا ہے کہ کسی تھیم کے لیے نئے اعلیٰ سطحی مینو کی تخلیق کی ضرورت ہو۔اگر تھیم ورڈپریس کے لیے بالکل نیا تصور متعارف کراتی ہے اور اسے کرنے کے لیے بہت سی اسکرینوں کی ضرورت ہوتی ہے، تو وہ تھیم ایک نئے ٹاپ لیول مینو کی ضمانت دے سکتی ہے۔اعلیٰ سطح کے مینو کو شامل کرنے پر صرف اس صورت میں غور کیا جانا چاہیے جب آپ کو ورڈپریس کو کچھ ایسا کرنے کے لیے متعدد، متعلقہ اسکرینوں کی ضرورت ہو جسے اصل میں پورا کرنے کے لیے ڈیزائن نہیں کیا گیا تھا۔نئے اعلیٰ درجے کے مینوز کی مثالوں میں جاب مینجمنٹ یا کانفرنس مینجمنٹ شامل ہو سکتی ہے۔براہ کرم نوٹ کریں کہ مقامی پوسٹ کی قسم کی رجسٹریشن کے ساتھ، ورڈپریس اس قسم کی خصوصیات کو منظم کرنے کے لیے خود بخود اعلیٰ درجے کے مینیو بناتا ہے۔
اگر اعلیٰ سطح کے مینو کی تخلیق ضروری نہیں ہے، تو آپ کو یہ فیصلہ کرنے کی ضرورت ہے کہ اپنے نئے ذیلی سطح کے مینو آئٹم کو کس اعلیٰ سطح کے مینو کے تحت رکھنا ہے۔حوالہ کے طور پر، کئی تھیمز موجودہ ورڈپریس ٹاپ لیول مینو کے نیچے ذیلی سطح کے مینو آئٹمز کو شامل کرتے ہیں۔
اپنے ذیلی سطح کے مینو آئٹم کے لیے صحیح مقام کا تعین کرنے کے لیے ورڈپریس کے اعلیٰ درجے کے مینو کی اس گائیڈ کا استعمال کریں:
- Dashboard-آپ کی سائٹ کے لیے معلوماتی مرکز اور ورڈپریس کور، پلگ انز اور تھیمز کو اپ ڈیٹ کرنے کے لیے اپڈیٹس کا اختیار شامل کرتا ہے۔
- Posts-پوسٹس لکھنے کے انٹر فیس مہیا کرتا ہے (وقت پر مبنی مواد)۔
- Media -آپ کی تصاویر، ویڈیوز اور آڈیو کو اپ لوڈ کرنا اور ان کا نظم کرنا۔
- -Links-دوسرے دلچسپی کے بلاگز اور سائٹس کے حوالہ جات کو منظم کرتا ہے۔
- Pages-آپ کے جامد(static ) مواد لکھنے کے لیے ٹولز دکھاتا ہے جسے صفحات کہتے ہیں۔ –
- Comments-پوسٹس کے جوابات دینےکے لیےریڈر کنٹرولنگ اور ریگولیشن کاکام کرتا ہے ۔ –
- Appearance-تھیم/اسٹائل فائلوں، سائڈبارز وغیرہ کی ہیرا پھیری کے لیے کنٹرول دکھاتا ہے۔
- Plugins -پلگ ان کومنظم کرنے کے لیے متعدد کنٹرول دکھاتا ہے، نہ کہ بذات خود پلگ ان کے لیے کنفیگریشن کے اختیارات۔
- Users -صارف کے انتظام کے لیے کنٹرول دکھاتا ہے۔
- Tools -برآمد، درآمد، اور یہاں تک کہ بلاگ ڈیٹا کے بیک اپ کا انتظام کرتا ہے۔
- Settings -پلگ ان کے اختیارات دکھاتا ہے جو صرف منتظمین کو دیکھانے چاہیے۔
- Network Admin-نیٹ ورک پر سیٹ کردہ پلگ ان کے اختیارات دکھاتا ہے۔ admin_menu کے بجائے، آپ کو network_admin_menu استعمال کرنا چاہیے۔
ٹاپ لیول مینیو Top-Level Menus
اگر آپ نے فیصلہ کیا ہے کہ آپ کی تھیم کو بالکل نئے ٹاپ لیول مینو کی ضرورت ہے، تو سب سے پہلے آپ کو ()add_menu_page فنکشن کے ساتھ ایک ٹاپ لیول مینو تخلیق کرنا ہوگا۔
درج ذیل مختلف پیرامیٹرز ویلیوز ہیں جن میں سے بعض کا ()add_menu_page فنکشن میں دینا ضروری ہیں :
- page_title –مینو کے منتخب ہونے پر صفحہ کے ٹائٹل ٹیگز میں ظاہر ہونے والا متن۔
- menu_title –ٹاپ لیول مینو کا ٹائٹل جو آپ کو ڈیش بورڈ میں نظر آئے گا.
- capability -اس مینو کو صارف کو دکھانے کے لیے مطلوبہ صلاحیت۔ جب آپ اپنے فارم کو ہینڈل کرنے کے لیے Settings API کا استعمال کرتے ہیں، تو آپ کو یہاں manage_options استعمال کرنا چاہیے کیونکہ صارف اس کے بغیر آپشنز کو محفوظ نہیں کر سکے گا۔
- menu_slug-اس مینو کا حوالہ دینے کے لیے سلگ کا نام (اس مینو کے لیے منفرد ہونا چاہیے)۔
- function -وہ فنکشن جو مینو پیج کے لیے صفحہ کا مواد دکھاتا ہے۔
- icon_url –اس مینو کے لیے استعمال کیے جانے والے آئیکن کا URL۔یہ پیرامیٹر اختیاری ہے۔
- position –مینو میں پوزیشن جس ترتیب سے یہ مینو ظاہر ہونا چاہیے۔پہلے سے طے شدہ طریقہ کار کے مطابق، اگر اس پیرامیٹر کو چھوڑ دیا جائے تو، مینو مینو ڈھانچے کے نیچے ظاہر ہوگا۔
نوٹ: ذیلی سطح کے مینو – ایک بار جب آپ کے اعلی درجے کے مینو کی وضاحت ہو جاتی ہے، یا آپ نے موجودہ ورڈپریس ٹاپ لیول مینو کو استعمال کرنے کا انتخاب کیا ہے، تو آپ ()add_submenu_page فنکشن کی مدد سے ایک یا زیادہ ذیلی سطح کے مینو آئٹمز بنانے کے لیے تیار ہیں۔
ذیلی سطح کے مینو Sub-Level Menus
اگر آپ چاہتے ہیں کہ آپ کا نیا مینو آئٹم ذیلی مینو آئٹم بن جائے، تو آپ()add_menu_page فنکشن کی بجائے ()add_submenu_page فنکشن کی مدد سے اسے بنا سکتے ہیں۔
درج ذیل مختلف پیرامیٹرز ویلیوز ہیں جن میں سے بعض کا ()add_submenu_pageفنکشن میں دینا ضروری ہیں :
- parent_slug –پیرنٹ مینو کے سلگ کا نام، یا معیاری ورڈپریس ایڈمن فائل کی وہ فائل کا نام جو ٹاپ لیول مینو فراہم کرتی ہے جس میں آپ اپنا سب مینو داخل کرنا چاہتے ہیں، یا آپ کی وہ پلگ ان فائل جس کے اندر اس مینو کو بطور کسٹم ٹاپ لیول مینو شامل کرنا چاہتے ہیں ۔
مثالیں:- Dashboard –اگر آپ ڈیش بورڈ کا سب مینو بنانا چاہتے ہیں تو index.phpکو بطور پیرنٹ سلگ استعمال کریں گے. جیسے:add_submenu_page(‘index.php’, …)
- Posts –اگر آپ پوسٹس کا سب مینو بنانا چاہتے ہیں تو edit.php کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘edit.php’, …)
- Media –گر آپ میڈیا کا سب مینو بنانا چاہتے ہیں تو upload.php کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘upload.php’, …)
- Links – اگر آپ لنکس کا سب مینو بنانا چاہتے ہیں تو link-manager.php کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘link-manager.php’, …)
- Pages – اگر آپ Pages کا سب مینو بنانا چاہتے ہیں تو ‘edit.php?post_type=page’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘edit.php?post_type=page’, …)
- Comments – اگر comments کا سب مینو بنانا چاہتے ہیں تو ‘edit-comments.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘edit-comments.php’, …)
- Custom Post Types – اگر Custom Post Types کا سب مینو بنانا چاہتے ہیں تو ‘edit.php?post_type=your_post_type’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘edit.php?post_type=your_post_type’, …)
- Appearance – اگر Appearance کا سب مینو بنانا چاہتے ہیں تو ‘themes.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘themes.php’, …)
- Plugins – اگر Plugins کا سب مینو بنانا چاہتے ہیں تو ‘plugins.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘plugins.php’, …)
- Users – اگر Users کا سب مینو بنانا چاہتے ہیں تو ‘users.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘users.php’, …)
- Tools – اگر Tools کا سب مینو بنانا چاہتے ہیں تو ‘tools.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘tools.php’, …)
- Settings – اگر Settings کا سب مینو بنانا چاہتے ہیں تو ‘options-general.php’ کو بطور پیرنٹ سلگ استعمال کریں گے.جیسے:add_submenu_page(‘options-general.php’, …)
- page_title – مینو کے منتخب ہونے پر صفحہ کے ٹائٹل ٹیگز میں ظاہر ہونے والا متن۔
- menu_title – یہ وہ تحریر ہوتی ہے جو مینو کے ٹائٹل کے لیے ستعمال کی جاتی ہے.
- capability – اس مینو کو صارف کو دکھانے کے لیے مطلوبہ صلاحیت۔ صارف کی سطحیں فرسودہ ہیں اور یہاں استعمال نہیں کی جانی چاہئیں۔
- menu_slug – اس مینو کا حوالہ دینے کے لیے سلگ کا نام۔ اس مینو صفحہ کے لیے منفرد ہونا چاہیے اور صرف چھوٹے حروف تہجی، ڈیشز، اور انڈر سکور حروف جو ()sanitize_key کے ساتھ ہم آہنگ ہوں پر مشتمل ہونا چاہیے۔
- function –وہ فنکشن جو مینو پیج کے لیے صفحہ کا مواد دکھاتا ہے۔ تکنیکی طور پر، جیسا کہ add_menu_page فنکشن میں، فنکشن پیرامیٹر اختیاری ہے، لیکن اگر یہ فراہم نہیں کیا جاتا ہے، تو ورڈپریس بنیادی طور پر یہ فرض کرے گا کہ پی ایچ پی فائل کو شامل کرنے سے کسی فنکشن کو کال کیے بغیر ایڈمنسٹریشن اسکرین تیار ہوگی۔
ریپر فنکشنز کا استعمال Using Wrapper Functions
چونکہ زیادہ تر سب لیول مینو Settings، ٹولز، یا Appearance مینو کے تحت ہوتے ہیں، اس لیے ورڈپریس ریپر فنکشن فراہم کرتا ہے جو ان ٹاپ لیول مینو میں سب لیول مینو آئٹمز کو شامل کرنا آسان بناتا ہے جیسے۔
Dashboard
Posts
Media
Links
Pages
Comments
Appearance
Plugins
Users
Tools
Settings
مثال:
یہاں ایک فوری مثال دی گئی ہے جس میں بتایا گیا ہے کہ کس طرح ٹاپ لیول مینو پیج اور سب مینو پیج داخل کیا جائے، جہاں سب مینو پیج پر ٹائٹل ٹاپ لیول پیج سے مختلف ہے۔ اس مثال میں، register_my_theme_more_settings_menu اس فنکشن کا نام ہے جو پہلا سب مینو پیج دکھاتا ہے:
صفحات داخل کرنا Inserting the Pages
یہاں ایک مثال ہے کہ مختلف جگہوں پر ایک سے زیادہ مینو کیسے داخل کریں:
نمونہ کا مینو صفحہ Sample Menu Page
پچھلی مثال میں کئی ڈمی فنکشنز شامل ہیں، جیسے ()mt_settings_page، اصل صفحہ کے مواد کے لیے پلیس ہولڈرز کے طور پر۔آئیے ان کی وضاحت کریں۔ کیا ہوگا اگر آپ mt_favorite_color نامی آپشن بنانا چاہتے ہیں جو سائٹ کے مالک کو سیٹنگز کے صفحے کے ذریعے اپنے پسندیدہ رنگ میں ٹائپ کرنے کی اجازت دیتا ہے؟()mt_options_page فنکشن کو اسکرین پر ڈیٹا انٹری فارم آؤٹ پٹ کرنے کے ساتھ ساتھ داخل کردہ ڈیٹا پر کارروائی کرنے کی ضرورت ہوگی۔
یہاں ایک فنکشن ہے جو یہ کرتا ہے:
- ورڈپریس کے افعال جیسے add_menu_page() اور add_submenu_page() ایک صلاحیت لیتے ہیں جس کا استعمال اس بات کا تعین کرنے کے لیے کیا جائے گا کہ آیا ٹاپ لیول یا سب لیول مینو دکھایا گیا ہے۔
- پیج کی آؤٹ پٹ کو ہینڈل کرنے کے لیے جو فنکشن لگا ہوا ہے اسے یہ دیکھنا چاہیے کہ صارف کے پاس مطلوبہ صلاحیت بھی ہے۔
- ورڈپریس ایڈمنسٹریشن فنکشنز خد بخود اس بات کی توثیق کرتے ہیں کہ آیا صارف لاگ ان ہے، لہذا آپ کو اپنے فنکشن میں اس کے بارے میں فکر کرنے کی ضرورت نہیں ہے۔
- فنکشن ڈیٹا انٹری فارم کو اسکرین پر ڈالنے سے پہلے کسی بھی داخل کردہ ڈیٹا پر کارروائی کرتا ہے، تاکہ نئی قدریں فارم میں دکھائی جائیں (بجائے ڈیٹا بیس کی اقدار کے)۔
- آپ کو پہلی بار اس کام کے بارے میں فکر کرنے کی ضرورت نہیں ہے، کیونکہ ورڈپریس update_option فنکشن ڈیٹا بیس میں خود بخود ایک آپشن شامل کر دے گا اگر یہ پہلے سے موجود نہیں ہے۔
- ہر بار جب آپ ایڈمن میں کسی صفحہ پر جاتے ہیں تو ان admin-menu-adding پروسیجرز کا تجزیہ کیا جاتا ہے۔لہذا اگر آپ ایک تھیم لکھ رہے ہیں جس میں آپشنز کا صفحہ نہیں ہے، لیکن بعد میں ایک شامل کریں، تو آپ اسے اوپر دی گئی ہدایات کا استعمال کرتے ہوئے شامل کر سکتے ہیں اور دوبارہ اپ لوڈ کر سکتے ہیں، اور اس وقت تک موافقت کر سکتے ہیں جب تک کہ آپ اس سے خوش نہ ہوں۔دوسرے لفظوں میں، مینوز کو “مستقل طور پر شامل” نہیں کیا جاتا ہے یا تھیم کو چالو کرنے پر ڈیٹا بیس میں نہیں رکھا جاتا ہے۔ان کا فوراََ تجزیہ کیا جاتا ہے، لہذا آپ اپنی مرضی سے مینو آئٹمز کو شامل یا گھٹا سکتے ہیں، دوبارہ اپ لوڈ کر سکتے ہیں، اور تبدیلی فوراً ظاہر ہو جائے گی۔
پیج ہک سفکس Page Hook Suffix
ہر وہ فنکشن جو ایک نیا ایڈمنسٹریشن مینو شامل کرتا ہے – add_menu_page(),
()add_submenu_page اور اس کے خصوصی ورژن جیسے ()add_options_page – ایک خاص قدر لوٹاتا ہے جسے Page Hook Suffix کہتے ہیں۔ اسے بعد میں ایک ہک کے طور پر استعمال کیا جا سکتا ہے جس پر صرف اس خاص پیج پر کال کی جانے والی کارروائی(action ) کو رجسٹر کیا جا سکتا ہے۔
ایسا ہی ایک ایکشن ہک load-{page_hook} ہے، جہاں {page_hook} ان() add_*_page فنکشنز میں سے ایک کے ذریعے لوٹائی جانے والی ویلیو ہے۔یہ ہک اس وقت کال کی جاتی ہے جب خاص پیج لوڈ ہوتا ہے۔نیچے دی گئی مثال میں، اس کا استعمال تمام ایڈمن پیجز پر “تھیم کنفیگر نہیں ہے” نوٹس کو ظاہر کرنے کے لیے کیا جاتا ہے سوائے پلگ ان آپشنز پیج کے: