Структура папок wordpress. Можно ли редактировать файлы в папке wp-includes? Обновление постоянных ссылок

Файлы шаблонов это основной строительный материал вашего сайта на WordPress. Они соединяются вместе как кусочки пазла для формирования web-страниц на вашем сайте. Некоторые шаблоны, например, заголовок (header) и "подвал" (footer) обычно используются на всех web-страницах сайта, в то время как остальные могут использоваться только при некоторых условиях.

Традиционная web-страница состоит из двух файлов:

  • содержит структуру и контент страницы
  • содержит параметры внешнего вида страницы.

В WordPress присутствует структура (X)HTML и стили CSS, но контент формируется "за кулисами" различными . Файлы шаблона и таблицы стилей хранятся вместе с . Чтобы узнать больше про создание тем, прочтите статью .

Структура страницы WordPress

Простая web-страница WordPress сделана из трех основных блоков: заголовок (header), контент и подвал (footer). Каждый из этих блоков формируется на основе файла шаблона текущей темы WordPress.

Заголовок

  • Заголовок содержит всю информацию, которая должна быть наверху — т.е. внутри тега — вашей XHTML web-страницы, так же, как и теги , и ссылки на таблицы стилей. Он также включает открытый тег и видимый вашего блога (который обычно содержит название вашего сайта, а также может содержать навигационное меню, логотип, описание сайта и т.д.).
  • Блок контента содержит записи и страницы вашего блога, т.е. "основу" сайта.
  • Подвал содержит информацию, которая находится в самом низу страницы, например ссылки на остальные или категории вашего сайта в , авторские права, контактную информацию и т.п.

Основные файлы шаблона

Чтобы сформировать структуру , начните с файла шаблона index.php в папке вашей темы. У этого файла две основные функции:

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

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

Если нужно показать записи и страницы вашего блога (и настроить их внешний вид), файл index.php должен запустить между вызовами файлов заголовка и подвала.

Более сложные структуры страниц

Заголовок

Боковая панель

Множество тем WordPress используют одну или несколько , которые содержат и дополнительную информацию о вашем сайте. Боковая панель формируется с помощью файла шаблона sidebar.php . Он может быть включен в файл шаблона index.php с помощью следующей строки ():

А где все остальное?

Заметьте, что мы не включили шаблонный тег для "получения" контента нашей web-страницы. Это потому, что контент формируется в , внутри index.php .

Файлы шаблонов внутри файлов шаблонов

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

Например, sidebar.php может содержать файл шаблона, который формирует строку поиска — searchform.php . Т.к. это не один из стандартных файлов шаблона WordPress, код для включения будет немного отличаться:

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

Заголовок

Форма комментариев

Боковая панель

Форма поиска

Множество тем WordPress включают в себя различные файлы шаблона для формирования web-страниц на сайте. Ниже приведен список типичных файлов для основного шаблона (index.php) сайта на WordPress:

  • header.php
    • theloop.php (контент)
    • wp-comments.php
  • sidebar.php
    • searchform.php
  • footer.php

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

Специальные файлы шаблона

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

Иерархия шаблонов WordPress отвечает на следующий вопрос:

Какой файл шаблона будет использовать WordPress при формировании определенного типа страниц?

WordPress автоматически распознает файлы шаблона с определенными стандартными именами и использует их для определенного типа страниц. Например, когда пользователь кликает на заголовок записи блога, WordPress знает, что тот хочет увидеть именно эту статью на своей собственной странице. WordPress будет использовать файл шаблона single.php вместо index.php для формирования страницы — если в вашей теме есть файл single.php . Так же, если пользователь кликнет на ссылку для конкретной категории, WordPress будет использовать шаблон category.php , если найдет его; если нет, он будет искать archive.php , а если и этот шаблон не существует, WordPress будет использовать основной шаблон index.php . Вы можете сделать специальный шаблон для конкретной категории (см. ), или даже шаблоны .

Здесь приведены несколько советов по созданию файлов шаблонов:

Отслеживайте открывающие и закрывающие теги Файлы шаблона подразумевают использование тегов и ссылок на . Элементы HTML и ссылки на CSS могут "пересекать" файлы шаблона, т.е. начинаться в одном файле и заканчиваться в другом. Например, HTML элементы html и body обычно начинаются в header.php и заканчиваются в footer.php . Большинство тем WordPress используют HTML элементы div , которые также могут охватывать несколько файлов. Например, основной div для контента страницы может начаться в header.php и закончиться либо в index.php , либо в single.php . Отслеживание начала и конца элементов HTML может быть довольно сложным в процессе . Используйте

Здравствуйте, уважаемые читатели! Сегодня я решил затронуть очень важный вопрос алгоритма действий WP при взаимодействии с шаблонами. Это актуально, поскольку понимание нюансов работы движка с файлами, отвечающими за составные части , позволит быстро и корректно производить необходимые изменения.

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

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

Как установить тему и редактировать шаблоны WordPress

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

Однако, если вы желаете постигнуть всю суть работы с сайтом и получить дополнительные знания, то стоит попробовать загрузить и установить для начала тему с помощью какого-нибудь ФТП клиента (я, например, использую ).

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

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

  • Распакуйте архив, кликнув по нему правой кнопкой мыши и выбрав соответствующую операцию;
  • Получив доступ по FTP к файлам вашего сайта, загрузите папку, полученную после разархивирования, на хостинг в директорию (папку) themes

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

Там с правой стороны дан список всех шаблонов, входящих в состав данной темы. В дальнейшем при необходимости вы можете пользоваться этим редактором для изменения вида страниц вашего сайта. Но! Я изначально не советую применять этот инструмент, особенно новичкам, потому что в случае какой-нибудь ошибки вы с легкостью "положите" свой сайт, после чего на поиски причины можете потратить кучу времени и нервов.

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


А вот какой интерфейс для редактирования предлагает Нотпад плюс плюс:


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

И еще. Редактирование шаблонов WordPress я советую осуществлять на локальном сервере, то бишь на своем компьютере (здесь Денвер, а еще лучше, Open Server вам в помощь). Сделали все нужные изменения, протестировали, а затем уже заливаете файлы на хостинг. Эксперименты с "живым" сайтом могут дорого стоить.

Файловая структура шаблонов страниц

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

Ваш_сайт/wp-content/themes/название_вашей_темы

Для моего блога в папку с одной из установленных тем этот путь выглядит так:

Сайт/wp-content/themes/country

При просмотре в окне редактора Нотпад++ папка со всеми файлами вашей темы WordPress будет выглядеть следующим образом:

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

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

Кроме того, есть шаблоны, которые нужны для конструирования отдельных частей, отображаемых на всех страницах сайта. Это шапка, или хидер (header.php), левая и/или правая колонка, иначе сайдбар (sidebar.php), подвал, или футер (footer.php). Схематически такую конструкцию с областями страницы можно представить так:


Как видно из скриншота, если шапка, сайдбар, подвал на любой странице будут выглядеть одинаково, то будет зависеть от типа вебстраницы, который и будет определяться соответствующим файлом с расширением.php.

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

Иерархия шаблонов WordPress и последовательность вывода страниц

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

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

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

  1. Home (главный приоритет);
  2. Index.

Если конструируется отдельная статья блога, шаблоном которой по умолчанию является Single , то последовательность обращения будет такой:

  1. Single-{post_type}. Скажем, если в конкретном случае тип записи product, то WP будет обращаться к шаблону single-product.php;
  2. Single;
  3. Index.

Для статической страницы Page иерархия следующая:

  1. Custom template (пользовательский шаблон, который создан специально для конкретной вебстраницы);
  2. Page-{slug}. Здесь slug - короткое название (псевдоним) страницы. Например, если в составе темы присутствует файл с названием page-recent-news, то WP обратиться к нему;
  3. Page-{id}. Если вебстраница отождествляется по конкретному идентификатору (id) 12, то именно она будет следующей по иерархии, ежели отсутствуют указанные выше;
  4. Page;
  5. Index.

Чтобы вывести страницу рубрик, Вордпресс предпримет поиск специального файла, затем будет искать по id. Если таких шаблонов не существует, то преимущество получит общий шаблон Category , далее по убывающей Archive и Index:

  1. Category-{slug};
  2. Category-{id};
  3. Category;
  4. Archive (архив);
  5. Index.

Аналогичная картина вырисовывается и для тега (метки). В первую очередь специальный шаблон, далее на основе id, после чего Tag , Archive и Index:

  1. Tag-{slug};
  2. Tag-{id};
  3. Archive;
  4. Index.
  1. Author;
  2. Archive;
  3. Index.

Продолжаем, осталось немного. Существует возможность наличия страницы временного архива Date . В этом случае WP после неудачи будет искать Archive, после него Index:

  1. Date;
  2. Archive;
  3. Index.

На подавляющем большинстве ресурсов используется страница поиска, которая определяется шаблоном Search . В случае его отсутствия - файл основного шаблона Index:

  1. Search;
  2. Index.
  1. Index.

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

  1. Image, video, audio;
  2. Application;
  3. Attachment;
  4. Index.

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

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

Структура директорий WordPress

Файловая структура WordPress очень проста. У вас есть папка public_html , где находятся как правило три ключевые папки, а так же множество других важных файлов, включая wp-config.php и .htaccess

Чтоб получить доступ к файлам и папкам, вы можете использовать файловый менеджер cPanel от вашего хостинг-сервиса или любой обычный

Для этого обзора мы будем использовать самый популярный ftp-клиент — FileZilla. Вот как должна выглядеть папка public_html внутри:

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

# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress

Затем, есть файл , который по умолчанию представляет вашу домашнюю страницу, если, конечно, он не замещен страницами типа front-page.php или home.php :

Еще один необходимый файл в этой директории – это wp-config.php . Данный файл позволяет задать базовую конфигурацию WordPress, включая настройки для базы данных MySQL , секретные ключи, и информацию о префиксе базы данных. Вот как должны выглядеть настройки вашей базы данных:

// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define("DB_NAME", "notarealname"); /** MySQL database username */ define("DB_USER", "notarealuser"); /** MySQL database password */ define("DB_PASSWORD", "notarealpassword"); /** MySQL hostname */ define("DB_HOST", "localhost");

Другие примечательные файлы в этой директории – это wp-activate.php , и wp-signup.php , которые все вместе отвечают за регистрацию, авторизацию и процесс подтверждения пользовательской регистрации. Файл wp-comments-post.php отвечает за функцию комментирования и предотвращение дупликации контента, в то время как wp-settings.php отвечает за установку некоторых WordPress-переменных.

Как понятно из названия папки, здесь лежит инструментарий админа. Например, admin.php (сердце данной папки) позволяет вам связать инсталляцию с базой данных, отображает панель управления WordPress и предлагает прочие ключевые функции, такие как, например, проверка того, является ли данный пользователь администратором. Если пользователь является админом, то включается использование файла wp-load.php , который в свою очередь загружает файл wp-config.php :

/** * In WordPress Administration Screens * * @since 2.3.2 */ if (! defined("WP_ADMIN")) { define("WP_ADMIN", true); } if (! defined("WP_NETWORK_ADMIN")) define("WP_NETWORK_ADMIN", false); if (! defined("WP_USER_ADMIN")) define("WP_USER_ADMIN", false); if (! WP_NETWORK_ADMIN && ! WP_USER_ADMIN) { define("WP_BLOG_ADMIN", true); } if (isset($_GET["import"]) && !defined("WP_LOAD_IMPORTERS")) define("WP_LOAD_IMPORTERS", true); require_once(dirname(dirname(__FILE__)) . "/wp-load.php");

Если вы обратите внимание на названия данных файлов, то поймете, что большинство из них говорят пользователю о выполняемых ими функциях, которые вам знакомы по админке WordPress. Например, profile.php выводит экран администрирования пользовательского профиля, theme-install.php контролирует панель установки тем, а plugin-install.php делает тоже самое для панели установки плагинов.

Что касается других важных папок внутри wp-admin , то images заполнены картинками, которые используются в административной панели WordPress, css и js – это «дома» для CSS-кода и JavaScript-скриптов, а network включает PHP-файлы, необходимые для работы мультисайтовости WordPress

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

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

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

Так же, как и в случае с плагинами, каждая тема имеет собственные подпапки. Если мы откроем папку с любой темой, то увидим там множество PHP-файлов, которые все вместе создают внешний вид и структуру вашей темы. Возьмем знаменитую тему Divi от Elegant Themes в качестве примера, в главной папке которой мы найдем файлы , a functions.php , a sidebar.php , и style.css , среди остальных. Divi также имеет отдельные папки для css, картинок и js темы, что весьма стандартно для большинства качественных тем. Но, как бы то ни было, некоторые другие папки достаточно уникальны, к примеру, epanel и et-pagebuilder :

Еще одна папка – это wp-includes , и она довольно большая. wp-includes содержит все те файлы, которые не вошли в описанные ранее папки. Условно говоря, именно благодаря этой папке сайт работает как часы.

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

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

/** * Convert given date string into a different format. * * $format should be either a PHP date format string, e.g. "U" for a Unix * timestamp, or "G" for a Unix timestamp assuming that $date is GMT. * * If $translate is true then the given date and format string will * be passed to date_i18n() for translation. * * @since 0.71 * * @param string $format Format of the date to return. * @param string $date Date string to convert. * @param bool $translate Whether the return date should be translated. Default true. * @return string|int|bool Formatted date string or Unix timestamp. False if $date is empty. */ function mysql2date($format, $date, $translate = true) { if (empty($date)) return false; if ("G" == $format) return strtotime($date . " +0000"); $i = strtotime($date); if ("U" == $format) return $i; if ($translate) return date_i18n($format, $i); else return date($format, $i); }

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

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

Шпаргалка о том, как устроен сайт на Вордпресс.

Корневой каталог WordPress содержит три папки: wp-content , wp-includes и wp-admin вместе с кучей разных PHP файлов, которые требуются для основных операций WP. Наиболее значимым из этих файлов является «wp-config.php ». Изменяя этот файл, можно добавить кучу ключевых вариантов настройки WordPress, которые не доступны из консоли администратора. Также в корне сайта лежат и другие системные файлы (например, wp-settings.php , wp-config.php ) которые влияют на настройки сайта.

Рассмотрим вкратце анатомию движка ВордПресс и за что отвечают те, или иные файлы и папки.

wp-admin
Эта папка содержит различные файлы, такие как CSS, JavaScript, и PHP, которые обеспечивают функциональность консоли и административной части сайта.

wp-content
Папка wp-content содержит все загруженные пользовательские данные и разделяется на другие вложенные папки:

  • languages
  • plugins
  • themes
  • uploads

Папка «languages » содержит файлы переводов и локализации движка в формате.mo и.po. Если вы хотите , вам нужно начинать с этой папки.

Каталог «themes » содержит все загруженные темы (шаблоны).
Вы можете загрузить в эту папку много тем, но активировать сможете только одну тему (не считаем некоторые плагины, которые позволяют активировать больше). Кроме того, каталог «themes » не может быть пустым, так как для WordPress необходима по крайней мере !
По умолчанию папка «themes » уже содержит внутри две темы: Twenty Thirteen и Twenty Fourteen.

Аналогичным образом, «plugins » используется для хранения установленных плагинов на вашем сайте. В отличие от каталога «themes », этот каталог может быть пуст и WordPress будет прекрасно работать без использования каких-либо сторонних плагинов. Вы также можете активировать столько плагинов, сколько необходимо (правда, хорошая практика заключается в установке только необходимых плагинов, поскольку количество установленных плагинов влияет на скорость работы сайта).

Все картинки (и другие медиа-файлы) хранятся в каталоге «uploads », с разбивкой по годам, месяцам и/или дням. Эта папка представляет собой базу данных для всего не-текстового контента: изображения, видео, MP3, PDF-файлы, и т.д.
Сразу после установки WordPress папки «uploads » не будет, она будет создана автоматически после того, как вы начнете загружать медиа-файлы через консоль.

wp-includes
Папка «wp-includes » содержит в себе все основные и необходимые файлы для запуска WordPress через фронтэнд (пользовательский интерфейс). Папка содержит файлы PHP, CSS, JavaScript, и файлы изображений WordPress, которые обеспечивают основные функции программного обеспечения. Другими словами – это ядро движка ВордПресс.

Папки wp-admin и wp-includes являются основными папками WP, поэтому в них желательно ничего не изменять. При каждом обновлении ВордПресс происходят изменения файлов в этих папках, и ваши правки будут утеряны.

Анатомия темы

Теперь от структуры ядра WP перейдем к рассмотрению анатомии темы (шаблона)
Путь к файлам темы следующий /wp-content/themes/название-темы/ .
Основная структура папок темы может включать в себя такие папки, как:

  • /css/ – файлы стилей CSS, которые использует тема; ВАЖНО : файл style.css должен размещаться в корневой папке темы
  • /js/ – файлы JavaScript
  • /images/ – хранит встроенные в тему изображения
  • /languages/ – каталог хранит файлы переводов темы

Есть только два основных файла, которые необходимы :

  • index.php – файл, который создает блог
  • style.css – стилевое оформление блога

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

  • header.php — глобальный файл, который отображает мета-данные страницы в разделе и меню верхнего уровня.
  • sidebar.php – этот файл отвечает за генерацию боковой колонки сайта. В основном здесь выводятся: список рубрик (категорий), последние записи, теги, различные баннеры.
  • footer.php – этот файл отвечает за вывод футера, нижнего меню, копирайта и закрывает HTML-теги.
  • index.php – это шаблон главной страницы сайта. По умолчанию этот файл отображает список последних постов и подгружает информацию с sidebar.php (сайдбара).
  • single.php – отвечает за отображение отдельных постов. Файл содержит цикл, который запрашивает только один пост и формирует его вывод.
  • page.php – формирует отдельные (статические) страницы (например, «Контакты», «О нас» и т.п.)
  • archive.php – этот файл отвечает за вывод страницы архива записей
  • category.php – формирует шаблон страницы, которая выводит посты по категориями
  • tag.php – шаблон страницы, которая выводит список постов по тегам
  • comments.php – этот файл управляет выводом комментариев
  • functions.php – позволяет добавлять пользовательский код PHP и может влиять на основные элементы темы. Он добавляет функции и расширяет возможности вашего сайта. Работает как плагин WordPress.
  • style.css – основной файл CSS-стилей темы.

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

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

WordPress имеет четко предопределенную структуру каталога, в котором центральные папки – это wp-content, wp-admin и wp-includes.

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

  • Владелец – прямое владение;
  • Группа – владение через вхождение в группу;
  • Другие – отсутствие владения и группы.

Пользователи веб-сервера и их группы

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

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

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

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

Разрешения на действия с файлами WordPress

Любой ресурс в ВордПресс связан с определенным набором заданных значений, диктующих то, что пользователь может сделать с ним. Есть три действия, которые мы можем выполнить с конкретным ресурсом – читать, писать (или изменять) и исполнять. Для каждого ресурса есть возможность указать, какие из этих действий может выполнить владелец, группа и другие. Таким образом, нам нужно три бита (по одному на каждое действие) для каждой ассоциации, что в общей сложности равняется 9 бит. Поэтому, разрешение становится трехзначным числом, например, 664, в котором:

  • 6 – действия для владельца;
  • 6 – действия для группы;
  • 4 – действия для других типов.

При этом, каждое значение указанных цифр определяет все возможности, которые имеет данный тип пользователей. В случае с 664, 6 – это только чтение и запись, а 4 – только чтение.

Каталоги

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

  • Читать – просматривать содержимое каталога;
  • Писать – создавать новые и удалять существующие (при этом, права для каталога распространяются на все, что в нем содержится);
  • Выполнять – заходить в каталоги (например, воспользовавшись командой в терминале).

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

Изменение разрешений на действия в каталогах WordPress

Cpanel вашего хостинга обеспечивает интерфейс, в котором есть возможность устанавливать любой уровень доступа для хранящихся ресурсов. Чаще всего, это можно сделать простым выбором конкретного файла и нажатием «Изменить разрешения». Если вы имеете дело с терминалом, то проще будет применять специальную команду chmod. Она выглядит так: chmod 644

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

  • Поставить на все файлы 664;
  • На все папки 775;
  • wp-config.php должен быть только 600.

Вот, что получится:

  • Аккаунты смогут прочитать и изменить файлы;
  • Сам движок сможет создавать, изменять или удалять любые файлы;
  • wp-config.php будет полностью защищен от посторонних глаз.

Имейте ввиду, что вопреки стандартной конфигурации ВордПресс, какой-то конкретный сервер может быть строже, чем остальные, и не позволит выставить 600 на wp-config.php. Но вы можете указать ему более мягкое 640, а если это не сработает, то даже 644.

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

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

Заключение

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

Читайте также: