Карта сайта — это его содержание или оглавление как в обыкновенной книге. Это удобный способ мгновенно перейти на любую страницу или публикацию на сайта. Рассмотрим два варианта создания карты сайта: с помощью плагина и без.

1. Создание карты сайта с помощью плагина

Существует много разных плагинов для решения этой задачи, каждый из которых обладает своими особенностями, но я остановил свой выбор на . Но в этой статье я хочу написать ещё про плагин хорошо зарекомендовавшем себя Dagon Design Sitemap Generator. Несмотря на то, что последняя его версия была выпущена аж в 2009 году, он по-прежнему не растерял своей актуальности.

Вот как выглядит карта сайта у разработчиков плагина:

Установка плагина Dagon Design Sitemap Generator:

  1. Переходим на сайт разработчика и скачиваем последнюю версию плагина .
  2. Разархивируем архив и загружаем его содержимое в папку /wp-content/plugins/ .
  3. Активируем плагин.
  4. Слева, в административной панели в разделе «Настройки» появится меню DDSitemapGen.

Переходим к настройке плагина

В Language выбираем русский язык, сохраняем и обновляем страницу. Теперь, когда настройки на русском языке, в принципе и так все стало понятно. Можно настроить отображение статей и/или страниц, сортировку записей по дате или заголовку. Есть возможность исключить отдельные категории и страницы.

Сперва все-таки давайте создадим карту сайта, а затем можно будет заняться её настройкой по своему вкусу. Делается это очень просто.

Создание карты сайта:

  1. Создаем отдельную страницу для вывода содержания нашего сайта,
  2. Называем страницу: Карта сайта, Содержание сайта, Все статьи и т.д.
  3. Переключаемся в режим HTML и добавляем следующий код

Публикуем страницу и наслаждаемся результатом! Или возвращаемся в настройки и корректируем их по своему желанию.

2. Создание карты сайта без использования плагина​

Следует учесть, что каждый дополнительный плагин заставляет страницы дольше загружаться, поэтому сейчас мы попытаемся создать оглавление нашего сайта без использования плагинов.
Если у вас уже создана карта сайта с помощью плагина, то отключаем его в административной панели.

В этой папке расположены различные файлы, такие как header.php, footer.php, style.css и другие. Теперь в этой же папке нам необходимо создать свой файл и назвать его, к примеру sitemap.php.
Это и будет файлом нашей карты сайта. Открываем файл и вставляем в него следующий php-код:


Страницы







Архивы





Статьи по категориям

cat_ID);
?>

cat_name; ?>


  • ">




Сохраняем этот файл и закрываем.

Теперь создаем новую страницу сайта в административной панели, называем её «Карта сайта» или «Все статьи». Справа в атрибутах страницы изменяем шаблон на sitemap.php как показано на скриншоте.

Сохраняем страницу. Проверьте вывод страницы с картой сайта в навигационном меню вашего сайта.
Если вы все сделали правильно, у вас получится полноценная карта сайта без использования плагинов.

Вывод​

Оба варианта довольно просты в реализации. Первый создает дополнительную нагрузку на сайт, но более удобен в последующей настройке. Во втором же случае, чтобы откорректировать карту сайта под свои нужды вам придется поближе познакомиться с синтаксисом php-кода. Об этом читайте уже в других статьях форума.

Здравствуйте уважаемые читатели. Похожие записи на сайте, как и хлебные крошки относятся к способам автоматической перелинковки страниц между собой. Выглядят они обычно в виде вертикального или горизонтального блока (См. рисунок ниже), в котором расположены несколько постов, выбранные из базы по некоторым критериям. Блок может быть реализован как при помощи плагинов, так и вставкой кода PHP в файл functions.php . Сегодня я хотел бы показать Вам второй способ, т.е. использование чистого кода без применения плагинов.

Код PHP

Как правило, выборка похожих записей в WordPress происходит по рубрикам (категориям). Ниже будет представлена функция, которую нужно вставить в файл functions.php . Функция снабжена подробными комментариями.

Function related_posts() { global $post; $titleRelated = "Читайте также";//Название блока похожих записей $countPosts = 3;//количество выводимых постов // получение всех рубрик, к которым относится пост $categories = get_the_category($post->ID); if ($categories) { // формирование массива ID всех рубрик $categoryIds = array(); foreach ($categories as $category) { $categoryIds = $category->term_id; } // получение похожих записей из базы в случайном порядке $relatedPosts = new WP_Query(array("cat" => $categoryIds, "posts_per_page" => $countPosts, "post__not_in" => array($post->ID), "orderby" => "rand")); // вывод блока похожих записей if ($relatedPosts->have_posts()) { ?>

Теперь в том месте, где нужно вывести похожие записи, прописываем функцию related_posts_categories() . Например, это может быть файл single.php .

Стилизация блока

Теперь для стилизации блока постов нужно в файл style.css активной темы добавить следующий код.

Related-posts{ margin-top: 50px; } .related-posts h4{ text-transform: uppercase; font-weight:bold; } .related-posts ul{ list-style:none; padding-left: 0; overflow: hidden; } .related-posts li{ float: left; width:33.3333%; } .related-posts li .wrap-related-one-post{ padding:0 7px; } .related-posts li:first-child .wrap-related-one-post{ padding-left: 0; } .related-posts li:last-child .wrap-related-one-post{ padding-right: 0; } .related-posts li .wrap-related-one-post{ width:100%; overflow: hidden; } .related-posts a{ display: block; } .related-posts a img{ -webkit-transition: transform 0.2s ease-in-out; -moz-transition: transform 0.2s ease-in-out; -ms-transition: transform 0.2s ease-in-out; -o-transition: transform 0.2s ease-in-out; transition: transform 0.2s ease-in-out; } .related-posts a img:hover{ -webkit-transform: scale(1.1); -moz-transform: scale(1.1); -ms-transform: scale(1.1); -o-transform: scale(1.1); transform: scale(1.1); filter: grayscale(100%); }

Данный код содержит небольшие анимационные эффекты, которые по желанию можно удалить или заменить на свои.

На этом все. Всем удачи!

Одной из замечательных особенностей WordPress является система плагинов. Плагины WordPress решают практически любые задачи, которые только можно представить - начиная с расширения простого блога до мощной информационной системы и заканчивая добавлением различных инструментов и оптимизацией блога для нужд SEO. Возможности не имеют ограничений (к тому же надо еще прибавить использование различных тем).

Но использование большого количества плагинов повышает риск "зависания" вашего сайта под управлением WordPress. Есть множество плагинов, которые несовместимы друг с другом или существенно снижают скорость работы вашего сайта.

В данном уроке мы рассмотрим как работать с похожими записями в блоге без плагинов.

Почему следует отказаться от использования плагина?

Есть множество причин по которым следует предпочитать использование встроенного кода и функций WordPress плагинам.

Во-первых, вам не нужно будет полагаться на третью сторону (разработчика плагина) для сохранения функционирования вашего блога. Довольно часто популярные плагины остаются без поддержки своими разработчиками, и большое количество владельцев сайтов оказываются связанными с устаревшим и потенциально опасным чужим кодом.

Другая причина заключается в том, что вы избегаете риска использовать код плагина, который может "завесить" или замедлить работу сайта (хотя такие случае достаточно редко встречаются при использовании плагинов из официального каталога WordPress).

Данная функция разработана для использования на странице основной статьи (файл single.php ), но вы можете применять код там, где нужно в цикле WordPress. Для выбора похожих записей используются метки, которые проставляются для статей.

Миниатюры

У WordPress есть встроенная система для работы с миниатюрами, которая нам понадобится. Для ее использования нужно добавить данный код в файл functions.php вашей темы (в больинстве случаев такой код уже имеется в наличии).

Add_theme_support("post-thumbnails");

Также можно установить высоту и ширину миниатюры с помощью добавления следующей строки кода рядом с предыдущей:

Set_post_thumbnail_size(100, 50, true);

Важно: при добавлении изображения в запись, чтобы создать миниатюру, на панели загрузки изображения надо нажать кнопку "Использовать как миниатюру".

Код

Код добавляется в файл single.php :

Код the_post_thumbnail(array(150,100) устанавливает размер миниатюры, которая будет выводиться (в нашем случае 150px х 100px).

CSS

У нас используется два класса здесь: “.relatedposts ”, который используется для контейнера, и “.relatedthumb ”, который применяется к миниатюрам и ссылке, размещенным в контейнере. Предполагается, что ширина блока записи 640px. Код CSS:

Relatedposts {width: 640px; margin: 0 0 20px 0; float: left; font-size: 12px;} .relatedposts h3 {font-size: 20px; margin: 0 0 5px 0; } .relatedthumb {margin: 0 1px 0 1px; float: left; } .relatedthumb img {margin: 0 0 3px 0; padding: 0;} .relatedthumb a {color:#333; text-decoration: none; display:block; padding: 4px; width: 150px;} .relatedthumb a:hover {background-color: #ddd; color: #000;}

Выше приведенный код CSS выводит миниатюры записей шириной 150px. То есть, мы получаем 4 миниатюры на ширине записи 640px (включая поля между ними). Если нужно другое количество, то придется сделать настройки: например, если хочется разместить 5 миниатюр, то нужно установить ширину в классе .relatedthumb примерно 125px.

Важно: Ширина миниатюр, генерируемая установками медиа файлов WordPress, должна соответствовать значениям, используемым в CSS. Также нужно соответствие со значениями, установленными в коде PHP: the_post_thumbnail(array(150,100) .

Пример

Блог DigitalBattle использует описанный метод для формирования списка подобных записей:

Блок с похожими записями можно оформить как угодно. Например, очень популярен заголовок "Вам также может понравиться".

Заключение

WordPress имеет множество встроенных функций, которые во многих случаях позволяют отказаться от использования плагинов от сторонних разработчиков. Всегда следует провести поиск на предмет альтернативных решений без плагинов. Вы будете удивлены тем, как много может WordPress.

Здравствуйте, дорогие друзья. Я не буду рассказывать о том, что такое ЧПУ. Если вы это читаете, то наверняка уже в курсе. Не так давно я просматривал выдачу в поисковых системах по запросу: настройка ЧПУ в WordPress и буквально под каждой ссылкой было одно и то же. Все, без исключения рекомендовали для начала установить плагин RusToLat. И это правильно, первым делом нужно сделать транслитерацию, то есть конвертировать русские символы в латинские. Я тоже писал об этом в статье о . Но недавно пришел к выводу, что можно отказаться от этого плагина. Не совсем конечно. Хоть сам плагин и имеет всего один файл, но все же создает пункт в административной части. А он там просто не нужен, поскольку настраивать там нечего.

Поэтому настройку ЧПУ в WordPress можно сделать без плагина, ограничившись простой вставкой кода в файл functions.php. Вот этот кусок кода нужно вставить в файл. Можно вставить в самый конец, перед закрывающим?>.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 //rus-to-lat $gost = array ( "Є" => "EH" , "І" => "I" , "і" => "i" , "№" => "#" , "є" => "eh" , "А" => "A" , "Б" => "B" , "В" => "V" , "Г" => "G" , "Д" => "D" , "Е" => "E" , "Ё" => "JO" , "Ж" => "ZH" , "З" => "Z" , "И" => "I" , "Й" => "JJ" , "К" => "K" , "Л" => "L" , "М" => "M" , "Н" => "N" , "О" => "O" , "П" => "P" , "Р" => "R" , "С" => "S" , "Т" => "T" , "У" => "U" , "Ф" => "F" , "Х" => "KH" , "Ц" => "C" , "Ч" => "CH" , "Ш" => "SH" , "Щ" => "SHH" , "Ъ" => """ , "Ы" => "Y" , "Ь" => "" , "Э" => "EH" , "Ю" => "YU" , "Я" => "YA" , "а" => "a" , "б" => "b" , "в" => "v" , "г" => "g" , "д" => "d" , "е" => "e" , "ё" => "jo" , "ж" => "zh" , "з" => "z" , "и" => "i" , "й" => "jj" , "к" => "k" , "л" => "l" , "м" => "m" , "н" => "n" , "о" => "o" , "п" => "p" , "р" => "r" , "с" => "s" , "т" => "t" , "у" => "u" , "ф" => "f" , "х" => "kh" , "ц" => "c" , "ч" => "ch" , "ш" => "sh" , "щ" => "shh" , "ъ" => "" , "ы" => "y" , "ь" => "" , "э" => "eh" , "ю" => "yu" , "я" => "ya" , "«" => "" , "»" => "" , "-" => "-" ) ; $iso = array ( "Є" => "YE" , "І" => "I" , "Ѓ" => "G" , "і" => "i" , "№" => "#" , "є" => "ye" , "ѓ" => "g" , "А" => "A" , "Б" => "B" , "В" => "V" , "Г" => "G" , "Д" => "D" , "Е" => "E" , "Ё" => "YO" , "Ж" => "ZH" , "З" => "Z" , "И" => "I" , "Й" => "J" , "К" => "K" , "Л" => "L" , "М" => "M" , "Н" => "N" , "О" => "O" , "П" => "P" , "Р" => "R" , "С" => "S" , "Т" => "T" , "У" => "U" , "Ф" => "F" , "Х" => "X" , "Ц" => "C" , "Ч" => "CH" , "Ш" => "SH" , "Щ" => "SHH" , "Ъ" => """ , "Ы" => "Y" , "Ь" => "" , "Э" => "E" , "Ю" => "YU" , "Я" => "YA" , "а" => "a" , "б" => "b" , "в" => "v" , "г" => "g" , "д" => "d" , "е" => "e" , "ё" => "yo" , "ж" => "zh" , "з" => "z" , "и" => "i" , "й" => "j" , "к" => "k" , "л" => "l" , "м" => "m" , "н" => "n" , "о" => "o" , "п" => "p" , "р" => "r" , "с" => "s" , "т" => "t" , "у" => "u" , "ф" => "f" , "х" => "x" , "ц" => "c" , "ч" => "ch" , "ш" => "sh" , "щ" => "shh" , "ъ" => "" , "ы" => "y" , "ь" => "" , "э" => "e" , "ю" => "yu" , "я" => "ya" , "«" => "" , "»" => "" , "-" => "-" ) ; function sanitize_title_with_translit($title ) { global $gost , $iso ; $rtl_standard = get_option("rtl_standard" ) ; switch ($rtl_standard ) { case "off" : return $title ; case "gost" : return strtr ($title , $gost ) ; default : return strtr ($title , $iso ) ; } } add_action("sanitize_title" , "sanitize_title_with_translit" , 0 ) ;

//rus-to-lat $gost = array("Є"=>"EH","І"=>"I","і"=>"i","№"=>"#","є"=>"eh", "А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D", "Е"=>"E","Ё"=>"JO","Ж"=>"ZH", "З"=>"Z","И"=>"I","Й"=>"JJ","К"=>"K","Л"=>"L", "М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R", "С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"KH", "Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>""", "Ы"=>"Y","Ь"=>"","Э"=>"EH","Ю"=>"YU","Я"=>"YA", "а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d", "е"=>"e","ё"=>"jo","ж"=>"zh", "з"=>"z","и"=>"i","й"=>"jj","к"=>"k","л"=>"l", "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r", "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"kh", "ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"", "ы"=>"y","ь"=>"","э"=>"eh","ю"=>"yu","я"=>"ya","«"=>"","»"=>"","-"=>"-"); $iso = array("Є"=>"YE","І"=>"I","Ѓ"=>"G","і"=>"i","№"=>"#","є"=>"ye","ѓ"=>"g", "А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D", "Е"=>"E","Ё"=>"YO","Ж"=>"ZH", "З"=>"Z","И"=>"I","Й"=>"J","К"=>"K","Л"=>"L", "М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R", "С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"X", "Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>""", "Ы"=>"Y","Ь"=>"","Э"=>"E","Ю"=>"YU","Я"=>"YA", "а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d", "е"=>"e","ё"=>"yo","ж"=>"zh", "з"=>"z","и"=>"i","й"=>"j","к"=>"k","л"=>"l", "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r", "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"x", "ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"", "ы"=>"y","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya","«"=>"","»"=>"","-"=>"-"); function sanitize_title_with_translit($title) { global $gost, $iso; $rtl_standard = get_option("rtl_standard"); switch ($rtl_standard) { case "off": return $title; case "gost": return strtr($title, $gost); default: return strtr($title, $iso); } } add_action("sanitize_title", "sanitize_title_with_translit", 0);

После этого все русские символы в ссылках станут латинскими. Ну а сама настройка ЧПУ в WordPress очень проста. Идем в параметры — постоянные ссылки и устанавливаем радиокнопку Произвольно или Название записи. Вот, собственно и все. Надеюсь, что проблем у вас с этим не возникнет. По крайней мере у меня все работает отлично. Если что, пишите в комментариях о возникающих проблемах. Будем решать вместе. Кстати, есть еще бесплатный . Позволяет создать шаблон, исходя из ваших пожеланий.

Некоторые вебмастера хотели бы иметь свой сайт на WordPress без единого плагина. Тем же, кто пользуется огромным списком плагинов, должно быть не понятно, зачем это надо.

На самом деле обе группы вебмастеров правы, и обе не правы, одновременно. WordPress без плагина вполне возможен, но не полностью.

Рассмотрим же этот вопрос подробнее.

Зачем нужен WordPress без плагина

Каждый плагин на WordPress нагружает сервер. Таким образом, при каждой загрузке сайта, сервер хостинга получает определённую нагрузку, и эта нагрузка возрастает с увеличением количества плагинов. Нагрузка будет расти в геометрической прогрессии с увеличением посетителей, ведь каждый человек будет нагружать сервер.

Не вдаваясь в серверные подробности, скажем, что много плагинов замедляют работу сайта, и тем он работает медленно, чем больше плагинов, больше посетителей и слабее хостинг. Кстати, почитайте , как узнать, за какое время загружается ваш сайт.

Отсюда и возникает мысль сделать WordPress без плагинов.

Возможно ли сделать WordPress без плагинов

Большинство функций, которые воспроизводятся на сайте под WordPress, можно реализовать и без плагинов. Однако это не так-то просто, как кажется. Чтобы сделать, например, без плагина, потребуется написать нужный код, в нужное место, нужного файла. Этот код можно не сочинять, и легко найти в интернете, но ставить его в нужное место вам придётся самому. И если ошибиться, то, в лучшем случае, функция не будет работать. В худшем – работать не будет весь сайт. И тогда вам придётся восстанавливать его. Хорошо, если вы помните в какой файл и в какое его место внесли изменения. А если нет, то придётся делать это из бэкапа.

Говоря простыми словами, чтобы сделать свой WordPress без плагина, потребуются знания и опыт. А они есть не у всех. И потом, WordPress всё-таки был создан для того, что бы делать сайт на нём мог каждый, без особых знаний и опыта.

WordPress без плагинов будет не таким функциональным, и не так легко будет настроить ту или иную функцию. Так, если вы, например, попытаетесь делать слайдер без плагина, то для добавления и замены в нём картинок, вам придётся редактировать код, и делать это следует со всем вниманием и сосредоточенностью. В то время, когда плагины для слайдеров позволяют даже особо не думать при редактировании элемента сайта.

Нужен ли WordPress без плагинов

После сказано выше ответ очевиден – нет, не надо делать WordPress без плагина, по крайней мере полностью. На одной чаше весов нагрузка на сервер, на другой – долгие часы редактирования кода. Выбор очевиден. Тем более что если вы пользуетесь хорошим хостингом, нагрузки вы не ощутите.

Однако некоторые простые функции можно всё-таки попробовать реализовать без плагина на WordPress. Это позволит обрести бесценный опыт.




Close