Mercurial
comparison .cms/man/ru_RU.UTF-8/menu.html @ 0:78edf6b517a0 draft
24.10
author | Coffee CMS <info@coffee-cms.ru> |
---|---|
date | Fri, 11 Oct 2024 22:40:23 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:78edf6b517a0 |
---|---|
1 <!doctype html> | |
2 <html lang="ru"> | |
3 | |
4 <head> | |
5 <meta charset="utf-8"> | |
6 <title>Заготовки для шаблона</title> | |
7 <meta name="viewport" content="width=device-width, initial-scale=1.0"/> | |
8 <link rel="stylesheet" href="/man/css/prism.css"> | |
9 <link rel="stylesheet" href="/man/css/styles.css"> | |
10 </head> | |
11 | |
12 <body> | |
13 <main> | |
14 | |
15 <h2>Хуки</h2> | |
16 | |
17 <p><code>menu_item_link</code> - замена пункта меню на момент когда сформирована ссылка.</p> | |
18 <p><code>menu_item</code> - пункт меню завернут в тег <li> со ссылкой и подпунктами.</p> | |
19 | |
20 <h2>Хук menu_item_link</h2> | |
21 | |
22 <p>Модуль Меню позволяет изменить разметку пунктов меню благодаря хуку menu_item_link. | |
23 Он происходит после формирования ссылки. В переменную $cms помещаются данные.</p> | |
24 | |
25 <pre class="language-php"><code>$cms["menu.mod.php"]["item_link"] = array( | |
26 "link" => $link, | |
27 "has_submenu" => $has_submenu, | |
28 ); | |
29 do_hook( "menu_item_link" );</code></pre> | |
30 | |
31 <p>Создайте внутри вашего шаблона файл с именем tpl.mod.php с нижеприведенным содержимым. | |
32 По сути это модуль к CMS внутри вашего шаблона. | |
33 </p> | |
34 | |
35 <pre class="language-php"><code>hook_add_fn( "menu_item_link", "tpl_menu_item_link" ); | |
36 | |
37 function tpl_menu_item_link() { | |
38 global $cms; | |
39 | |
40 if ( $cms["menu.mod.php"]["item_link"]["has_submenu"] ) { | |
41 $cms["menu.mod.php"]["item_link"]["link"] = " | |
42 <div class=plus> | |
43 {$cms['menu.mod.php']['item_link']['link']} | |
44 <div class=icon></div> | |
45 </div>"; | |
46 } | |
47 }</code></pre> | |
48 | |
49 <p>При этом учитывайте что имя функции должно быть уникальным.</p> | |
50 | |
51 </main> | |
52 <script src=/man/js/prism.js></script> | |
53 </body> | |
54 </html> |