мая 20, 2010 | by Макс | В продолжении предыдущей статьи про условные операторы WordPress и выводе текста только на главной, мы рассмтрим еще один способ того, как закрепить статический текст на главной странице блога на WordPress. В результате поисков подходящего способа, было найдено несколько решений. При поисковой оптимизации главной страницы блога на WordPress по целевым запросам возникает проблема, связанная с тем, что старые посты постепенно заменяются новыми, исчезая с главной страницы. Т. е. практически невозможно постоянно поддерживать необходимую плотность ключевых слов на главной странице блога без специальных ухищрений. Вот реальный пример. На моем сайте по продаже мини игр, сделанном на базе WordPress, описание каждой игры является обычным постом. Таким образом, самая последняя игра висит на главной странице сайта самой первой. Это меня вполне устраивает, но хотелось бы провести оптимизацию главной страницы по таким высокочастотным запросам, как, например, “мини игры”. Для этого надо повесить статический текст, рассказывающий о мини играх: “мини игры – это небольшие игры в которые играют … На нашем сайте можно скачать лучшие мини игры. И т. д и т. п.”
Статическая главная страница
Этот способ плох для поисковой оптимизации, т. к. главная страница содержит мертвый неменяющийся контент, к которому ПС относятся плохо. Но тем не менее, способ существует и я должен его упомянуть. Большинство читателей, знакомых с WordPress, конечно, догадались, что речь идет о том, чтобы сделать страницу (page) WordPress главной. Ничего сложного тут нет: все делается в админке, не надо никаких плагинов.
Закрепленный пост
Многие знают о плагине WP-Sticky, который позволяет придать любому посту свойства последнего, т. е. закрепить его навверху главной странцы. В некоторых случаях это может оказаться подходящим решением, но в моем случае были недостатки. Дело в том, что закрепленный пост обладает всеми свойствам обычного поста, созданного последним. В частности, участвует в поиске и содержится в виджете “Последние посты”. Естественно, меня не устраивало, что в списке последних игр будет постоянно висеть что-то типа “мини игры”.
Включение текста в шаблон
Поискав альтернативные решения, я понял, что без правки шаблона не обойтись, и нашел несколько однотипных решений: редактируем шаблон главной страницы (файл home. php или index. php) и вставляем перед началом вывода постов (перед строкой ) код, который отобразит требуемый текст. Единственная возникающая сложность – сделать так, чтобы текст выводился только на главной странице и не выводился на страницах вида “www. site. ru/page/2/“, “www. site. ru/page/3/” и т. д. Функция is_home() здесь не поможет, но можно с успехом использовать глобальную переменную $paged, принимающую номер страницы или пустую строку в случае главной страницы (в случае если текст нужен только на главной странице то правильнее использовать “1″). Код принимает вид: global $paged; if(is_home() && $paged == “1″) : ?> Вывод текста Вообщем-то, этого вполне достаточно: требуемый текст можно вписать прямо в шаблон. Но это не очень удобно, если нам захочется в будущем отредактировать этот текст – придется снова редактировать шаблон. Лично я остановился на варианте выводить содержимое определенной страницы WordPress. В случае необходимости текст можно в любой момент отредактировать, используя возможности самого WordPress. Вот получившийся код: global $paged; if(is_home() && $paged == “1″) : ?> $my_query = new WP_Query(‘pagename=mini-game’); // тут надо указать название требуемой page while ($my_query->have_posts()) : $my_query->the_post(); ?> Чтобы исключить страницу из меню, добавьте в вызов wp_list_pages (формирующий ссылки на страницы) параметр exclude с id страницы. Возможно, кому-то больше понравятся другие варианты: вывести текст из файла (@readfile(’/path/file. html’);) или добавить еще один “сайдбар” с текстовым виджетом.
h++p://developerguru. net/post/static-text-on-wordpress-main-page/ Теги: WordPress