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> - пункт меню завернут в тег &lt;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 &lt;div class=plus>
43 {$cms['menu.mod.php']['item_link']['link']}
44 &lt;div class=icon>&lt;/div>
45 &lt;/div>";
46 }
47 }</code></pre>
48
49 <p>При этом учитывайте что имя функции должно быть уникальным.</p>
50
51 </main>
52 <script src=/man/js/prism.js></script>
53 </body>
54 </html>