Куда wordpress сохраняет файлы
WordPress состоит из 3 папок wp-includes , wp-admin , wp-content и из нескольких файлов рядом с этими папками.
Все файлы и папки, кроме wp-content — это и есть WordPress, движок. Т.е. каталоги: wp-includes и wp-admin — это ядро WordPress, а wp-content — это все остальное — все пользовательские данные.
В директории wp-content хранятся практически все пользовательские файлы, кроме файла конфигурации wp-config.php (это неотъемлемая часть ядра). Здесь находятся плагины, темы, файлы плагинов, тем и содержимого сайта. Тут же принято хранить все файлы связанные с расширением возможностей WordPress.
Исходно в WordPress, wp-content содержит один файл index.php и 3 папки: plugins , themes , languages .
Файл wp-content/index.php
Всегда должен существовать и должен иметь такое содержимое:
При обновлении WordPress вручную, никогда не трогайте папку wp-content и ничего в ней. Она к обновлению WordPress никакого отношения не имеет.
Список того, что может находиться в каталоге wp-content :
- /mu-plugins — обязательные плагины
- /plugins — плагины
- /themes — темы
- /uploads — медиафайлы и загрузки
- /upgrade — автообновления
- /languages — переводы
- Произвольные директории
- Специальные файлы
- advanced-cache.php
- object-cache.php
- maintenance.php
- db-error.php
- sunrise.php
- db.php
- Переименование или перемещение папки wp-content
/upgrade — автообновления
advanced-cache.php
Вызывается на самом раннем этапе загрузки WordPress, в файле wp-settings.php , если константа WP_CACHE включена. Вот так выглядит вызов:
Этот файл используется плагинами страничного кэширования. В нем обычно проверяется наличие подходящего файла кэша и если он есть, то он выводиться на экран и работа скрипта обрывается. Это позволяет не загружать 90% файлов WordPress и отдавать статические HTML файлы.
Как зайти в корень сайта, где он находится, как найти
Чтобы зайти в корневую папку сайта, необходимо иметь:
- установленный файловый менеджер, например, FileZilla;
- учетные данные (логин, пароль, имя сервера) для FTP-доступа, которые выдаются вашим хостинг-провайдером во время регистрации ресурса.
Подключитесь к удаленному серверу, где размещен ваш интернет-ресурс. Как правило, окно файлового менеджера делится на две части. В левой половине отображается дерево папок и их содержимое (1) на локальном компьютере. Правая половина показывает, что находится в корневом каталоге сайта (2).
Чтобы наверняка убедиться в том, что вы находитесь в корне сайта, посмотрите на папки, которые он содержит. Здесь должны располагаться каталоги WordPress (3): wp-admin, wp-content, wp-includes, а также служебные php-файлы WordPress (4).
Как изменить стандартный путь к медиафайлам в WordPress
Новый загрузчик медиа файлов, появившийся в версии 3.5 — наверное одно из самых значительных изменений в той версии. Другим важным изменением, но менее обсуждаемым, было исчезновение настройки в админ.панели для изменения директории для загрузок из меню Параметры. Причиной данного удаления из интерфейса было то, что она не так часто использовалась, нежели другие опции. Также ее изменение могло привести к плачевным последствиям для сайта, если пользователь сделал это случайно. Удаление настройки упростило интерфейс, и оставили только возможность организации папок по месяцам/годам. Ниже мы расскажем, как изменить стандартный путь к медиа файлам в WordPress 3.5+.
Примечание: Производите нижеуказанные действия, если вы НЕ новичок в WordPress. Или же если вы понимаете, что делаете.
Для изменения стандартного пути к медиа файлам вам необходимо отредактировать файл wp-config.php, расположенный в корневой директории установленного у вас WordPress. Если вы хотите, чтобы папка для загрузок у вас выглядела так wp-content/files, то необходимо поместить следующий код в wp-config.php:
Помните, что вы в любой момент можете выбрать сортировку загруженных файлов по месяцам/годам в Параметры » Медиафайлы.
Источник:
Надеемся, что статья окажется для вас полезной. Если у вас остались вопросы, не стесняйтесь задавать их в комментариях.
Где хранятся страницы в WordPress
Все публикации, созданные в WordPress, хранятся не в виде отдельных файлов, а в базе данных. Когда пользователь набирает адрес интернет-ресурса в браузере, сервер активирует выполнение PHP-кода, который обращается к базе и динамически считывает данные из нее. При этом страница формируется «на лету» и заполняется считанной из базы данных информацией.
Если на сайте установлен плагин для кэширования, страницы могут загружаться из кэша сервера либо браузера при повторном посещении (т.е для каждой страницы создается периодически обновляемый html-файл), но все изменения по-прежнему вносятся через админпанель. Отображение страницы на сайте похоже на запись за исключением отсутствующей даты публикации, комментариев и кнопок социальных сетей.
Для чего может понадобиться перемещение файла в корневую папку
Зачем необходимо знать о размещении файлов и каталогов веб-ресурса, созданного на WordPress? Понимание того, где найти корневую папку вашего сайта и как копировать в нее файлы, поможет вам самостоятельно решить несколько распространенных задач:
Вы задались вопросом, где же WordPress хранит изображения на вашем сайте? Многие новички задают вопросы, как WordPress хранит изображения и что можно предпринять для эффективной организации своей библиотеки медиафайлов. В сегодняшней статье мы поясним, как WordPress сохраняет картинки на вашем сайте.
Как WordPress хранит изображения?
В WordPress есть встроенная система управления вашими медиафайлами вроде изображений, видео, музыки, документов и т.п. Эта система позволяет вам загружать, управлять, редактировать и удалять файлы из вашей библиотеки медиафайлов WordPress.
По-умолчанию, WordPress хранит все ваши изображения и медиазагрузки в папке /wp-content/uploads/ на сервере. Все загрузки организованы в папках год/месяц в зависимости от даты загрузки.
Например, все ваши медиафайлы, загруженные в июле 2016 будут сохранены в:
Эти папки вы сможете увидеть, если подключитесь к своему сайту WordPress с помощью FTP клиента.
WordPress также добавляет информацию о загрузке изображения в базу данных. Информация о загрузках хранится в БД в виде определенного типа записи — вложения (attachment) в таблице posts.
WordPress также сохраняет информацию в таблице posts meta, когда вы вставляете изображения в запись/на страницу или любой другой произвольный тип записи.
Когда вы задаете миниатюру записи, WordPress добавляет эту информацию в виде мета ключа _thumbnail_id и сохраняет в таблице postmeta базы данных.
Удаление ваших файлов с сервера через FTP клиент уберет их с хостинга, но не уберет из базы данных WordPress. Эти картинки будут продолжать отображаться на вашем сайте в виде битых изображений.
Также, если вы удалите отсылки на ваши изображения и медиафайлы из базы данных, то WordPress перестанет отображать их в Библиотеке медиафайлов. Даже если если ваши картинки останутся лежать на сервере.
Изменяем способ хранения изображений в WordPress
По-умолчанию, WordPress не позволяет вам изменять местоположение для загрузок из административной панели. Единственное изменение, которое вы можете сделать, это отключить сортировку загрузок по месяцу и году, на странице Настройки » Медиафайлы.
Просто снимите галочку рядом с опцией ‘Помещать загруженные мной файлы в папки по месяцу и году’ и сохраните изменения. С этого момента WordPress начнет сохранять ваши файлы просто в папку wp-content/uploads/ .
Более продвинутые пользователи могут указать собственную директорию для загрузок вместо стандартной. Как это сделать мы уже писали в одной из статей.
Организация ваших изображений в WordPress
WordPress не позволяет вам использовать собственную папку для загрузки изображений, а это, в свою очередь, затрудняет организацию изображений по папкам.
Однако, вы можете использовать теги для организации ваших загрузок. Плагины галерей помогут вам в организации сортировки по альбомам и тегам.
Мы надеемся, что эта статья помогла вам выяснить, каким образом WordPress хранит изображения на вашем сайте.
Если вы только начинаете разбираться с WordPress, то не забудьте посетить нашу рубрику WordPress для новичков, где мы публикуем материалы специально для новых пользователей WordPress.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.
Если вы уже работали с WordPress, то наверняка видели, что все полезное содержимое в виде изображений, таблиц стилей, тем и плагинов в WordPress по-умолчанию хранится в папке wp-content. Но, вероятно, вы не догадывались, что название этой папки можно изменить на что-либо другое, и движок все равно будет работать!
Одним из преимуществ переименования «wp-content/» является то, что ваш сайт будет выглядеть менее WordPress-ным, в то время как это свойство может также добавить некоего рода безопасности что-ли..
Сейчас мы покажем как это всё можно проделать.
Создаем новую папку
В нашем примере мы переименуем папку wp-content в assets. Обратите внимание, что после переименования этой папки все активированные плагины или темы будут деактивированы и не будут отображаться на назначенных им страницах, так как WordPress не сможет найти их в дефолтном расположении — папке wp-content.
Модификация конфига
Теперь нужно проделать несколько изменений в файле wp-config.php, но, всё же лучше сделать резервную копию этого файла перед внесением в него правок. И тогда, в случае чего-то непредвиденного, мы всегда сможем вернуть его из бекапа.
Для начала добавим следующую строку перед require_once(ABSPATH . ‘wp-settings.php’); (обычно расположена в самом низу) для того, чтобы сообщить WordPress, что путь wp-content был изменен на assets.
Затем добавим следующую строку сразу под предыдущей, чтобы указать WordPress на новый путь к папке.
После добавления строки выше WordPress снова обнаружит и отобразит список установленных тем и плагинов.
Но, как вы можете увидеть ниже, ссылка на скриншот темы сломалась.
Вот и все. Теперь все плагины, темы и любые другие медиафайлы, которые вы загружаете, будут сохраняться в нашей новой папке.
Следует отметить!
Существуют некоторые плагины и темы, которые не особо следуют стандартам разработки. Они указывают “wp-content” в качестве пути и ссылки «жестко», зашивая путь в файл, нежедли определяя их налету. В таки случаях плагины и темы могут работать не полностью, либо вообще не работать.
Более того, это также ломает ссылки к изображениями, которые уже прикреплены к записям и были залиты в папку wp-content.
Поэтому вышеописанная модификация должна применяться с осторожностью, и, в идеале, конечно лучше проделывать такое, если вы только собираетесь установить WordPress, либо только-только установили. В противном случае, сайт может полностью «поломаться», и придется исправлять огромное количество деталей.
maintenance.php
wp-content/maintenance.php отвечает за вывод страницы-заглушки, которая показывается в момент автообновления WoordPress. Такая страница определена по умолчанию и за её вывод отвечает функция wp_maintenance(). Но если создать файл maintenance.php в wp-content , то за вывод страницы-заглушки будет отвечать содержимое этого файла.
В maintenance.php нужно описать страницу-заглушку по всем правилам HTML.
Подробнее читайте в описании функции wp_maintenance()
sunrise.php
Загружается только для мультисайтовой сборки, т.е. когда срабатывает условие is_multisite() и при этом определена константа 'SUNRISE' (её нужно определить в файле wp-config.php ).
Файл wp-content/sunrise.php позволяет на раннем этапе изменить логику работы сайта в сети мультисайт. Например, тут можно установить глобальные переменные $current_site ,
$current_blog определяющие текущий сайт сети. Или можно изменить префикс таблиц БД - переменная $table_prefix .
Также в файле sunrise.php можно изменить константы отвечающие за то, где находится каталоги MU плагинов или обычных плагинов. см. wp_plugin_directory_constants()
.
sunrise.php подключается еще до константы SHORTINIT.
sunrise.php подключается в файле wp-includes/ms-settings.php, который в свою очередь подключается в основном загрузочном файле wp-settings.php.
/uploads — медиафайлы и загрузки
WordPress хранит загруженные файлы в папке wp-content/uploads . Эта директория не существует в дистрибутиве WordPress по умолчанию. Она создается при первой загрузке файла в WordPress. Отдельное создание необходимо, потому что эта папка может быть перемещена в другое место (см. ниже)
По умолчанию WordPress хранит загрузки в папках по годам и месяцам:
Перед тем как можно будет загружать какие-либо изображения или файлы в WordPress, на сервере необходимо разрешить создание папок в директории /wp-content . При загрузке первого изображения WordPress автоматически создает директорию /uploads и необходимые поддиректории в ней. После того как первый файл загружен, верните права для /wp-content обратно, обычно 755. Некоторые серверы сразу позволяют скрипту создавать папки и файлы.
Директория uploads должна иметь все права, чтобы в ней можно было свободно создавать и удалять файлы, обычно это права 777 .
WordPress НЕ умеет распознавать и импортировать в админку изображения загруженные в uploads напрямую (не через админку). И в библиотеке файлов WordPress такие файлы не отображаются — WordPress о них ничего не знает.
uploads в Multisite
В Multisite установке для основного сайта фалы загружаются как обычно. А для всех дополнительных сайтов, создается папка /wp-content/uploads/sites/2 , где 2 - это ID сайта сети.
Так для каждого сайта создается папка с его ID в папке /wp-content/uploads/sites . Далее файлы также располагаются в папках по году и месяцу.
Такой подход позволяет разделить загрузки для каждого сайта и упрощает их обслуживание.
До версии WP 3.5 файлы дополнительных сайтов располагались не в /wp-content/uploads/sites , а в /wp-content/blogs.dir .
Так например, директория для сайта с ID 3 выглядит так:
- WP 3.5 и выше: /wp-content/uploads/sites/3
- WP 3.4 и ниже: /wp-content/blogs.dir/3
Перемещение папки uploads
Чтобы переместить папку uploads нужно определить константу UPLOADS в wp-config.php так:
Или можно изменить опции: upload_path и upload_url_path в таблице опций (см. update_option()).
Перемещать папку uploads не рекомендуется, об этом я писал в статье: Баг с перемещением папки uploads.
/languages — переводы
Каталог wp-content/languages присутствует только в том случае, если вы устанавливаете не английскую версию WordPress. В нем содержаться все файлы локализации (перевода) WordPress. Такие файлы имеют расширения:
- .mo - сжатая версия аналогичного .po файла, которая используется при переводе;
- .po - исходный файл перевода. Этот файл можно использовать для редактирования перевода. После редактирования его нужно скомпилировать в сжатую версию с расширением .mo .
Также в languages могут находиться специальные поддиректории:
/pliugns — содержит переводы плагинов. Файл перевода должен иметь формат: название плагина-локаль.mo , например: akismet-ru_RU.mo . Перед загрузкой своего файла перевода, плагин проверяет наличие файла перевода в этой папке и если он там есть, то используется этот файл перевода, а не родной перевод плагина.
/themes — темы
Темы хранятся в директории wp-content/themes . Каждая тема должна находиться в собственной папке и содержать правильно оформленный файл style.css , чтобы WordPress распознал ее как тему, пригодную для использования. В директории темы должны находиться как минимум 2 файла: index.php и style.css .
WordPress может хранить в этой директории сколько угодно тем. Вы можете легко посмотреть любую имеющуюся тему или активировать её во вкладке Внешний вид ► Темы в админ-панели.
db-error.php
Позволяет показать произвольный шаблон страницы ошибки соединения с базой данных.
Файл db-error.php вызывается функцией dead_db(), а функция в свою очередь вызывается при ошибке подключения к БД.
Пример такой страницы смотрите здесь.
Переименование или перемещение папки wp-content
В некоторых случаях, например, для уникализации многих URL на всем сайте или для объединения структуры сайта с другим скриптом, или по каким-то еще причинам, нужно чтобы каталог wp-content назвался по-другому или чтобы он находился в другой директории.
Переместить или переименовать wp-content очень просто. Для этого нужно открыть конфигурационный файл wp-config.php , который лежит в корне вашего сайта и определить в нем две константы:
Как на сайте WordPress создавать страницы, чем они отличаются от записей и где хранятся? Выясним, какие ключевые характеристики присущи этому типу публикаций ВордПресс и как ими управлять.
Ответы на вопросы
Как открыть HTML код нужной странички в WP,в какой папке он хранится?
Вордпресс формирует HTML файл при обращении посетителя к адресу странички, загружая его из базы данных. Исключение — папка с кешированными файлами, которая хранит временные HTML-копии страниц, которые создаются для более быстрой загрузки. Но все изменения все равно нужно вносить не во временные файлы кеша, а в HTML код, который хранится в базе данных.
Как в ВордПресс сайте найти и изменить текст главной страницы?
Где WP хранит изображения, которые находятся на страницах сайта?
При редактировании изображения в админпанели WP показывается ее адрес в файловой структуре сайта. По умолчанию изображения хранятся в папке wp-content/uploads/20ХХ — т.е. разбиты по годам и месяцам. Это удобно, если нужно найти, где находятся изображения за определенный период.
Для чего нужен корневой каталог сайта, как его найти и загрузить необходимый файл? Начинающему вебмастеру полезно будет выяснить, как организовано хранение файлов на сервере, и изучить, что содержится в корневой директории сайта WordPress.
/mu-plugins — обязательные плагины
В WordPress есть «Обязательные плагины», они находится в директории wp-content/mu-plugins . О них я писал отдельно, обязательно ознакомьтесь!
Коротко об обязательных плагинах: Обязательные к использованию плагины (Must-use plugins), известные также под названием mu-plugins — это плагины, которые устанавливаются в специальную папку mu-plugins в каталоге контента wp-content и активируются автоматически (всегда активны) для сайта и сайтов сети. Эти плагины не видно среди обычных плагинов. В админ-панели они отображаются в верхней информационной строке и их невозможно отключить, кроме как удалить файл плагина из каталога wp-content/mu-plugins .
Редакции страниц
Несмотря на то что на страницах размещается в основном статичный контент, их можно редактировать и обновлять.
С одной стороны, это удобно для пользователей, поскольку защищает информацию от случайного удаления при выключении электричества или прерывании интернет-соединения. С другой стороны, все редакции вместе с текущей версией сохраняются в базе данных, что увеличивает ее размер на сервере хостинга.
Зайдите в phpMyAdmin с использованием учетных данных, которые вам предоставил хостинг-провайдер во время регистрации.
Выберите нужную базу данных (1) и перейдите в таблицу wp_posts (2). В окне будет отображаться информация обо всех страницах и заметках, созданных на вашем ресурсе:
- post_content (3) – в этом поле хранится содержимое публикаций;
- post_title (4) содержит заголовки страниц и заметок;
- post_type (5) определяет тип публикации, страницы отмечены значением page (6).
Обратите внимание, для созданной нами страницы с названием «Яндекс. Рефераты» в базе данных помимо отметки page существуют две редакции с отметкой revision (7). Чтобы не увеличивать размер базы данных, их можно удалить.
При большом количестве редакций это действие можно автоматизировать. Для этого зайдите на вкладку SQL (1) и наберите в поле для SQL-запросов команду (2):
DELETE FROM wp_posts WHERE post_type = "revision";
Подтвердите удаление кнопкой «ОК», все редакции с пометкой revision будут удалены из базы данных.
Перед любыми операциями с базой данных обязательно сделайте ее резервную копию. Одна неправильно введенная команда способна испортить результаты вашей многомесячной работы (если в приведенной выше команде не указать тип поста как ревизию, удалятся все записи на сайте).
object-cache.php
В отличии от advanced-cache.php , object-cache.php срабатывает всегда, если он существует. Он нужен, чтобы переопределить работу базового кэширования объектов WordPress.
Вызывается из функции wp_start_object_cache(), которая в свою очередь вызывается из файла wp-settings.php чуть позднее advanced-cache.php .
На основе этого файла работают такие кэши объектов как: Memcache, Memcached, APC, XCache.
Вызов выглядит так:
С версии WP 5.8 появился хук enable_loading_object_cache_dropin, который позволяет отключить плагин объектного кэширования. Хук вызывается раньше чем загружаются плагины и нужен когда код запускается не с веба, например при тестах.
Читайте подробнее про Объектный кэш.
Как загрузить файл в корневой каталог сайта на WordPress
После того как вы обнаружили корень сайта, в нем можно размещать необходимые файлы. При необходимости скопировать файл из локальной папки вашего компьютера на сервер, в файловом менеджере используйте один из двух вариантов:
- просто перетащите файл левой кнопкой мыши из левой панели (локальный компьютер) в правую (удаленный сервер);
- щелкните правой кнопкой мыши на файле в левом окне, в выпадающем меню укажите команду «Закачать на сервер».
Просмотрите список файлов правой панели менеджера и убедитесь, что нужный файл загрузился в корневой каталог сайта. В случае неудачи проверьте интернет-соединение с сервером.
/plugins — плагины
Плагины находятся в директории wp-content/plugins . Плагин может представлять собой один файл или несколько файлов внутри папки. Любые файлы в директории /plugins сканируются WordPress, чтобы определить, является ли файл файлом плагина. Если файл определяется как плагин, он появляется в админ-панели в разделе «Плагины» и готов к активации.
Для деактивации плагина можно удалить плагин из папки /plugins . Также можно переименовать название папки, в этом случае, WordPress просто не сможет найти файл плагина и деактивирует при попытке подключения. Но имейте ввиду, что плагины лучше удалять из админ-панели, через кнопку Удалить, потому что при удалении срабатывают некоторые функции, которые подчищают данные плагина в базе данных или в файлах.
Произвольные директории
В /wp-content можно создавать любые директории. Некоторые плагины, создают такие папки для хранения файлов. Обычно отдельная папка создается, когда нужно хранить много файлов или когда хранимые файлы как-то отличаются от остальных.
Например плагин WP Super Cache создает директорию /wp-content/cache для хранения кэшированных страниц сайта. Кэшированная страница — это сгенерированная страница сайта, сохраненная как статический файл HTML. При обращении к такой странице она не генерируется повторно, а отдается статический файл. Это и есть страничный кэш, который уменьшает нагрузку сервера в десятки раз, поскольку страницы не генерируются при каждом просмотре, а создаются только когда кэш перезаписывается.
Плагин WP Super Cache также добавляет два файла в директорию wp-content: advanced-cache.php (специальный) и wp-cache-config.php. Они нужны для работы WP Super Cache.
Другой пример, популярный плагин для галерей — NextGen Gallery — создает директорию /wp-content/gallery для хранения изображений, загруженных в галереи. Каждая созданная галерея представляет собой поддиректорию /gallery .
Еще пример, мой плагин Kama Thumbnail, который также создает папку /wp-content/cache/thumb и записывает в нее созданные файлы миниатюр.
Что такое страницы в WordPress
Для сайтов с редко изменяемой информацией возможно построение всей архитектуры сайта только на страницах, без использования записей. В таком случае все страницы будут иметь второй уровень вложенности вида названиесайта/название-страницы.html и при изменении разделов сайта не придется настраивать перенаправления со старых адресов страниц на новые.
Для чего предназначены страницы WordPress:
- содержат контент, который не зависит от даты публикации и не требует регулярного обновления;
- могут быть организованы иерархически, включать подстраницы или относиться к родительской странице;
- могут использовать разные шаблоны, отличающиеся от основного шаблона сайта.
Для чего не применяются страницы WordPress:
- они не связаны с записями, рубриками или метками;
- они не являются файлами, поскольку создаются динамически «на лету» также, как записи;
- в отличие от записей, страницы нельзя включать в RSS ленту новостей.
db.php
Позволяет переписать движок работы с БД. Если файл существует в папке wp-content , то он будет вызван до создания подключения к БД. Далее, если в этом файле определить переменную $wpdb , то именно она будет использоваться, как глобальная переменная для работы с БД.
Благодаря такой логике, можно, например, расширить базовый класс wpdb<> или полностью его заменить.
Пример расширения базового класса wpdb<> :
Специальные файлы
Что такое корневой каталог сайта
В корневой папке размещается все содержимое вашего интернет-ресурса. При необходимости добавить какие-либо системные файлы на сайт, их обычно требуется загружать в корень сайта. Для выполнения такой операции вы должны обладать правом доступа или являться владельцем этого ресурса.
Читайте также: