Инструменты пользователя

Инструменты сайта


Боковая панель

Связь

dokuwiki

DokuWiki

Homepage: DokuWiki

DokuWiki «Докувики» — это MustHave Бубен совместимый со стандартами и лёгкий в использовании, предназначенная в первую очередь для создания разного рода документации. Она ориентирована на команды разработчиков, рабочие группы и небольшие компании. Все данные хранятся в простых текстовых файлах, поэтому для работы не требуется система база данных. Простой, но мощный синтаксис облегчает создание структурированных текстов и позволяет при необходимости читать файлы данных даже за пределами Wiki. robots.txt.txt для DokuWiki.

Быстрая инсталляция DokuWiki + настройки

Подробную установку смотрите на официальном сайте: Установка DokuWiki.

# wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2009-12-25c.tgz
# tar -xzvf dokuwiki-2009-12-25c.tgz
# mkdir /var/www/dokiwikiadm
# cp -Ra dokuwiki-2009-12-25/* /var/www/dokiwikiadm/
# chown -R www-data:www-data /var/www/dokiwikiadm/

Создадим виртуальный хост в Apache

# nano dokuwikiadm.conf
<VirtualHost *:80>
        ServerName dokuwikiadm.example.com
        ServerAdmin webmaster@localhost
        DirectoryIndex index.php

        DocumentRoot /var/www/dokiwikiadm
        <Directory /var/www/dokiwikiadm/>
                Options FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>
# a2ensite dokuwikiadm.conf
# /etc/init.d/apache2 reload

Открываем в браузере http://your_virtual_domen/install.php и следуем инструкции по установке. Удаляем install.php.

Настройки Вики:

  • Транслитерация в именах страниц: полная транслитерация
  • Удобочитаемые адреса (URL): ..htaccess
  • Задержку индексирования, измененной страницы, устанавливаем в 1 день, вместо 5 по умолчанию (Значение по умолчанию: 60*60*24*5 (60 сек. × 60 мин. × 24 ч. × 5 дн. — т. е. пять дней)). indexdelay:60*60*24*1 Для выключения отложенного индексирования установить её в «0».
  • sitemap:5

2 способа добавит Google Tag Manager в Dokuwiki

Чтобы не вставлять напрямую на сайт коды Яндекс Метрики и Google Analytics правильно всего использовать GTM. Регистрируем наш сайт в Google Tag Manager (https://tagmanager.google.com)

1 способ:

  1. Устанавливаем компонент https://www.dokuwiki.org/plugin:googletagmanager
  2. В меню "Настройки вики"⇒"Googletagmanager" задаем ID нашего сайта из кода выданного GTM.

После установки Google Tag Manager прекрасно работает, но на сайте появляются 2 критические ошибки Валидатор Nu Html Checker W3. Подобных ошибок, да и всех остальных, рекомендую избегать, особенно для информационных сайтов!

2 способ: Ручками добавляем код в файлы шаблона

  1. Создаем файл lib/tpl/dokuwiki/meta.html и в него добавляем основной код. Это безопасное добавление, после обновления движка, это код не затрется.
  2. lib/tpl/dokuwiki/main.php добавляем вторую часть код, после body
    </head>
    <body>
    <!-- Google Tag Manager (noscript) -->

    Здесь будьте осторожны, код может быть затерт при обновлении Dokuwiki. Наслаждайтесь работой без ошибок!!

Добавление кода Adsense в DokuWiki шаблон

Все найденные плагин для подключения Google AdSense показались мне старыми: adsense-plugin. Потому принял решение код вставить ручками в шаблон DokuWiki.

Согласно мануалу, для безопасного добавления дополнительного HTML или PHP к шаблону и чтобы при обновлении движка DokuWiki ваш код не затирался, создайте ваш файл в любом каталоге шаблонов (lib/tpl/dokuwiki/) или ваш conf/ каталоге. Файлы которые подключаются автоматически:

Название файла Позиция вашего HTML
meta.html Inside the HTML <head>, use this to add additional styles or metaheaders
sidebarheader.html В верху сайдбара, перед текстом (если существует)
sidebarfooter.html В низу сайдбара, после текста (если существует)
pageheader.html На странице статьи, выше текстового контента
pagefooter.html На странице статьи, ниже текстового контента
header.html Шапка сайта, выше logo и wiki title
footer.html Подвал сайта, после любого контента на странице

Включение рекламы AdSense на правом сайдбаре:

  1. Шаблон должен поддерживать сайдбар, DokuWiki шаблон по умолчанию его поддерживает.
  2. Включить в настройках: "Параметры «Докувики»"→Основные параметры→sidebar Значение по умолчанию:sidebar
  3. Перейдите по адресу http://your-wiki.com/doku.php?id=sidebar, нажмите кнопку «Создать страницу», отредактируйте эту страницу, сохраните, и боковая панель готова. Это всё, сохраненные изменения будут отображаться на боковой панели. Страница не должна быть пустой, я поставил только знак точки.
  4. В lib/tpl/dokuwiki создадим sidebarheader.html в который добавим код AdSense

Наслаждаемся рекламой на своем сайте!:))

Как добавить кода Adsense в DokuWiki после H1?

Для добавления кода Adsense после первого H1, нужно отредактировать функцию header в файле <dokuwiki installation directory>/inc/parser/xhtml.php.

Находим строку

$this->doc .= "</h$level>".DOKU_LF;

и заменяем ее на код

        $this->doc .= "</h$level>";
        if ($level == 1) {
            $this->doc .= '
<!--noindex-->
 
КОД из AdSense
 
<!--/noindex-->
<br />';
        }
 
        $this->doc .= DOKU_LF;

Инсталляция Dokuwiki в Microsoft Azure Web App

Инсталляция Dokuwiki в Microsoft Azure Web App. Нужно создать файл web.config для http сервера IIS, который защитит наши рабочие директории от несанкционированного доступа.

web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
   <system.webServer>
      <security>
         <requestFiltering>
            <hiddenSegments>
               <add segment="conf" />
               <add segment="data" />
               <add segment="inc" />
            </hiddenSegments>
         </requestFiltering>
      </security>
   </system.webServer>
</configuration>

В листинг не добавлена директория “bin”, потому что к папке с таким названием доступ в IIS закрыт по умолчанию.

Плагины DokuWiki

<box> the box contents </box> <box 80% round red|a title> the box contents </box>

4 SEO плагина для DokuWiki

  • HtmlMetaTags Plugin SEO плагин, позволяет задавать open graph, description и т.д.

Для использования вписываем в страницу в таком виде

{{htmlmetatags>metatag-robots=() 
metatag-keywords=(apfel,bananne,birne) 
metatag-description=(Allgemeiner Obstbauer)
metatag-media-og:image=(:wiki:image.jpg)
metatag-og:description=(anything else)
metatag-og:any=(anything else 2)
}}

Результат

<meta name="robots" content="noindex,nofollow"/>
<meta name="keywords" content="apfel,bananne,birne"/>
<meta name="description" content="Allgemeiner Obstbauer"/>
<meta property="og:image" content="http://localhost/lib/exe/fetch.php?media=wiki:image.jpg"/>
<meta property="og:description" content="anything else"/>
<meta property="og:any" content="anything else 2"/>

Карта сайта DokuWiki sitemap

Карта сайта (Sitemaps) создаётся, если включена опция «sitemap». Файл карты находится во вложенном каталоге «cache» вашей установки «ДокуВики». Он будет доступен по ссылке: http://your_domain/dokuwiki/?do=sitemap. В зависимости от наличия поддержки gzip в вашем PHP, файл будет именоваться «sitemap.xml.gz» (если gzip доступен) или «sitemap.xml» (если gzip недоступен). Почти во всех современных установках PHP поддержка gzip включена, поэтому файл будет называться скорее всего «sitemap.xml.gz».

Карта сайта будет содержать только ссылки на страницы, которые доступны без авторизации на сайте.

DokuWiki print.css вывод на печать

Если возникла надобность при выводе на принтер удалить какие-то объекты или изменить шрифт, можно дополнить/изменит файл lib/tpl/dokuwiki/css/print.css. Это изменит тип media CSS. Например, скроем при печати :

print.css
#footer2d,
#dokuwiki__header,
#dokuwiki__footer {
    display: none;
}

DokuWiki загрузка своего javascript кода

Подробно: Загрузка JavaScript

  • Для внешней ссылки удалить атрибут rel="nofollow", чтобы разрешить поисковым системам следовать по ней (передача веса). Создадим файл conf/userscript.js Он автоматически загрузится
function doFollow1(){
 jQuery("a[href^='https://example.com']").removeAttr("rel");
}
 
jQuery(function () {
    jQuery(document).click(doFollow1);
});

Dokuwiki sitemap.xml и настройка Яндекс

Мой настройки для Яндекс Вебмастера, чтобы он корректно увидел sitemap.xml. Добавляем директивы Host и Sitemap в файл robots.txt.

robotx.txt
User-agent: *
Disallow: /bin/
Disallow: /conf/
Disallow: /inc/
Disallow: /lib/
Disallow: /vendor/
Host: wiki.dieg.info
Sitemap: http://wiki.dieg.info/sitemap.xml.gz

В файл .htaccess добавляем строку

# sitemap for Yandex
RewriteRule ^sitemap\.xml\.gz$        doku.php?do=sitemap [L]
Так же sitemap.xml.gz можно добавить в Google Search Console, у меня до этих изменений Google видел его в виде /?do=sitemap

DokuWiki заменить значок неупорядоченного списка ul

1 вариант:

  1. Подготавливаем картинку 16х16 пикселей.
  2. Заливаем её lib/tpl/dokuwiki/images/tambourine_16x16.png
  3. В файле lib/tpl/dokuwiki/css/basic.less исправить определение
    ul { list-style: square outside; }

    на

    ul { list-style-image: url('images/tambourine_16x16.png'); } /* your image */

В оглавлении страницы заменить файл /lib/tpl/dokuwiki/images/toc-bullet.png

2 вариант: В файле lib/tpl/dokuwiki/css/_links.css добавляем css код list-style: lower-greek;:

.dokuwiki .page ul li, .dokuwiki .aside ul li {
        /*list-style: hangul-consonant;*/
        list-style: lower-greek;
}

Ссылки




dokuwiki.txt · Последние изменения: 2017/09/16 10:58 — darkfire