{"id":230421,"date":"2022-12-09T20:02:00","date_gmt":"2022-12-09T17:02:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230421"},"modified":"2022-12-07T12:04:55","modified_gmt":"2022-12-07T09:04:55","slug":"wordpressi-administraatori-menueue-alammenueue-uemberkorraldamine","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/wordpressi-administraatori-menueue-alammenueue-uemberkorraldamine\/","title":{"rendered":"WordPressi administraatori men\u00fc\u00fc: alammen\u00fc\u00fc \u00fcmberkorraldamine"},"content":{"rendered":"\n<p>\u00dcks asi WordPressi men\u00fc\u00fc API-ga t\u00f6\u00f6tamisel (see on <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_menu_page\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">add_menu_page<\/a>, <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_submenu_page\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">add_submenu_page<\/a> ja muu sarnane) on see, et see ei muuda alammen\u00fc\u00fc \u00fcksuste j\u00e4rjestuse muutmist lihtsaks.<\/p>\n<p>Muidugi, teatud asjade (nt taksonoomia v\u00f5i muu taoline) puhul saate lihtsalt muuta nende registreerimise j\u00e4rjekorda. Kuid oletame, et teil on WordPressi administraatorimen\u00fc\u00fc ja seej\u00e4rel selle konkreetse men\u00fc\u00fc all m\u00f5ned alammen\u00fc\u00fc lehed.<\/p>\n<p>Vaikimisi loob WordPress \u00fclataseme men\u00fc\u00fc ja seej\u00e4rel kohe \u00fclataseme men\u00fc\u00fc alla alammen\u00fc\u00fc elemendi, mis lingib samale lehele. Paljudel juhtudel v\u00f5ib see olla ideaalne.<\/p>\n<p>M\u00f5nel juhul v\u00f5ite siiski soovida seda muuta.<\/p>\n<h2>WordPressi administraatori men\u00fc\u00fc<\/h2>\n<p>N\u00e4ide selle kohta, millal v\u00f5iksite midagi muuta, v\u00f5iks olla j\u00e4rgmine:<\/p>\n<ul>\n<li>Teil on \u00fclataseme men\u00fc\u00fc, mis on m\u00f5eldud valikute pakkumiseks p\u00e4rast \u00fchenduse loomist kolmanda osapoole API-ga,<\/li>\n<li>Kolmanda osapoole API n\u00f5uab API-v\u00f5tit (v\u00f5i m\u00f5nda muud autentimist), seega peate esmalt m\u00e4\u00e4rama selle jaoks seaded,<\/li>\n<li>Miks mitte muuta esimene men\u00fc\u00fcelement Seaded ja teine \u200b\u200bmen\u00fc\u00fck\u00e4sk tegelikeks API t\u00f6\u00f6riistadeks?<\/li>\n<\/ul>\n<p>Muidugi, kui s\u00e4tteid pole seadistatud, on kasulik kuvada ka API t\u00f6\u00f6riistade peamen\u00fc\u00fcs teade, et kasutaja peaks seadete sisestamiseks kl\u00f5psama seadete lehele.<\/p>\n<p>Kuid see ei kuulu selle postituse ulatusse. Praegu on siin viis, kuidas hallata men\u00fc\u00fc serveripoolset j\u00e4rjestamist. K\u00f5igepealt <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/f4a31feab1a5601496afa644f21e2956#file-00-reorder-submenu-items-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">kood<\/a><\/strong> ja seej\u00e4rel selgitus.<\/p>\n<pre><code>&lt;?php\nadd_action('custom_menu_order', __NAMESPACE__.'acmeReorderSubmenuItems);\n\/**\n * Reorders the menu by placing the second item before the first item.\n *\/\nfunction acmeReorderSubmenuItems()\n{\n    global $submenu;\n    $newSubmenu = [];\n    foreach ($submenu as $menuName =&gt; $menuItems) {\n        if ('acme-api-tools' === $menuName) {\n            $newSubmenu[0] = $menuItems[1];\n            $newSubmenu[1] = $menuItems[0];\n            $submenu['acme-api-tools'] = $newSubmenu;\n            break;\n        }\n    }\n}<\/code><\/pre>\n<p>\u00dcldiselt kasutan seda nimeruumiga objekti kontekstis, kuid selle postituse jaoks annan selle funktsioonile, mis eksisteerib nimeruumis.<\/p>\n<\/p>\n<p>M\u00f5ned asjad, mida t\u00e4hele panna.<\/p>\n<ul>\n<li>Kasutan konksu <a href=\"https:\/\/codex.wordpress.org\/Plugin_API\/Filter_Reference\/custom_menu_order\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">custom_menu_order<\/a>, mis on ideaalne koht WordPressi men\u00fc\u00fc\u00fcksuste kallal t\u00f6\u00f6tamiseks,<\/li>\n<li>Otsin konkreetselt alammen\u00fc\u00fcd acme-api-tools alammen\u00fc\u00fc <strong>massiivimuutuja<\/strong> $ <strong>menuName<\/strong> v\u00f5tmest ,<\/li>\n<li>Loon massiivi <strong>$newSubmenu<\/strong> ja seej\u00e4rel vahetan \u00fcksused ja m\u00e4\u00e4ran uue alammen\u00fc\u00fc olemasolevale v\u00f5tmega tuvastatud alammen\u00fc\u00fcle.<\/li>\n<\/ul>\n<p>Selle l\u00e4henemisviisiga seoses on m\u00f5ned kommentaarid \u2013 v\u00f5ib-olla isegi probleemid (v\u00f5i v\u00e4hemalt t\u00f5sised kaalutlused).<\/p>\n<p>Nimelt eeldab kood t\u00e4pselt teada v\u00f5tit, millega me t\u00f6\u00f6tame. M\u00f5nel juhul on see hea, kuid kui soovite muuta men\u00fc\u00fcd, mille v\u00f5tit te ei tea (nt <strong>acme-api-tools<\/strong> ), peate seda muutma.<\/p>\n<p>J\u00e4rgmiseks eeldab see ka, et vahetamiseks on ainult kaks men\u00fc\u00fc\u00fcksust. \u00dclaltoodud juhul on see piisavalt lihtne, kuid kui neid oleks rohkem, vajate t\u00f5en\u00e4oliselt funktsiooni asjade teisaldamiseks ja uue massiivi tagastamiseks.<\/p>\n<h2>Alustamiseks piisab<\/h2>\n<p>Sellegipoolest peaks \u00fclaltoodud funktsioon andma piisavalt teavet v\u00e4hemalt selle kohta, kuidas seda teha, kui mitte rohkem, ja kuidas seej\u00e4rel n\u00e4htava alammen\u00fc\u00fc massiivi manipuleerida<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress loob \u00fclataseme men\u00fc\u00fc ja seej\u00e4rel \u00fclataseme men\u00fc\u00fc alla alammen\u00fc\u00fc \u00fcksuse, mis lingib samale lehele. V\u00f5ib-olla soovite seda muuta.<\/p>\n","protected":false},"author":1,"featured_media":236238,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[894,842,802,863],"tags":[1165],"class_list":["post-230421","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kood","category-opetused","category-php-4","category-wordpress-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/230421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=230421"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/230421\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/236238"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=230421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=230421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=230421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}