Description - краткое описание того, о чем написано на странице. Если у Вас там запись о пользе правильного питания, то в описании, должно быть кратко об этом написано.
Keywords - ключевые слова, которые характеризуют содержание страницы. В WordPress так же есть метки, это по сути то же самое. Метки, теги или ключевые слова - тоже важны, как и описание. благодаря ключевым словам - поисковикам легче определить что на страницах.
Так сложилось, что у WordPress по умолчанию нет таких мета-тегов как Description и Keywords. На официальном сайте WordPress заявлено, что система не может знать о чем Ваш сайт и как его правильно охарактеризовать, поэтому возможность добавления ключевых слов и описания есть, но она остается за вебмастером. Сами же разработчики считают, что эти мета-теги не несет важности, поэтому выбор за Вами.
Многие вебмастера так и поступают, просто забивают на это дело и все. Другие обращаются к проверенному методу - Плагины WordPress. Самым популярным в этом плане является - All in One Seo Pack.
Преимуществами плагинов является то, что они просты в использовании, они справляются с поставленной задачей и не нужно особых знаний для их работы, но все же это плагины. То есть - это куча лишних скриптов, кода и разного рода мусора на страницах Вашего блога. К тому же если плагин супер-универсальный, то и размер у него соответствующий, в результате и нагрузка. Если это для Вас не проблема, то можете смело установить себе и наслаждаться жизнью.
Есть несколько способов, как обойтись без плагинов и добавить Description и Keywords к страницам Вашего сайта. Способов 2 и отличаются они тем, что один ручной - как и в случаи использования плагинов. То есть для каждой записи нужно вручную прописывать и ключевые слова и описание. Второй же способ полностью автоматизированный и Вашего участия не требует. И так, давайте по порядку рассмотрим каждый из них.
Description и Keywords с помощью произвольных полей
О произвольных полях прочитайте в этой статье - Произвольные поля (custom fields) в WordPress
Для Вывода Description и Keywords, Вам нужно в шапке - header.php, добавить код, который на странице записи и на просто страницах будет выводит то, что будет указано в произвольных полях, а на остальных, будет выводить теги по умолчанию
<?php if (is_single() || (is_page())){ ?> <meta name="description" content="<?php echo get_post_meta($post->ID, 'description', true); ?>" /> <meta name="keywords" content="<?php echo get_post_meta($post->ID, 'keywords', true); ?>" /> <?php } else { ?> <meta name="description" content="Описание для главной" /> <meta name="keywords" content="Ключевые слова для главной" /> <?php } ?>
Далее как описано в статье о полях, задаете полям имена description и keywords, а потом вводите нужное описание. Вся фишка в том, что это нужно делать к каждой отдельной записи. То есть данный способ будет немного тяжеловат для тех, у кого уже много записей на блоге. Потому как нужно будет для каждой записи ввести нужное, а это может занять очень много времени. Кстати, та же ситуация и с плагинами. Там тоже нужно вводить для каждой записи отдельно. Если сайт новый, то в принципе это не трудно, но вот если уже много записей, то...
Автоматический вывод Description и Keywords
Преимущество способа в том, что описание будет браться из начала Вашей статьи, а ключевые слова из меток к записи. Правда и тут один момент, у Вас должны быть добавлены метки. Очень многие их добавляют к своим записям и не игнорируют, поэтому если и Вы совестно это делали, то проблем не будет. Если же это не делалось, то автоматического вывода Keywords не будет.
И так, если у Вас все гуд, то приступим к выполнению задуманного.
Автоматический вывод Description
Для этого нужно в шапке добавить следующий код, который организует вывод описания - description, из первых слов Вашей статьи.
<?php if (is_single() || (is_page())) { if (have_posts()) : while (have_posts()) : the_post(); $strDescr = wp_trim_words(get_the_content(), 30, ''); $strDescr = preg_split("/[?!] /", $strDescr); echo '<meta name="description" content="'.$strDescr[0].$strDescr[1].$strDescr[2].$strDescr[3].'" >'; endwhile; endif; } else { echo '<meta name="description" content="Сюда нужно написать описание, которое будет выводится по умолчанию." >'; } ?>
В 1 строке, задается условие, что автоматический вывод будет производится только на страницах записей и на просто страницах.
В 3 строке есть число - 30. Это количество слов, которое будет выводится в виде описания. Можете изменить на свое в зависимости от требований.
В 4 строке между двойными кавычками указаны символы, которые будут игнорироваться, чтобы не повлечь ошибку в коде. В случаи необходимости, можете добавить свои знаки.
В 8 строке, Вам надо прописать описание своего сайта, которое будет выводится на страницах, кроме указанных в первой строке.
Автоматический вывод Keywords
Как и упомянул выше, авто вывод будет работать, если к записям добавлялись метки, если же нет, то Вам придется потрудится немного, а в будущем при написании статьи соблюдать это правило.
Сразу после вывода Description, добавляем следующий код, который выведет Keywords:
<meta name="keywords" content="<?php if ( is_single()) { foreach(get_the_tags($page->ID) as $metki) : echo ''. $metki->name .', '; endforeach; } else { echo 'дизайн, сайт, дешево, создать, купить, сделать'; } ?>" >
Как видите, тут по-проще. Код использует метки и если они есть, то выводит их на страницах записи, на остальных же выводятся ключевые слова по умолчанию. Для этого нужно в 7 строке указать метки по-умолчанию.
Как по мне, автоматический вывод имеет больше плюсов и легче. Если начать его использовать сразу с нового сайта, то можно правильно писать статьи и стараться вначале текста указать ключевую тематику, которая и выведется как - Description. То же и с ключевыми словами, указывая их к каждой записи, они будут автоматически выводится.
Данным способом пользуюсь и я на своем сайте и вижу от этого только плюсы. Делать ли это Вам, решать тоже Вам. Я надеюсь моя статья поможет Вам в этом.
На этом все, спасибо за внимание. 🙂