Вы ищете способ добавить раздел поддержки / документации на своем сайте? Хотите узнать самый лучший способ добавить базу знаний wiki на ваш сайт WordPress? В сегодняшней статье мы покажем вам как создать базу знаний wiki в WordPress без плагинов.
Мы пройдем этап за этапом воплощения задуманного.
Примечание: Прежде чем начать, пожалуйста, сделайте полную резервную копию вашего сайта WordPress.
Первым делом вам необходимо установить и активировать плагин Knowledgebase CPT. Этот простой плагин создает произвольный тип записи под названием knowledge_base и таксономию с именем section.
Это позволит вам легко добавлять свои wiki статьи и организовывать их в разделы.
Как только вы создадите несколько статей и разделом, вам нужно будет вывести их на своем сайте. Именно здесь и придется повозится с кодом.
Начать следует с добавления сниппета кода в файл functions.php вашей темы или в плагин для сайта WordPress:
function devise_knowledgebase() { // Получаем разделы базы знаний $kb_sections = get_terms('section','orderby=name&hide_empty=0'); // Для каждого раздела базы знаний foreach ($kb_sections as $section) : $return .= '<div class="kb_section">'; // выводим название раздела $return .= '<h4 class="kb-section-name"><a href="'. get_term_link( $section ) .'" title="'. $section->name .'" >'. $section->name .'</a></h4><ul class="kb-articles-list">'; // выводим записи в раздел $kb_args = array( 'post_type' => 'knowledge_base', 'posts_per_page'=>-1, 'tax_query' => array( array( 'taxonomy' => 'section', 'terms' => $section, ) , ), ); $the_query = new WP_Query( $kb_args ); if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); $return .= '<li class="kb-article-name">'; $return .= '<a href="'. get_permalink( $the_post->ID ) .'" rel="bookmark" title="'. get_the_title( $the_post->ID ) .'">'. get_the_title( $the_post->ID ) .'</a>'; $return .= '</li>'; endwhile; wp_reset_postdata(); else : $return .= '<p>No Articles Found</p>'; endif; $return .= '</ul></div>'; endforeach; return $return; } // Создаем шорткод add_shortcode('knowledgebase', 'devise_knowledgebase');
Этот код выводит все статьи из базы знаний в тот раздел, в котором они добавлены.
Далее, все что вам понадобится сделать, это создать новую страницу в WordPress и добавить на нее шорткод [knowledgebase]. Сохраните свою страницу и перейдите на нее.
Выглядит это всё не очень прилично на данный момент, но мы можем добавить немного стилей. Можете использовать нижеприведенный CSS в качестве стартовой точки и вносить изменения, которые будут сочетаться с общим стилем вашего сайта.
Вставьте следующий код в файл style.css вашей темы.
.kb_section { float: left; width: 280px; max-width: 280px; margin: 10px; background-color: #f5f5f5; border: 1px solid #eee; } h4.kb-section-name { background-color: #eee; margin: 0; padding: 5px; } ul.kb-section-list { list-style-type: none; list-style: none; display: inline; } li.kb-section-name { list-style-type: none; display: inline; } ul.kb-article-list { list-style-type: none; list-style: none; } li.kb-article-name { list-style-type: none; } div.kb_section:nth-of-type(3n+1) {clear:left;} div.kb_section:nth-of-type(3n+3) {}
Вот так будет выглядеть результат на стандартной теме Twenty Twelve.
По-умолчанию, ваши разделы будут отображаться в алфавитном порядке. Однако, если захочется изменить порядок сортировки разделов, то осуществить это можно будет с помощью установки плагина Custom Taxonomy Order NE. Он позволит вам перетягивать ваши разделы в нужном порядке.
Вот и все, мы надеемся, что эта статья помогла вам добавить раздел базы знаний Wiki на свой сайт WordPress. Также мы рекомендуем вам ознакомиться с нашей статьей о том, как добавить Часто Задаваемые Вопросы – раздел FAQ в WordPress.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.