1# Mikio DokuWiki Template 2 3## About 4 5`Mikio` is a Bootstrap 4 style template for [DokuWiki](http://dokuwiki.org) 6 7 8## Features 9 10 11 * [bootstrap styling](http://getbootstrap.com/) 12 * Navbar with dropdown support 13 * Subnavbar support (using a page named submenu) 14 * Right sidebar 15 * Hero element 16 * Icon support 17 * Customizable breadcrumbs 18 * Subtheming support 19 * Tags plugin support 20 * Mobile friendly 21 22 23## Changes 24 25 * 2020-09-27 will now collapse sidebars on mobile by default. This can be overridden in the options 26 27## Configuration 28 29The configuration can be change with the [Configuration Manager Plugin](https://www.dokuwiki.org/plugin:config) 30 31 * `iconTag` : icon tag to use to engage the icon engine. Default to `icon` 32 * `customTheme` : the mikio subtheme to use 33 34 * `navbarUseTitleIcon` : show the site logo in the navbar 35 * `navbarUseTitleText` : show the site title in the navbar 36 * `navbarUseTaglineText` : show the site tagline in the navbar. Requires the `navbarUseTitleText` to be enabled 37 * `navbarCustomMenuText` : custom menu to use in the navbar. Menu items are in the format of url|title with each item seperated by a semicolon. Requires one of the `navbarPos` to be set to `custom` 38 39 * `navbarDWMenuType` : how to show the DokuWiki menu items in the navbar. Can be either icons, text or both 40 * `navbarDWMenuCombine` : how to show the DokuWiki menu in the navbar. Can be either category dropdowns, single items or a combined dropdown. The combined menu title is pulled from the `tools-menu` language value 41 42 * `navbarPosLeft` : what menu to show on the left of the navbar 43 * `navbarPosMiddle` : what menu to show in the middle of the navbar 44 * `navbarPosRight` : what menu to show on the right of the navbar 45 * `navbarShowSub` : show the sub navbar. This menu is pulled from the `submenu` page in the current or parent namespaces. The menu is also shown on child pages. If no page is found, the sub navbar is automatically hidden 46 47 * `searchButton` : show the search button as a icon or text 48 49 * `heroTitle` : show the hero block on pages 50 * `heroImagePropagation` : search for hero images in parent namespaces if none is found in the current namespace 51 52 * `tagsConsolidate` : Consolidate tags found in the current page and display it in the hero, content header or sidebar 53 54 * `breadcrumbHideHome` : hide breadcrumbs in the root namespace 55 * `breadcrumbPosition` : where to display the breadcrumbs, either under the navbar, in the hero element or above the page content 56 * `breadcrumbPrefix` : enable changing the breadcrumb prefix 57 * `breadcrumbPrefixText` : text to set the breadcrumb prefix. Requires `breadcrumbPrefix` to be enabled 58 * `breadcrumbSep` : enable changing the breadcrumb seperator 59 * `breadcrumbSepText` : text to set the breadcrumb seperator. Requires `breadcrumbSep` to be enabled 60 * `breadcrumbHome` : change the breadcrumb home item to none, page title of root page, 'home' or an icon/image. The 'home' text is pulled from the `home` language value 61 * `breadcrumbShowLast` : only show an amount of breadcrumbs from the last. Will also show the home item in the list if enabled. Set this to `0` to show all items 62 63 * `sidebarShowLeft` : show the left sidebar if content is found 64 * `sidebarLeftRow1` : content to show in the first row of the left sidebar 65 * `sidebarLeftRow2` : content to show in the second row of the left sidebar 66 * `sidebarLeftRow3` : content to show in the third row of the left sidebar 67 * `sidebarLeftRow4` : content to show in the forth row of the left sidebar 68 * `sidebarMobileDefaultCollapse` : collapse the sidebars by default when viewed on mobile 69 * `sidebarShowRight` : show the right sidebar if content is found 70 71 * `tocFull` : show the table of contents as a full height item 72 73 * `pageToolsFloating` : when and if to show the floating page tools 74 * `pageToolsFooter` : when and if to show page tools in the footer 75 76 * `footerCustomMenuText` : custom menu to use in the footer. Menu items are in the format of url|title with each item seperated by a semicolon 77 * `footerSearch` : show the search bar in the footer 78 79 * `licenseType` : how to show the license in the footer 80 * `licenseImageOnly` : show the license in the footer as an image only. Requires `licenseType` to at least be enabled 81 82 * `includePageUseACL` : respect ACL when including pages 83 * `includePagePropagate` : search parent namespaces when including pages 84 85 86## Include Pages 87 88The following pages can be either html files in the root of the theme or a page in the namespace. Namespace pages take priority. 89 90 * `topheader` : content to include above the navbar 91 * `header` : content include below the navbar but above the page content 92 * `contentheader` : content to include above the page content 93 * `contentfooter` : content to include below the page content 94 * `sidebarheader` : content to include above the left sidebar content 95 * `sidebarfooter` : content to include below the left sidebar content 96 * `rightsidebarheader` : content to include above the right sidebar content 97 * `rightsidebarfooter` : content to include below the right sidebar content 98 * `footer` : content to include in the footer 99 * `bottomfooter` : content to include below the footer 100 101 102## Include Images 103 104The following images can be used to replace content in the theme. Images can be in the root of the theme or in the namespace. Images can be either png, jpg, gif or svg. 105 106 * `logo` : site logo in the navbar 107 * `breadcrumb-prefix` breadcrumb prefix 108 * `breadcrumb-sep` breadcrumb seperator 109 * `hero` hero image for hero element 110 111 112## Hero Element 113 114 * `title` : The hero title is sourced from the page title. The page title is removed from the page content 115 * `subtitle` : Pages can set the subtitle by inserting `~~hero-subtitle TEXT~~` in the page content 116 * `image` : The hero image is sourced from an image named hero in the current or parental namespace. Namespace searching can be confined by the `includePagePropagate` setting. Pages can also override the image by inserting `~~hero-image URL~~` in the page content. DokuWiki and external URLs are supported 117 * `colors` : Colors can be overridden by including `~~hero-colors BACKGROUND_COLOR HERO_TITLE_COLOR HERO_SUBTITLE_COLOR BREADCRUMB_TEXT_COLOR BREADCRUMB_HOVER_COLOR~~`. You do not need to include all the color options. Use 'initial' to skip a color override 118 119Namespaces can also apply the above hero settings in child pages by including the above settings in a page named `theme`. 120 121 122## Icon Engine 123 124 * Mikio includes an icon engine that allows you to include icons in your pages by using <icon OPTIONS> in your content 125 * If the icon tag conflicts with another plugin, you can change the tag from `icon` to a user set value in the settings 126 * By default, Mikio enables FontAwesome 4 by also includes FontAwesome 5, Elusive 2 and Bootstrap Icons which can be enabled by uncommenting their inclusions in `/icons/icons.php` 127 128Users can also add their own icon sets into the theme. Supported icon sets can either be webfonts or indivial files (such as a SVG library). Instructions can be found in the `/icons/icons.php` file. 129 130 131## Subthemes 132 133Subthemes should be placed in the themes directory in its own directory. LESS files are supported. 134 135 136## Mikio Plugin 137 138The [Mikio Plugin](https://github.com/nomadjimbob/mikioplugin/) is also available to add bootstrap 4 style + more elements to DokuWiki pages. 139 140 141## Languages 142 143 * `sidebar-title` : Text for the collapsable block in the sidebar 144 * `tools-menu` : Text for the combined tools DokuWiki menu title 145 * `home` : Text for the breadcrumb home title 146 147 148## Releases 149 150 * ***2020-09-27*** 151 * Sidebars hidden by default in mobile view [#10](https://github.com/nomadjimbob/mikio/issues/10) 152 * Fixed errors with the LESS compilier on some nginx configurations 153 154 * ***2020-09-10*** 155 * Floating page tools is now a UL element with classes applied from getType and getLinkAttributes. Fixes popup dialogs initiated from the a page menu [#7](https://github.com/nomadjimbob/mikio/issues/7) 156 * Template.info.txt now shows correct release dates [#8](https://github.com/nomadjimbob/mikio/issues/8) 157 * Fixed rightsidebar php warnings 158 * Code/Pre blocks no longer have padding applied on the admin pages 159 160 * ***2020-08-26*** 161 * Footer is no longer shown outside of page view 162 * Public messages are now displayed on the page 163 * Fixed icon rendering in hero bar 164 * Fixed TOC rendering bug 165 166 * ***2020-07-27*** 167 * Added option to show wiki footer in page content 168 169 * ***2020-07-24*** 170 * Fixed image detail bug 171 172 * ***2020-07-20*** 173 * Fixed prewrap and sidebar search bar margins 174 175 * ***2020-07-16*** 176 * Merged code block styling with pre 177 * Fixed mediamanager failures on 2018-04-22a "Greebo" [#5](https://github.com/nomadjimbob/mikio/issues/5) 178 * Icon tag is rendered correctly in preview [#4](https://github.com/nomadjimbob/mikio/issues/4) 179 180 * ***2020-07-15*** 181 * Fixed an issue with the simple_html_dom library when editing a section of a page caused page corruption [#3](https://github.com/nomadjimbob/mikio/issues/3) 182 183 * ***2020-07-14*** 184 * Added id=dokuwiki__content identifier for the page content element 185 * Added styling and fixed overflow issues with pre elements 186 * Fixed page width overflow issues 187 188 * ***2020-07-09*** 189 * Fixed cosmetic display issues when `input[type=file]` is hidden by plugins [#2](https://github.com/nomadjimbob/mikio/issues/2) 190 191 * ***2020-07-07*** 192 * Initial release 193 194 195## Third Party Libraries 196 197This theme uses a [modified version](https://github.com/nomadjimbob/simple_html_dom) of [simple_html_dom](https://sourceforge.net/projects/simplehtmldom/) 198 199## Support 200 201 * If you think you have found a problem, or would like to see a feature, please [open an issue](https://github.com/nomadjimbob/mikio/issues) 202 * If you are a coder, feel free to create a pull request, but please be detailed about your changes! 203