Главная - Темы WordPress - Продолжаем изучать файлы шаблона WordPress
Мой сервер для вашего сайта

Продолжаем изучать файлы шаблона WordPress

Это статья 9 из 18 в серии статей Изучаем файлы шаблона

Всем доброго времени суток и с Новым Годом!

Надеюсь, что вы все отлично провели праздничные дни и неплохо отдохнули. Кто-то дома на диване, кто-то — в веселой компании. Кто-то — за компьютером.

Сегодня я продолжаю серию статей, посвященную изучению стандартных файлов шаблона WordPress. В качестве примера я взял шаблон o2, автор — eches, сайт — blog.eches.net.

Сейчас зашел в блог автора, действительно, лежит там такой шаблончик. Сделал он его еще в ноябре 2007 г. Но работает замечательно и на третьей версии WordPress. Пока я глюков не заметил.

Кто не читал первый девять статей — советую начать сначала. А для остальных — продолжаю.

Итак, я рассмотрел следующие файлы шаблона:

  • header.php
  • index.php
  • footer.php
  • sidebar.php
  • sidebar-top.php
  • lsidebar.php
  • rsidebar.php

Напомню, что эти файлы — основные. Они практически формируют главную страницу сайта.

Но у каждого WordPress — шаблона есть еще несколько разного рода страниц. Например, страница просмотра отдельной записи, страница поиска, страница просмотра архивных записей, страница ошибки 404. С помощью каких файлов эти страницы выводятся?

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

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

Мне просто захотелось вам помочь лучше понимать файлы вашего WordPress — шаблона.

Остальные файлы, которые я еще не рассмотрел, предлагаю изучать теперь в порядке английского алфавита, так, как вы их видите в папке.

Первый — это файл 404.php. Не открывая, сразу скажу, что задача этого файла — вывести на экран страницу ошибки 404. Эта ошибка случается тогда, когда посетитель попытался зайти на несуществующую страницу вашего сайта. Как это происходит, откуда берется несуществующая страница? Например, вы решили сменить у  себя на сайте  настройки постоянных ссылок. Было так: https://www.мой_сайт.ru/?p=123, а вы поменяли на — https://www.мой_сайт.ru/archives/123.

Яндекс или Гугл успели проиндексировать ваши страницы в первом варианте, а второй вариант для них не существует. Поэтому посетитель, переходя с поисковика к вам на сайт, попадет на странцу ошибки 404. И от того, как эта страница написана автором, зависят дальнейшие шаги посетителя.

Если он увидит пустое место и текст: «К сожалению, вы попали на пустую страницу.» Он скорее всего, просто уйдет с вашего сайта. Если автор написал примерно так: «Извините, вы попали на страницу, которая скорее всего не существует или перемещена по новому адресу, потому что сменил постоянные ссылки. Советую воспользоваться поиском на сайте, или посмотреть страницу Архив, или посмотреть меню навигации. Возможно, это вам поможет найти то,что вы ищите.» Есть вариант, что посетительвоспользуется одним из вариантом и попытается найти то, ради чего он сюда пришел.

А теперь давайте откроем файл 404.php и посмотрим, что написал здесь автор шаблона:

<?php get_header(); ?>
<div id="container">
<h2>Ooops: 404 page</h2><br />
The page you are looking for cannot be found. Please <b>contact</b> the author so that he can fix the problem.
In the meantime you might want to browse through this blog via
<b><a href="<?php bloginfo(‘url’); ?>">main page</a></b> to find latest posts. <br /><br />
Sorry for the inconvenience.
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Как видите, примерно так он и поступил. В вольном переводе фраза звучит примерно так:

Упс… Вы попали на страницу 404.

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

Чтобы увидеть эту страницу в работе, вы можете в адресной строке браузера, где сейчас открыта главная страница с этим шаблоном, написать некорректную ссылку, например: https://localhost/wp301/?p=555 (я набрал несуществующий id 555), и вы увидите эту страницу в  работе:

Вы можете заменить английский текст своим, взяв в качестве примера то, что я писал выше.

Следующий файл по списку — comments.php. Чаще всего, в нем больше всего кода, если говорить о стандартных шаблонах WordPress.

Я сейчас начну его описание, а также покажу вам те куски кода, которые необходимо перевести на русский.

<?php // Do not delete these lines if (‘comments.php’ == basename($_SERVER[‘SCRIPT_FILENAME’])) die (‘Please do not load this page directly. Thanks!’); if (!empty($post->post_password)) { // if there’s a password if ($_COOKIE[‘wp-postpass_’ . COOKIEHASH] != $post->post_password) { // and it doesn’t match the cookie ?> <p class="nocomments">This post is password protected. Enter the password to view comments.<p> <?php return; } } /* This variable is for alternating comment background */ $oddcomment = ‘odd’; ?>

Сразу скажу, что абсолютное большинство файлов comments.php очень похожи один на другой. Из личного опыта. Поэтому наверняка код вашего файла очень похож на этот.

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

Здесь перевести надо коротких два предложения: This post is password protected. Enter the password to view comments.

Следущая функция — счетчик пингов и трекбеков:

<?php /* Count the totals */ $numPingBacks = 0; $numComments = 0; /* Loop through comments to count these totals */ foreach ($comments as $comment) { if (get_comment_type() != "comment") { $numPingBacks++; } else { $numComments++; } } ?>

Здесь ничего переводить не надо.

Далее:

<?php /* This is a loop for printing comments */ if ($numComments != 0) : ?>
<h2 id="comments"> <br /> <?php comments_number(‘No Responses’, ‘One Response’, ‘% Responses’ );?> to “<?php the_title(); ?>”</h2>
<ol class="commentlist"> <?php foreach ($comments as $comment) : ?> <?php if (get_comment_type()=="comment") : ?>

Здесь функция определяет количество комментариев и выводит вам сообщение. Перевести надо те слова,которые находятся в круглых скобках (строка 05).

На сегодня все. Продолжение скоро будет.

Навигация по серии статейИзучаем файлы шаблона: правый сайдбарФайлы шаблона WordPress: комментарии

О Олег

Я более шести лет профессионально занимаюсь сайтами на CMS WordPress: перевод на русский тем и плагинов; разработка уникальных тем под заказ; сопровождение сайтов, защита и безопасность, продвижение в поисковых системах. У меня несколько своих проектов, в которых я пишу только о WordPress, продаю свои авторские работы, пишу платные и бесплатные видео-уроки. В свободное время люблю ездить на рыбалку. И еще - хочу завести собаку.

6 комментарии

  1. Для серве.ра типа Apache долже.н быть файл у папки со страницами сайта и названием
    «.htaccess» и содержанием файла хотя бы:

    ErrorDocument 404 /?error=404

  2. Если тупо перевести «one response» «responses» на русский, то будет «один ответ на»,»два ответа на» .. «9 ответа на», «15 ответа на»..
    Тут как-то склонять нужно, а не тупо переводить.

    • Выражаясь вашим языком, могу ответить:
      Можно тупо перевести как «отклик» и это тоже будет правильно: 1 отклик, 2 отклика и т.д. Если вам не нравится бесплатный перевод шаблона — возьмите и тупо переведите его как вам нравиться.
      Давай, до свиданья.

  3. Анжела

    Замечательные уроки! Все понятно и доступно. Теперь хоть знаешь что к чему, и не так страшно на все эти коды смотреть 🙂

Оставить комментарий

Ваш email нигде не будет показанОбязательные для заполнения поля помечены *

*