Работа с данными в WordPress


Оглавление (нажмите, чтобы открыть):

Управление базой данных WordPress с помощью phpMyAdmin – инструкция для начинающих

WordPress написан с помощью скрипт-языка PHP и работает с системой управления базой данных MySQL. Вам не обязательно изучать их, чтобы пользоваться WordPress. Однако базовые знания о них могут помочь вам самим устранять проблемы и улучшить понимание работы WordPress. В этой статье мы объясним, каким образом WordPress использует базу данных, а также дефолтные таблицы в базе данных WordPress. Мы покажем вам, как управлять базой данных WordPress с помощью phphMyAdmin; в том числе поговорим о том, как создать резервную копию базы данных, оптимизировать базу данных WordPress и многое другое.

Видео урок

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

Каким образом WordPress использует базу данных

WordPress использует PHP (язык программирования) для хранения и получения данных из базы данных. Информация, которая хранится в базе данных на WordPress, включает в себя: посты, страницы, комментарии, категории, тэги, индивидуализированные поля, пользователей и другие опции вашего сайта, такие как url и т.д. Мы еще вернемся к этому чуть позже, когда будем говорить о таблицах базы данных WordPress.
Когда вы устанавливаете WordPress в первый раз, от вас требуется ввести название базы данных, хостинг, имя пользователя и пароль. Эта информация хранится в конфигурационном файле (wp-config.php).

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

Таблицы базы данных WordPress

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

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

wp_commentmeta : Эта таблица содержит информацию о комментариях, опубликованных на сайте WordPress. В этой таблице есть четыре разных поля – meta_id, comment_id, meta_key и meta_value. Каждый meta_id связан с comment_id. Пример метаинформации комментария – его статус (одобрен, рассматривается, удален и т.д.).

wp_comments : Как можно догадаться по названию, эта таблица содержит комментарии на вашем WordPress. Она содержит имя автора комментария, его url, имейл, сам комментарий и т.д.

wp_links : Используется, чтобы управлять блогроллами в более ранних версиях WordPress или через плагин Link Manager.

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

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

wp_posts : Несмотря на то, что в названии стоит “пост”, эта таблица содержит все виды постов, или же все виды контента. Эта таблица содержит все посты, страницы, корректировки и кастомные типы постов.

wp_terms : В WordPress существует мощная система таксономий, которая позволяет организовывать ваш контент. Индивидуальные составляющие таксономии называются terms и хранятся в этой таблице. К примеру, ваши категории и тэги на WordPress – это таксономии, и каждая отдельная категория и тэг – это term.

wp_term_relationship : Эта таблица отвечает за соотношение между типами постов WordPress и terms в таблице wp_terms. Эта таблица помогает WordPress определить пост X в категорию Y.

wp_term_taxonomy : Эта таблица определяет таксономии для terms в таблице wp_terms. Например, если у вас есть term “Туториалы WordPress”, то в этой таблице будут содержаться данные, в которых будет указано, что он относится к таксономии “категории”. Другими словами, в этой таблице находятся данные, помогающие WordPress различать между terms и определять, какой из них является категорией, тэгом и т.д.

wp_usermeta : Содержит метаинформацию о пользователях вашего сайта.

wp_users : Содержит информацию о пользователях, такую как имя пользователя, пароль, имэйл и т.д.

Управление базой данных WordPress с помощью phpMyAdmin

phpMyAdmin – это программное обеспечение open source, которое предоставляет графический пользовательский веб-интерфейс для управления базой данных mySQL. У большинство хостинг провайдеров WordPress phpMyAdmin установлен в панель управления. Это позволяет пользователям с легкостью получить доступ к базе данных и выполнить общие задачи по управлению базой данных.

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

Нажав на Databases, вы увидите список баз данных, которые вы создали и к которым вы имеете доступ. Нажмите на базу данных WordPress, и вам покажут список таблиц вашей базы данных WordPress.

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

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

Как сделать резервную копию базы данных WordPress через phpMyAdmin

Чтобы сделать резервную копию базы данных WordPress через phpMyAdmin, нажмите на вашу базу данных WordPress. В верхнем меню, нажмите на вкладку Export.

Новая версия phpMyAdmin попросит вас указать метод экспортации. Быстрый метод экспортирует вашу базу данных в .sql файл. Кастомный метод предоставить больше опций и возможность скачать резервную копию в сжатом архиве zip или gzip. Мы рекомендуем использовать кастомный метод и выбрать zip в качестве метода сжатия. Кастомный метод также позволяет вам исключить таблицы из базы данных. Если, например, вы пользовались плагином, который создал таблицу в вашей базе данных, вы можете исключить эту таблицу из резервной копии, если захотите.

Экспортированный файл с базой данных может быть импортирован обратно в ту же или другую базу данных с помощью вкладки Import в phpMyAdmin.

Создание резервной копии WordPress с помощью плагина

Регулярные резервные копии вашего сайта WordPress – самое лучшее, что вы можете сделать для его безопасности. Несмотря на то, что база данных WordPress содержит большую часть информации на вашем сайте, ей не достает одного важного элемента – изображений. Все ваши изображения хранятся в папке uploads в директории /wp-content/. Даже если в базе данных есть информация о том, в каком месте каждая картинка прикреплена в посте, она бесполезна, если в папке с изображениями этих файлов нет.

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

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

Мы используем VautPress, платный ежемесячный сервис, для создания регулярных резервных копий вашего сайта. Для тех, кто любит плагины и не любит регулярные выплаты, мы рекомендуем BackupBuddy, который является несомненно самым полноценным решением проблемы с резервными копиями WordPress.

Оптимизация базы данных WordPress через phpMyAdmin

После долговременного использования WordPress, ваша база данных становится фрагментированной. Появляются дополнительные расходы памяти, которые увеличивают общий размер базы данных и время обработки запросов. Те, кто помнит былые времена ПК, могли замечать, что ваш компьютер начинал работать быстрее после дефрагментации диска. База данных MySQL работает по тому же принципу. В ней есть простая команда, которая позволяет оптимизировать вашу базу данных. Зайдите в phpMyAdmin и нажмите на WordPress Database. Таким образом вы увидите список таблиц вашего WordPress. Нажмите на ссылку Check All под таблицами. Рядом вы увидите ниспадающее меню With Selected – выберите в нем Optimize table.

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

Что еще можно делать с помощью phpMyAdmin

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

  • Сбросить пароль WordPress через phpMyAdmin
  • Добавить пользователя-администратора базы данных WordPress через mySQL
  • Поменять имя пользователя WordPress через phpMyAdmin
  • Как деактивировать все плагины WordPress через phpMyAdmin

Безопасность базы данных WordPress

Сперва мы хотим сказать, что любой сайт может быть взломан. Однако существуют определенные меры, которые можно предпринять, чтобы сделать взлом более трудной задачей. Для начала вы можете поменять префикс базы данных WordPress. Это может значительно уменьшить шанс нападения с помощью SQL-инъекции, потому что часто хакеры нацеливаются на большое количество сайтов сразу, в поисках префикса таблиц wp_, стоящего по умолчанию.

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

Мы очень рекомендуем использовать Sucuri для безопасности WordPress. Вот 5 причин, по которым стоит использовать Sucuri.

Мы надеемся, что эта статья помогла вам лучше понять суть работы базы данных WordPress. Даже если вы не поняли всего сразу, в будущем будет полезно в этом разобраться.

Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected] , +371 29394520

Создание своих таблиц в базе данных wordpress.

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

Для начала я считаю нужным сказать что в wordpress существует 2 типа данных для сохранения.

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

Второй — данные, эта информация которая которая может добавляться, изменяться и извлекаться в любой период эксплуатирования плагина(или шаблона). Для такой информации и нужно создавать свои таблицы в базе. Именно об это типе сохраняемых данных wordpress мы и поговорим в этой статье.

Перейдем непосредственно к делу.

Создание таблиц в базе данных

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

Префикс таблиц в базе данных -при установки вордпресс, пользователю предлагается прописать префикс для таблиц в базе данных. По умолчанию он «wp_«. Также данный префикс можно изменить в файле «wp-config.php». В связи с этим мы заранее не знаем каким может быть префикс у таблиц на сайте у пользователя. Префик для таблиц вордпресс можно получить через глобальную переменную $wpdb (её заранее нужно объявить), вот таким образом $wpdb->prefix. Приведу пример получения префикса таблиц в wordpress.

Проверка на существование таблицы — перед добавлением своей таблицы, нам нужно проверить не существует ли уже таблицы с таким названием. Данная проверка поможет нам повторно не выполнять запрос на создание новой таблицы. Так же данная проверка дает нам знать что таблица была успешно установлена нашим плагином. Это полезно если вы используете плагин и при активации устанавливаете свои таблицу(то есть, если пользователь уже активировал ваш плагин, и таблица уже есть, то нам не нужно выполнять код добавления таблицы если пользователь повторно активирует плагин). Вот проверка на существование таблицы в базе данных wordpress:

Теперь пришло время поговорить непосредственно о том как мы будем добавлять нашу таблицу в базу. Мы не будем напрямую делать SQL запрос в базу, а вместо этого воспользуемся встроенной в wordpress функцией dbDelta. Данная функция сделает добавление таблицы более безопасно, так как она очень придирчиво относится к данным. Так же стоить учесть что функция dbDelta находится в файле wp-admin/includes/upgrade.php, который по умолчанию не подключается, и нам придется подключить его вручную.

Перед тем как привести пример добавления таблицы с помощью dbDelta, хочется отметить некоторые моменты связанные с ее работой:

  • В выражении SQL необходимо писать каждое поле в отдельной строке.
  • Необходимы два пробела между словами PRIMARY KEY и определением primary key.
  • Необходимо использовать ключевое слово KEY , а не его синоним INDEX . Так же, необходимо обозначить как минимум один KEY.

Ну а теперь перейдем к самому интересному, это примеру:

В данном примере мы создадим или обновим таблицу с именем $table_name(о значении этой переменной я говорил выше, в примере в префиксами к таблицам)

Добавление данных в таблицу

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

Теперь подробнее поговорим о добавлении данных в произвольную таблицу.

Начнем с того что таблица в которую мы добавляем данные называется «wp_onwp_price«(wp_ — данный префикс может быть другой, об этом говорилось выше). Сама таблица состоит из строк id(автоинкремент) — заполняется автоматически, id_user — id пользователя, id_product — id продукта, price — цена и date — дата.

Теперь немного о действиях которые мы выполняем в этом коде. Мы с помощью функции onwp_insert_item() — передаем 3 значения $id_user, $id_product, $price. Мы не передаем id — так как он генерируется автоматически(при добавлении таблицы в базу было прописано: id mediumint(9) NOT NULL AUTO_INCREMENT) и date — это значение мы заполняем текущей датой. Все 3 переменных $id_user, $id_product, $price перед тем как записать в базу с помощью функции $wpdb->insert мы обработаем с помощью esc_sql. Это делается для безопасности. esc_sql — подготавливает строку к использованию в SQL запросе. Защищает от SQL инъекций(по типу PHP addslashes() — только работает с массивами). В место .. можно использовать $wpdb->prepare(), более подробнее смотрите тут: wpdb Class.

После того как мы обработали данные, получим полное название таблицы с префиксом: $table_name = $wpdb->get_blog_prefix() . ‘onwp_price’;

$wpdb->insert

И завершающее действие это непосредственное добавление данных в таблицу. Функция $wpdb->insert( $table, $data, $format ) — добавляет строку в таблицу и принимает следующие параметры:

table(строка) название таблицы в которую будем вставлять данные.
data(строка) Данные которые нужно вставить (‘колонка куда вставлять’ => ‘что вставлять’).
format(строка) Формат данных который будет ассоциирован с указанными значениями в параметре $data. Если не указать, то для всех значений $data будет указан формат строки. Возможные форматы данных: %s — строка; %d — целое число и %f — дробное число. При указании формата, WordPress переводит переданные данные в указанный формат перед тем, как сохранить данные в базу данных.

Обновление таблицы

Если вам вдруг понадобилось обновить свою таблицу, например вам нужно добавить новые столбцы. То в этом нет проблем. Всего лишь нужно выполнить такой же SQL запрос как и при добавлении таблицы в базу. И данные в таблице(в таблице с таким же именем) будет заменены. Дублировать код добавления не буду, он есть чуть выше в этой статье.

Вопросы по теме

Если вам стала интересна данная тема, можете посмотреть популярные вопросы с ответами по этой теме:

Как очистить базу данных сайта от мусора

Наверное, вы уже знаете, что практически все современные сайты, также работающие на wordpress, сохраняют информацию в базе данных MySQL(БД).

Для удобства управления базой на хостинге установлен скрипт phpMyAdmin.
В панели phpMyAdmin можно легко управлять базой данных через браузер, выполняя все нужные операции. Можно, например:

  • Создать резервную копию базы данных (Экспорт) или восстановить базу из созданной ранее копии (Импорт).
  • Выполнить SQL-запросы к базе данных — это позволяет массово изменять определенную информацию. Например, можно поменять имя админа или одним запросом исправить все ссылки на сайте.
  • Редактировать таблицы или строки таблиц.
  • Удалять отдельные таблицы или всю базу целиком.
  • А также совершать множество других операций.

Это очень легко и удобно, но иногда БД выдает ошибки.
Практически на любом сайте, возраст которого больше года, периодически возникают ошибки БД.

Содержание:

Эти ошибки сложно отследить, не считая случаев, когда на странице явно написано: «SQL Error»

↑ Как выглядят ошибки, вызванные некорректной работой базы данных MySQ?

  • Какие то функции вашей темы не работают на вашем существующем сайте, но, при этом, работают на новом сайте (с новой базой данных).
  • На страницах выводится текст, который вы не добавляли.
  • Сайт регулярно «слетает» — пропадает или криво отображается контент.

В тяжелых случаях повреждения БД:

  • Данные на странице могут быть перепутаны: части контента выводятся не там, где должны были бы выводиться.
  • Долго работает поиск или не находит того, что точно есть на сайте.
  • Не правильно работают ссылки — например, ссылка указывает на пост, а при переходе по ней отображается пустая страница или другой пост.
Мастер Йода рекомендует:  Создаём Солнечную систему на чистом CSS3. Часть вторая. Кейфреймы и тени

↑ Откуда берутся ошибки базы данных MySQ?

  • В БД записывается вся информация, которая есть на сайте, в том числе настройки тем + плагинов. Иногда, чтобы найти нужный, приходится устанавливать множество других. Потом лишние удаляются, но каждый из плагинов оставляет таблицы со своими настройками.
  • Проблемы могут возникнуть из-за противоречащих друг другу настроек различных плагинов.
  • Также, при обновлении самого скрипта MySQL, иногда старые табличные данные не правильно интерпретируются, вызывая ошибки.
  • Если на сайте прямо не запрещено сохранение резервных копий постов или страниц, то каждое их сохранение, добавляет лишнюю копию.Не знаю, как вы, а я после публикации любой статьи, еще несколько раз что-нибудь в ней исправляю, сохраняя исправленное.В итоге, оказывается, что каждый опубликованный пост, имеет десяток, а то и больше копий, которые записаны в базе данных MySQL.Так, со временем каждая БД накапливает множество неиспользуемых таблиц, заполненных всякой ненужной информацией.

Как запретить сохранение ревизий?

Добавьте в файл wp-config.php строку:

Если вы не решаетесь кардинально сменить БД, то ее можно почистить от скопившейся там лишней информации.

Чтобы было понятно, как к этому подойти, я опишу структуру базы данных wordpress.

Итак, начиная с версии wordpress 4.4 БД состоит из 12 таблиц:

1. wp_commentmeta
2. wp_comments
3. wp_links
4. wp_options
5. wp_postmeta
6. wp_posts
7. wp_terms
8. wp_termmeta
9. wp_term_relationships
10. wp_term_taxonomy
11. wp_usermeta
12. wp_users

wp_commentmeta — содержит дополнительную информацию о комментариях. Сюда часто записываются данные плагинов, которые задействованы в комментариях, например плагина wp-syntax.

wp_comments — здесь хранятся все данные о комментаторах: ID комментатора, ID поста, к которому добавлен комментарий, имя, email комментатора, а также, дата и текст комментария.

wp_links — эта таблица предназначена для ссылок. И, хотя давно никто не публикует на сайте списки ссылок, таблицу wp_links лучше удалять.

wp_options — здесь хранятся все настройки сайта + плагинов, которые записываются в порядке их установки.
Если вы не знаете, какая настройка к чему относится, лучше ничего здесь не трогать.

wp_postmeta — эта таблица непосредственно связана с предыдущей. Она предназначена для хранения мета-данных записей, т.е. информации, связанной с постами: прикрепленные файлы (изображения, видео), значения произвольных полей, например, содержимое полей Title, Description, Keywords.

wp_posts — содержит весь контент + все, что связано с ним: дата публикации поста, его автор, заголовок, текст поста, статус поста (опубликован или черновик), разрешены ли комментарии, их количество.

wp_terms — содержит список таксономий (категорий, тегов) а также, их ID, слаги, ID групп, к которым эти категории принадлежат. Например:
term_id — 2
name — Индексация сайтов.

wp_termmeta — логически рассуждая, эта таблица должна содержать мета-данные таксономий, дополняет таблицу wp_terms. У меня она оказалась пустой.

wp_term_relationships — показывает, к каким рубрикам относится пост, а также какие метки ему присвоены.

wp_term_taxonomy — сохраняет дополнительные данные о категориях, тегах, а также устанавливает вложенность категорий.

wp_usermeta — содержит дополнительные данные о зарегистрированных пользователях.

wp_users — хранит информацию о зарегистрированных пользователях сайта: ID пользователей, логин, пароль, email.

Это все таблицы движка wordpress.
Все, что содержит ваша база кроме них, создано плагинами.

↑ Как найти лишние таблицы в БД?

В названии таблицы содержится краткое название плагина, например:

Счетчик Загрузок:
_download_count

Lockdown WP Admin:
_lockdowns

ping_optimizer:
_cbnetpo_ping_optimizer

belavir:
_blc_filters

Webmaster Yandex:
_wm_ya_stat_texts

В базе данных MySQL моего сайта, например, были лишними следующие таблицы:

Lockdown WP Admin и Login LockDown:
_lockdowns
_login_fails

ping_optimizer:
_cbnetpo_ping_optimizer

belavir:
_blc_filters
_blc_instances
_blc_links
_blc_synch

Webmaster Yandex:
_wm_ya_stat_texts
_wm_ya_texts

Плагины Lockdown WP Admin, Login LockDown и belavir (php MD5) я давно заменила all-in-one-wp-security-and-firewall, а функции ping_optimizer теперь выполняет непосредственно wordpress.

↑ Как понять, какие таблицы удалять, а какие нет?

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

Но, сначала обязательно сделайте бэкап всей базы данных и отдельно каждой удаляемой таблицы!

↑ Как удалить лишние таблицы из БД?

  1. Перейдите к панели управления вашего хостинга, войдите в PhpMyAdmin.
  2. Выберите вашу базу данных.
  3. Отметьте старые таблицы, затем в фильтре выберите Удалить (Drop).
  4. Подтвердите удаление.

↑ Где еще может скрываться лишняя информация?

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

Например, так называются строки с настройками плагина Dagon Design Sitemap Generator:

Сверив названия строк с работающими на сайте плагинами, удаляем лишние.

После всех этих процедур, можно оптимизировать БД:

Это все, удачной вам работы с сайтом!

База данных WordPress

Что такое база данных WordPress сайта

Как правило, в качестве СУБД — системы управления базой данных WordPress, хостинг-провайдеры предлагают MySQL, в просторечье «мускул». Она оптимальная для объемов виртуальных хостингов и выделенных серверов (VDS/VPS).

Встроенная в PHP поддержка MySQL, удобство управления через панель phpMyAdmin и бесплатная лицензия GNU (GPL, GNU Public License) делают эту систему самой популярной у хостинг компаний. Да и на локальных машинах, сборка LAMP (Linux, Apache, MySQL, PHP) остается самой востребованной сборкой для создания локальных проектов на домашнем компьютере.

Язык общения с базой данных

Управляется и обслуживается база данных WordPress при помощи специального языка SQL (Structured Query Language/Структурированный язык запросов).

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

  • создание новой таблицы;
  • добавление новых записей в таблицу;
  • изменение и удаление записей;
  • изменение структур таблиц БД;
  • вставка новых строк;
  • изменение значений полей строки или набора строк;
  • удаление отдельной строки или набора строк.

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

Сделав определенные SQL запросы, база данных WordPress измениться, выполнив следующие операции на всем сайте:

  • Изменить URL сайта и URL главной страницы;
  • Изменить URL в контенте;
  • Изменить путь к картинкам;
  • Изменение пользователя «Admin» по умолчанию;
  • Сброс пароля WordPress;
  • Удаление сохраненных редакций статей.

Подробно о полезных SQL запросах читать на сайте в статье: Практичные SQL запросы к базе данных WordPress.

Создание базы данных

База данных WordPress создается в панели управления вашим хашед хостингом или сервером VDS/VPS. Для создания базы данных пройдите простые этапы:

  • Авторизуйтесь в панели управления хостинга;
  • Откройте вкладку типа «Базы данных» или «MySQL»;

  • Создайте базу данных, дав ей Имя, Имя пользователя, Пароль доступа к базе;
  • Посмотрите в панели хостинга адрес серверов MySQL (СУБД).

Адрес сервера MySQL может быть

  • «localhost»,
  • IP адрес «XX.XXX.XXX: XXXX»;
  • адрес в виде: ВАШ_АККАУНТ_на_ХОСТИНГЕ.mysql.ВАШ_ХОСТИНГ_ПРОВАЙДЕР.

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

Управление базой данных WordPress

Для удобства управления базой данных на сервере устанавливается скрипт phpMyAdmin . Написанный на языке PHP, панель phpMyAdmin это удобнейший интерфейс для управления системой управления базой данных из вашего браузера.

В панели phpMyAdmin можно выполнять все операции с базами данных, включая:

  • Резервные копии базы данных (Экспорт) и восстановление базы данных (импорт);
  • Делать SQL запросы к базе данных;
  • Удалять таблицы, строки и всю базу целиком
  • И совершать еще массу операций, освоение которых дело не одного дня.

Права управления базой данных

В панель phpMyAdmin управления базой данных вы можете войти по имени и паролю пользователя этой базы данных . По умолчанию, если вы создаете пользователя из админ. панели хостинга, пользователь БД имеет полные права для управления базой данных.

Таблицы базы данных

В коробочной версии системы 12 таблиц базы данных. Вот они ( prefix это префикс базы данных, по умолчанию wp ):

  1. prefix_users — таблица всех пользователях: логины, пароли, e-mail;
  2. prefix_usermeta — таблица профилей пользователей;
  3. prefix_comments — таблица комментариев в записях;
  4. prefix_commentmeta — мета данные комментариев;
  5. prefix_terms — таксономия сайта: рубрики и метки, к которым относится запись;
  6. prefix_termmeta – метаданные категорий, тегов, ссылок.
  7. prefix_term_taxonomy —вложенность и описания рубрик;
  8. prefix_term_relationships —связи постов и рубрик;
  9. prefix_links —ссылки сайта, работала, когда по умолчанию стоял плагин «Link Manager». Сейчас используется некоторыми плагинами;
  10. prefix_options —здесь ваши настройки сайта WordPress из вкладки «Настройки».
  11. prefix_postmeta – метаданные к статьям
  12. prefix_posts – здесь все статьи и статические страницы.

У это базы данных другой префикс, но таблицы те же.

Структура и таблицы базы данных WordPress

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

Сегодня моя новая статья будет посвящена базе данных MySQL, которая является неотъемлемой частью платформы WordPress. Поскольку WordPress самостоятельно взаимодействует с базой данных, то обычные пользователи не должны сильно волноваться о её структуре. Однако, вам может быть интересно узнать, как WordPress хранит свои данные и зависимости, если пишете свой плагин.

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

Поэтому я решил исправить ситуацию и перенести комментарий на другую релевантную страницу �� В базе данных в таблице wp_comments я нашёл этот комментарий и отредактировал строку таблицы, изменив значение поля comment_post_ID . Просто сменил ID записи к которой был отправлен комментарий на ID другой записи. После сохранения изменений в базе данных комментарий был успешно перенесён на другую страницу.

Таблицы, из которых состоит база данных WordPress

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

Стандартный префикс wp_ при установке WordPress допускается не изменять. Если планируете создавать несколько сайтов с использованием одной общей базой данных, то обязательно для каждой установки задавайте разный префикс для таблиц ��

  1. wp_commentmeta
  2. wp_comments
  3. wp_links
  4. wp_options
  5. wp_postmeta
  6. wp_posts
  7. wp_termmeta
  8. wp_terms
  9. wp_term_relationships
  10. wp_term_taxonomy
  11. wp_usermeta
  12. wp_users

Обратите внимание, если ваши таблицы не совпадают с моим списком, их больше или, наоборот, меньше, то причиной может оказаться несколько вариантов:

  • Установлена другая версия WordPress. На момент последнего редактирования текущей статьи актуальной версией является 5.0. Настоятельно рекомендую своевременно обновлять CMS.
  • Установлены плагины, которые создали в базе данных свои таблицы. Плагины также меняют содержимое таблиц, добавляя новые поля, строки и т.д.
  • В процессе установки WordPress был изменён стандартный префикс таблиц.

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

Описание и предназначение таблиц базы данных

Работая с базой данных в целях администрирования я использую панель phpMyAdmin. На вашем хостинге или сервере может быть установлено другое программное обеспечение.

Таблица wp_commentmeta

Каждый комментарий, оставленный на сайте, содержит метаданные — эта информация хранится в этой таблице. Например, если установлен плагин Akismet для защиты от спама, то он будет записывать в неё свои данные: одобрен комментарий или нет, имеется ли пометка о спаме.

Таблица wp_comments

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

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

Таблица wp_links

Эта таблица раньше хранила ссылки блогролла на Кодекс, wordpress.org и другие ресурсы. На блоге у меня были удалены все ссылки из консоли, поэтому на скриншоте ниже есть надпись «Ссылок не найдено», а таблица пуста.

Теперь эта функция устарела, но при необходимости её можно включить с помощью плагина Links Manager.

Таблица wp_options

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

Таблица wp_postmeta

Хранит огромное количество данных о записях и страницах сайта: информацию о прикреплённых файлах (изображения, документы, видео), данные заполняемых полей при создании или редактировании записей. Некоторые плагины могут добавлять свою собственную информацию в эту таблицу. Например, плагин All in One SEO Pack хранит здесь Title, Description и Keywords.

Таблица wp_posts

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

Таблица wp_termmeta

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

Таблица wp_terms

Таблица содержит категории, метки и термины пользовательских таксономий.

Таблица wp_term_relationships

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

Таблица wp_term_taxonomy

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

Таблица wp_usermeta

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

Таблица wp_users

И, наконец, на очереди последняя таблица — wp_users. Она содержит список зарегистрированных пользователей, их логин и пароль в зашифрованном виде, e-mail адрес, дату регистрации и другие сведения.

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

Что Такое База Данных в WordPress: Всё, Что Вам Нужно Знать

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

Почему WordPress нужна база данных

Давайте сначала разберёмся, что такое база данных. Как кратко говорилось ранее, база данных может быть жизненно важным вариантом для нас, чтобы хранить и извлекать ценные данные.

База данных это структурированный набор организованных данных. В области ИТ под системами управления базами данных (СУБД) понимается программное обеспечение, которое взаимодействует с пользователем, обрабатывает данные, а также извлекает и хранит данные. Это почти то же самое, когда вы сохраняете изображения или видео на жёстком диске вашего компьютера или в папке для визитных карточек, если вы предпочитаете управление старой школы. Наличие личной базы данных для доступа к этим данным очень полезно.

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

WordPress использует PHP, используя SQL-запрос в разметке PHP, в качестве языка инструкций для CRUD (Create, Read, Update, and Delete — создай, прочти, обнови и удали) данных из базы данных MySQL. База данных является неотъемлемой частью WordPress. Это основа, которая хранит всю основную информацию. База данных также обеспечивает бесперебойную работу вашей страницы, полностью оптимизирует её и помогает регулярно выполнять резервное копирование данных.

Следующий вопрос, где хранится база данных?

Что такое хост базы данных?

Ваша база данных WordPress размещается на хосте базы данных, который затем помещает её на сервер MySQL. Думайте о хосте базы данных как о реальном доме, который вы можете найти зная определённый адрес (имя хоста). Вы можете получить что-то из раздела “комнаты” (имя базы данных). Конечно, вам понадобится разрешение на это, поэтому вам нужно ввести имя пользователя и пароль перед входом в дом.

По большей части вы можете использовать localhost для управления и подключения WordPress к вашей базе данных. Однако вы также можете управлять сервером MySQL, если ваш веб-хостинг использует другое имя хоста. Например, в Hostinger вы можете получить доступ к своей базе данных MySQL в разделе База данных с панели управления.

Что такое таблица базы данных?

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

  1. wp commentmeta — каждый комментарий имеет уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  2. wp comments — все комментарии в WordPress будут доступны в этой таблице.
  3. wp links — этот раздел содержит информацию, относящуюся к ссылкам, введённым в функцию Links в WordPress.
  4. wp options — этот раздел содержит данные, которые WordPress использует для хранения различных настроек и параметров конфигурации.
  5. wp postmeta — каждый пост содержит уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  6. wp posts — в WordPress “posts” — это статьи, которые вы пишете для заполнения своего блога. Этот раздел будет хранить эти данные. Страницы и пункты меню навигации также хранятся здесь.
  7. wp termmeta — каждый термин имеет уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  8. wp terms — здесь хранятся категории для сообщений и ссылок, а также теги для сообщений.
  9. wp term relationships — сообщения связаны с категориями и тегами из таблицы wp_terms, и эта связь поддерживается здесь.
  10. wp term taxonomy — в этой таблице описывается таксономия (категория, ссылка или тег) для записей в таблице wp_terms.
  11. wp usermeta — у каждого пользователя есть уникальная информация, называемая метаданными, эти данные будут доступны в этом разделе.
  12. wp users — здесь поддерживается список пользователей.

По умолчанию вы не можете удалить основные таблицы WordPress. Но они добавятся к вашему контенту. Узнать больше о таблицах можно тут.

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

Если вы собираетесь начать что-то новое, получите наш специальный купон на скидку и выходите в интернет прямо сейчас!

10 самых распространенных ошибок, которые делают разработчики на WordPress

Разработчики на WordPress в погоне за быстрыми результатами часто совершают одни и те же ошибки. Перед вами 10 советов, которые помогут с ними бороться.

Включайте режим отладки

Зачем использовать отладку, если код работает нормально? Отладка — это встроенная функция в WordPress, которая поможет отобразить все ошибки PHP, предупреждения и уведомления (включая устаревшие функции). С отключенной отладкой тяжело регистрировать нештатные ситуации, возникающие на сайте, что в конечном итоге может принести массу проблем. Кроме того, ошибки могут привести к существенному снижению скорости открытия страниц. Каждый раз, добавляя новый скрипт или пользовательский код в WordPress, включайте отладку (но не забывайте отключать её при введении новой функциональности в эксплуатацию).

Чтобы активировать режим отладки, нужно отредактировать файл wp-config.php в корневом каталоге установки WordPress:

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

Не добавляйте все скрипты в верхнюю часть сайта

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

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

Мастер Йода рекомендует:  Самые популярные плагины на WordPress.org за 2020 год

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

Granatum, удалённо, средняя по рынку от 60 000 до 150 000 ₽

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

Создавайте дочерние темы и не меняйте файлы движка

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

Чтобы создать дочернюю тему, поместите файл style.css в подкаталог папки дочерней темы и наполните подобным содержимым:

В приведенном выше примере создается дочерняя тема, основанная на теме «WordPress Twenty Sixteen». Важной строкой этого кода является слово Template , которое должно соответствовать имени каталога родительской темы, с которой вы клонируете шаблон.

Такие же принципы применяйте к основным файлам WordPress: не нужно изменять файлы движка, постарайтесь использовать функции и фильтры CMS так, чтобы ваши изменения не были перезаписаны после обновления. Подключаемые функции позволяют вам переопределить некоторые базовые функции, но этот подход используется всё реже и заменяется фильтрами. С фильтрами достигается тот же результат, что и с подключаемыми функциями: изменение вывода функций WordPress. Не забывайте добавлять в код if ( !function_exists() ) при использовании подключаемых функций, поскольку несколько плагинов, пытающихся переопределить одну и ту же подключаемую функцию без этой оболочки, будут приводить к фатальной ошибке.

Не используйте хардкодинг

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

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

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

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

Не давайте постоянно индексировать ваш сайт

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

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

Поэтому, если вы хотите надёжно предотвращать индексацию вашего сайта поисковыми системами, отредактируйте файл .htaccess и вставьте следующую строку:

Перепроверяйте работоспособность плагинов

Зачем проверять, включена ли функция плагина, если он активен? Конечно, в 99 % случаев это так, однако этот один процент может привести к тому, что ваш сайт будет выводить некоторые ошибки PHP. Чтобы этого не произошло, мы можем проверить, активен ли плагин, прежде чем использовать его функции. Если функция плагина вызывается через фронтенд, то нужно включить библиотеку plugin.php в код, чтобы вызвать функцию is_plugin_active() :

Этот метод обычно достаточно надёжный. Однако могут быть случаи, когда автор изменил имя основного каталога плагина. Более надёжным методом было бы проверить наличие класса в плагине:

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

Не загружайте слишком много ресурсов

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

Сценарии также можно удалить с помощью функции wp_dequeue_script ($ handle) через дескриптор, с которым они были зарегистрированы. Аналогично wp_dequeue_style ($ handle) предотвратит загрузку таблиц стилей. Но, если это технически сложно для вас, можно установить Plugin Organizer, который обеспечивает выборочную загрузку плагинов на основе определенных критериев, таких как тип сообщения или имя страницы. Рекомендуется отключить любые кэширующие плагины, такие как W3Cache, чтобы изменения стали заметными.

Не оставляйте панель управления в верхней части сайта

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

Этот код нужно вставить в файл functions.php вашей темы. Таким образом, панель будет отображаться только для администратора сайта. Используя current_user_can ($) , можно добавить пользователю любую роль, а также исключить его из панели управления.

Используйте фильтр GetText

Можно использовать CSS или JavaScript для изменения ярлыка кнопки, что с этим не так? Да, можно. Однако вы добавляете лишний код и тратите дополнительное время, чтобы отобразить кнопку, когда вместо этого вы можете использовать один из самых удобных фильтров в WordPress — gettext . Используя этот фильтр совместно с textdomain , мы можем изменять текст до загрузки страницы. Если изменяемый текст находится в теме, найдите строку кода load_theme_textdomain ($ domain) .

На примере WooCommerce рассмотрим, как изменить текст, который появляется для заголовка «Related Products». Вставьте следующий код в файл functions.php вашей темы:

Этот фильтр применяется к переведённому тексту с помощью функций интернационализации __() и __e() , если textdomain определен с помощью вышеупомянутых функций.

Меняйте значения для постоянных ссылок

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

Заключение

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

WP Magazine

Про WordPress на русском языке

Создание собственных таблиц в базе данных WordPress

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

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

  • Нет возможности использовать WP_Query для доступа к данным
  • Данные в произвольной таблице не используют кэширование объектов
  • Пользовательский интерфейс для работы с данными приходится строить самостоятельно
  • Роли, привилегии, шаблоны вывода и форматы постоянных ссылок также приходится брать на себя
  • Нет возможности использовать таксономию WordPress для группировки данных

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

Функция dbDelta()

Встроенная функция dbDelta() позволяет создавать таблицы в базе данных WordPress, и вносить изменения в их структуру. Но перед созданием новой таблицы, необходимо определиться с ее наименованием и кодировкой.

Название новой таблицы должно иметь тот же префикс, который используется ядром WordPress (по умолчанию wp_ ) и дополнительный префикс для нашего плагина или проекта, например: wp_my_table_name . Префикс wp_ можно получить с помощью метода get_blog_prefix() глобального объекта $wpdb , а с помощью свойств charset и collate можно определить используемую кодировку:

Далее с помощью функции dbDelta() мы можем создать новую таблицу:

Функция dbDelta() отличается от простого MySQL запроса в базу данных WordPress. Она разбивает структуру таблицы на части и сравнивает ее с той таблицей, которая уже существует. Это позволяет dbDelta() вносить изменения в структуру таблицы, без необходимости удалять и снова создавать таблицу.

Например, чтобы добавить новую колонку в нашу таблицу, мы можем изменить наш основной запрос CREATE TABLE следующим образом:

При этом разбив запрос на части, функция dbDelta() поймет, что добавилась новая колонка color , и выполнит соответствующий запрос ALTER TABLE над существующей таблицей в базе данных WordPress. Для того, чтобы проверить что именно сделала функция dbDelta мы можем вывести ее результат, например с помощью var_dump() .

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

Версии таблиц и dbDelta()

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

Таким образом во время события init, наш плагин проверяет установленную версию схемы данных в опциях WordPress.

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

При таком подходе, после изменения структуры данных в запросе к dbDelta() нам необходимо лишь увеличить переменную класса $db_version .

Multisite

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

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

  1. Указать 0 в вызове get_blog_prefix() , чтобы использовать глобальный префикс базы данных WordPress.
  2. Использовать функции get_site_option() и update_site_option() для хранения версии схемы данных только на основном сайте в сети.

Запросы

Как мы упомянули в начале статьи, для получения данных из нашей новой таблицы, мы не можем использовать класс WP_Query или любые другие вспомогательные функции в WordPress. Запросы необходимо строить вручную и запускать с помощью объекта $wpdb :

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

Отдельно следует обратить внимание на метод prepare() объекта $wpdb . Он позволяет указать формат передаваемых переменных в базу данных WordPress и в большинстве случаев защищает от SQL-инъекции.

Подробнее об использовании объекта $wpdb для выполнения запросов в базу данных WordPress, вы можете узнать в кодексе (англ.)

Как создать сайт на WordPress: полное руководство для новичков – установка, настройка, работа с сайтом

Время чтения: 27 минут Нет времени читать? Нет времени?

Из этой статьи вы узнаете, как создать сайт на WordPress. С помощью пошагового руководства сделаете качественный и функциональный ресурс, пригодный для привлечения и конвертации трафика.

Почему WordPress – что это такое и 5 причин его использовать для сайта или блога

WordPress – это самая распространенная, на сегодняшний день, CMS . По данным независимого агентства Web Technology Surveys за сентябрь 2020 года, этот движок используется в 34,6 % сайтов или 64,1 % из тех, что сделаны на основе CMS. Для сравнения, в 2015 году на WordPress работало лишь 24 % ресурсов с CMS. Вот главные причины его успеха:

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

Как выбрать движок для сайта?

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

WordPress используют Sony Music, The New Yorker, Reuters, TechCrunch, Республиканская партия США, Fortune и многие другие крупные СМИ, корпорации и организации. Черт, даже Rolling Stones и Snoop Dogg оценили этот движок.


Ну что, решили сделать сайт на WordPress? Тогда переходим к пошаговому руководству.

Шаг № 1: как выбрать хостинг и зарегистрировать домен

Для некоммерческого проекта платить за хостинг не обязательно, особенно на первых порах. Делиться фотографиями котиков или вести дневник бодибилдера можно, например, на бесплатной платформе wordpress.com. Но если у вас коммерческий проект, например, тематический блог или корпоративный сайт, и вы планируете зарабатывать с его помощью – выбирайте платный хостинг.

Что такое хостинг? Как выбрать хостинг?

Чтобы выбрать хостинг-провайдера, посмотрите это видео или изучите гайд в блоге «Текстерры». Если на это совсем нет времени, можете обратиться, например, в Reg.ru, Beget или «Айхор». Качество их услуг вполне на уровне.

Зарегистрировать домен вам также поможет хостер. Достаточно придумать доменное имя, убедиться, что оно свободно, и оплатить регистрацию.

Следующие рекомендации помогут выбрать удачное доменное имя:

  • Выбирайте доменное имя, частично или полностью совпадающее с названием сайта. Например, для сайта «Одноклассники» хорошие доменные имена – odnoklassniki.ru или ok.ru. Понятно, что имя vk.com этому ресурсу не подходит.
  • Используйте максимально короткое доменное имя. Владельцам смартфонов сложно ввести в строку браузера длинный адрес. Поэтому лучше использовать имя vk.com, чем vkontakte.ru.
  • Убедитесь, что выбранный адрес сайта легко запоминается и имеет смысл. Как вы поняли, владельцы «Одноклассников» не случайно выбрали короткое название ok.ru, а не ass.ru, простите за грубый пример.

Выбор доменной зоны не влияет на технические характеристики ресурса или позиции в поисковой выдаче. Однако теоретически этот параметр может влиять на доверие аудитории. При прочих равных пользователи охотнее верят сайтам с адресом vasya-pupkin.ru или vasya-pupkin.com, чем ресурсам типа vasya-pupkin.wordpress.com или vasya-pupkin.blogspot.com. Поэтому для коммерческих проектов старайтесь выбирать домены верхнего уровня, например, .com, .info, .org, .net, .ru, .ua, .by и т.п. Обратите внимание на появившиеся недавно домены первого уровня, например, .club, .guru, .ninja, .expert и другие.

Шаг № 2: как установить WordPress своими руками

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

Перейдите на сайт WordPress и скачайте дистрибутив.

С помощью FileZilla или другого FTP-клиента загрузите файлы WordPress в корневую папку или в субдиректорию. В корневой папке находится файл index.html. Чтобы создать субдиректорию, нужно поместить папку с файлами сайта в корневой каталог. В первом случае сайт будет доступен по адресу www.vash-site.ru. Во втором случае вы установите WordPress на существующий сайт. Он будет доступен по адресу www.vash-site.ru/wordpress/.

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

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

Если все сделано верно, увидите следующее сообщение (см. иллюстрацию).

По основному URL должен открываться сайт.

Вы только что своими руками создали сайт на WordPress. Теперь можете войти в панель администрирования и приступить к настройке.

Шаг № 3: выберите подходящую тему для WordPress

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

– Лучше выбрать бесплатную или платную тему?

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

– Какая тема лучше: русскоязычная или англоязычная?

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

– Как найти подходящий шаблон в каталоге?

Воспользуйтесь фильтром в каталоге тем. Отметьте нужные опции и примените фильтр. Еще один вариант: используйте дизайн-шаблон из подборки «Текстерры».

– Как установить тему WordPress?

Есть два способа. Первый: в админке выберите раздел «Внешний вид – Темы». Нажмите кнопку «Добавить новую».

Найдите нужную тему по названию или с помощью фильтра характеристик.

Наведите курсор на выбранную тему и нажмите кнопку «Просмотреть». Движок включит режим предпросмотра. Если внешний вид сайта вас устраивает, установите и активируйте тему.

Второй способ: скачайте дистрибутив выбранной темы на компьютер. Это должен быть архив в формате .zip. В разделе админки «Внешний вид – Темы – Добавить новую» загрузите и установите шаблон. После загрузки активируйте его.

Вы установили и активировали понравившийся шаблон. Теперь можно приступить к настройке.

Шаг № 4: как настроить сайт на CMS WordPress и тему (шаблон)

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

Настраиваем CMS WordPress

Войдите в административную панель WordPress и выберите меню «Настройки». Укажите необходимые данные в каждом разделе настроек.

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

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

Обязательно укажите хотя бы один надежный сервис слежения за обновлениями в разделе «Сервисы обновления». В этом случае движок будет автоматически уведомлять поисковые системы о публикации новых материалов. Например, выберите сервис http://rpc.pingomatic.com/. Сохраните изменения.

Каждый раз при нажатии на кнопку «Обновить», оповещаются и выбранные сервисы. Чтобы домен не попал в списки ping-спамеров, есть плагин WordPress Ping Optimizer. Установите его и настройте частоту обмена данными об изменениях.

В разделе «Чтение» укажите, что должно отображаться на главной странице сайта. Если создаете блог, на главной должны быть последние записи. Для сайта со статическими страницами, в качестве главной выберите одну из них и создайте отдельную страницу «Блог», на которой будут отображаться посты. Посмотреть, как это выглядит, можно на сайте проекта TeachLine.

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

Мастер Йода рекомендует:  Пошаговое руководство по созданию подсказок на чистом CSS

В разделе «Настройки обсуждения» выберите подходящие параметры. В большинстве случаев подойдут дефолтные настройки. Уделите внимание полям «Модерация комментариев» и «Черный список». Можете указать признаки, по которым комментарии будут перед публикацией поставлены в очередь на модерацию или окажутся в списке «Спам». Эти настройки сработают, если вы пользуетесь дефолтными комментариями WordPress.

В разделе «Медиафайлы» оставьте настройки по умолчанию.

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

Как настроить тему WordPress

Каждый шаблон имеет собственные настройки. Описание настроек дефолтной темы Twenty Nineteen поможет понять закономерности и настроить выбранный шаблон.

В консоли WordPress выберите меню «Внешний вид – Настроить». Откроется страница настройки темы или кастомайзер. Доступные пункты настройки можно увидеть в меню в левой части экрана.

В разделе «Свойства сайта» загрузите логотип, укажите название и краткое описание сайта, добавьте фавикон .

В разделе «Цвета» выберите цветовую схему шаблона, а также цвет фильтра закрепленного фото.

В разделе «Меню» настройте меню сайта. Нажмите кнопку «Создать меню».

Укажите название и область меню.

Добавьте в меню нужные страницы и нажмите кнопку «Опубликовать».

В разделе «Виджеты» добавьте на сайт виджеты. Обратите внимание, что в 2020 году в дефолтной теме WordPress снова появился сайдбар. Если он вам не нужен, просто удалите боковые виджеты.

Как русифицировать тему WordPress

Русифицировать тему удобно с помощью бесплатной программы Poedit. Скачайте и установите ее на компьютер, а затем загрузите с вашего сайта на компьютер языковые файлы выбранного шаблона с помощью FTP-клиента, например, FileZilla. Также это можно сделать с помощью плагинов, например, File Manager. Если вы его установили, действуйте по следующему описанному ниже алгоритму.

В консоли выберите меню FileManager – Configuration. Настройте конфигурации, как указано на иллюстрации.

В меню FileManager – FileManager выберите папку wp-content – themes.

Выберите папку темы, которую хотите русифицировать. В ней откройте папку languages.

Скачайте на компьютер файлы en.mo и en.po. Если таких файлов нет, скачайте на компьютер файл с расширением .pot.

Откройте программу Poedit и выберите опцию «Создать новый перевод».

Откройте файл перевода и укажите код языка.

Приступайте к переводу. В поле «Исходный текст» программа отображает текст на английском языке. В поле «Перевод» нужно добавить текст на русском.

Сохраните перевод. Программа загрузит на жесткий диск вашего ПК два файла: ru_Ru.mo и ru_RU.po. С помощью функции Upload files загрузите файлы в папку languges вашего шаблона.

Вы русифицировали шаблон.

Вместо программы для ПК Poedit можно использовать плагин Loco Translate. После установки и активации надстройки интерфейс для перевода шаблонов появляется в админке сайта. Он тоже работает с языковыми файлами .po и .mo вашей темы, но все делается прямо в браузере.

Шаг № 5: решаем практические задачи с помощью плагинов для WordPress

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

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

Пользуйтесь плагинами с осторожностью и устанавливайте только самые необходимые. С помощью плагинов можно сделать следующее:

  • Обеспечить безопасность сайта.
  • Бороться со спамом.
  • Оптимизировать ресурс к требованиям поисковых систем.
  • Повысить функциональность и улучшить юзабилити.

Как с помощью плагинов обеспечить безопасность сайта на WordPress

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

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

Чтобы регулярно создавать резервные копии сайта, воспользуйтесь одним из перечисленных плагинов:

  • WP Database Backup – пока не переведен на русский;
  • BackUpWordPress – есть русская версия, но реже обновляется;
  • Backup and Restore WordPress – не русифицирован

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

Нажмите кнопку «Установить». После установки активируйте плагин. Теперь настройте параметры резервного копирования. Выберите меню «Инструменты – WP DB BackUp». Нажмите Create New Database BackUp. Вы создали резервную копию по требованию.

Настройте регулярное создание резервных копий по расписанию. Перейдите на вкладку Sheduler, включите автоматическое создание резервных копий, выберите частоту создания архивов.

На вкладке Destination включите автоматическое сохранение архива на Google Drive или отправку на электронную почту.

Чтобы защитить сайт от несанкционированного доступа, воспользуйтесь плагином Loginizer Security. Надстройка надежно защищает сайт от взлома методом перебора или брутфорсинга.

Как бороться со спамом на сайте WordPress

Плагины для борьбы со спамом актуальны, если вы пользуетесь встроенным механизмом комментариев WordPress. Сторонние системы, например, Disqus, защищаются от этого самостоятельно.

Защититься от спама можно с помощью плагинов, например, Akismet или Antispam Bee. После установки Antispam Bee плагин работает в фоновом режиме. Обычно подходят дефолтные настройки, а если нужно что-то поменять, перейдите в меню админки «Настройки – Antispam Bee».

Еще один хороший плагин, который использует технологию reCaptcha компании Google, называется Advanced noCaptcha & invisible Captcha. Теперь спам фильтруется с помощью искусственного интеллекта. Для настройки необходимо просто зарегистрировать свой сайт в Google, выбрать версию капчи и получить два ключа – обычный и секретный, чтобы использовать их с плагином.

Как обеспечить SEO сайта на WordPress

WordPress – SEO-дружественная CMS по умолчанию. Но есть задачи, без которых сайт нельзя считать полностью соответствующим требованиям поисковых систем. Вот они:

  • Создание и обновление карты сайта.
  • Канонизация URL.
  • Оптимизация title страниц.
  • Автоматическая генерация мета-данных страниц.
  • Блокирование индексации дублированного контента.
  • Создание микроразметки страниц.

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

Установите и активируйте выбранный плагин, например, Google XML Sitemaps.

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

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

Для технической оптимизации ресурса воспользуйтесь одним из следующих плагинов:

  • All in One SEO Pack.
  • WordPress SEO by Yoast.

Установите и активируйте выбранный плагин, например, All in One SEO Pack. Используйте настройки по умолчанию, если вы только знакомитесь с WordPress. Если считаете себя продвинутым веб-мастером, можете изменить некоторые настройки SEO-модуля. Для этого выберите меню All in One SEO в консоли движка.

Обратите внимание на перечисленные ниже настройки.

В разделе «Основные настройки» уберите флажок напротив пункта Use Schema.org Markup. Размечать страницу лучше с помощью отдельного плагина.

Если в качестве главной используете страницу записей, в разделе «Настройки главной страницы» укажите title, description и keywords. Если в качестве главной используется статическая страница, установите флажок в поле «Включить».

В разделе «Настройки для вебмастера» укажите код верификации ресурса в кабинете для вебмастеров Google. Для этого добавьте в «Инструменты для вебмастеров» новый ресурс, выберите альтернативные методы верификации. Скопируйте часть кода HTML, указанную на иллюстрации.

Вставьте ее в поле «Инструменты вебмастера Google» на странице настройки плагина.

Сохраните параметры плагина. В кабинете для вебмастеров нажмите кнопку «Подтвердить».

Для разметки страниц воспользуйтесь одним из следующих плагинов:

Связка WPSSO и WPSSO JSON Первый плагин базовый, а второй представляет собой расширение. С помощью базового решения на сайт можно добавить разметку Open Graph. С помощью второго с помощью JSON-LD реализуется разметка Schema.org. WP SEO Structured Data Schema С помощью данного плагина на сайт можно добавить несколько типов разметки Schema.org, включая Article, BlogPosting и Review. Разметка реализуется с помощью JSON-LD. Плагин Schema App С помощью этой программы на сайт можно добавить разные типы разметки Schema.org. Она реализуется через JSON-LD. Бесплатная версия поддерживает базовые типы разметки. Также для разметки можно использовать онлайн-генератор, если вы хорошо понимаете базовые принципы разметки Schema.org.

Установите и активируйте плагины WPSSO и WPSSO JSON. В консоли на странице настроек плагинов в разделе Essential Settings укажите информацию о сайте, а также сведения для разметки Open Graph. Не меняйте другие настройки.

Перейдите в раздел Schema Markup. В полях Organization Logo Image URL и Organization Banner URL укажите URL логотипа и баннера сайта. Эти изображения могут использоваться на странице поисковой выдачи.

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

Выберите тип разметки для страниц публикаций, статических страниц и страниц медиафайлов. Для страниц записей подходят типы разметки Article и BlogPosting. Выбор зависит от формата публикаций в блоге.

Тип разметки BlogPosting – производное Article. Кроме BlogPosting, к частностям Article относится тип разметки News Article или «Новость». То есть BlogPosting содержит все семантические данные разметки Article.

Используйте тип BlogPosting, если публикуете небольшие заметки, личные наблюдения и впечатления, как в «Живом Журнале». Тип Article больше подойдет для обзоров, аналитических статей, руководств, как в блоге «Текстерры». Для статических страниц и страниц медиафайлов нужно указывать тип WebPage.

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

Что делать, если вы публикуете материалы разного типа: лонгриды, небольшие заметки и новости? В этом случае для каждой публикации лучше выбрать подходящую разметку. Вместо надстройки WPSSO JSON воспользуйтесь плагином WP SEO Structured Data Schema.

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

Недостаток плагина – необходимость размечать каждую публикацию вручную. А к преимуществам можно отнести поддержку дополнительных типов разметки, например, Review, Product и Aggregate Ratings. Бесплатная версия WPSSO JSON не поддерживает эти типы.

Между прочим, TexTerra занимается комплексным продвижением в интернете. Помимо SEO, услуга включает работу по разным направлениям: SMM, контент- и видеомаркетинг, email-рассылки и др. На сегодняшний день не существует более эффективного метода для бизнеса.

Как повысить функциональность и юзабилити ресурса

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

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

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

Начните улучшение юзабилити с латинизации URL сайта. Обратите внимание на ссылку, которую CMS генерирует по умолчанию. В ней есть кириллические буквы.

Скопируйте URL и вставьте его в комментариях на сайте или в текстовом редакторе.

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

Эту проблему можно решить с помощью WP Translitera или аналогичного плагина. Для этого достаточно установить и активировать выбранный модуль.

Добавьте на страницы кнопки шеринга социальных сетей. Эту задачу можно решить разными способами. Например, установите и активируйте плагин Head, Footer and Post Injections. Это полезная надстройка: с ее помощью можно добавлять произвольный код на все или отельные страницы сайта.

Выберите сервис шеринга, например, Pluso. Настройте блок «Поделиться» и скопируйте предложенный системой код. В админке сайта перейдите в меню «Настройки – Header and Footer». Откройте вкладку Posts. Вставьте код после или перед публикацией.

Сохраните изменения, проверьте, как отображаются кнопки.

Шаг № 6: как установить коды сервисов аналитики и подключить сайт к кабинетам для веб-мастеров

Обозначенная в подзаголовке задача решается разными способами. Например, при установке плагина All in One SEO Pack вы уже подключили ресурс к кабинету для вебмастеров Google. Подключить сайт к «Вебмастеру», «Метрике» и Google Analytics поможет установленный ранее плагин Head, Footer and Post Injections.

Зарегистрируйте сайт в указанных сервисах. Инструкции по регистрации можно найти в гайдах «Текстерры» по «Яндекс.Вебмастеру», «Метрике» и Google Analytics.

После регистрации в сервисах скопируйте коды отслеживания или теги верификации и вставьте их на сайт. Для этого перейдите по вкладке Head and footer на странице настроек плагина.

Подключить любой внешний сервис можно с помощью диспетчера тегов Google. Код Tag Manager нужно установить в разделы head и body каждой страницы сайта с помощью Head, Footer and Post Injections. О работе с диспетчером тегов можно прочитать в нашем руководстве.

Шаг № 7: как создавать страницы и записи на сайте под управлением WordPress

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

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

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

Как создать статическую страницу

Придерживайтесь описанного ниже алгоритма.

Выберите меню «Страницы – Добавить новую».

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

Например, чтобы вставить фотографию, выберите соответствующий блок.

Выберите источник фото и положение картинки на странице.

В Gutenberg доступны десятки вариантов блоков. Например, кнопки, произвольный код, встраивание публикаций из социальных сетей и так далее. Их можно использовать для оформления вашего блога.

После редактирования опубликуйте страницу.

Проверьте корректность отображения контента. Если нужно, отредактируйте страницу.

Как создать публикацию

Создание публикации рассматривается на примере классического редактора. С пятой версии WordPress, его придется установить как отдельный плагин. Конечно, как и для страниц, можно использовать новый «Гутенберг», но он не настолько гибкий.

Чтобы добавить запись, выберите меню «Записи – добавить новую».

Большинство шаблонов поддерживает несколько форматов записи. Выберите подходящий.

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

Классический редактор поддерживает два формата редактирования: визуальный или WYSIWIG и «Текст» с возможностью использовать HTML. Выберите подходящий. Добавьте заголовок и контент.

Укажите title и description, выберите изображение записи. Опубликуйте страницу.

Приступайте к самому главному

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

Если у вас есть вопросы, замечания и предложения, связанные с созданием и настройкой сайта, пишите их в комментариях. Также вы можете поделиться опытом работы с CMS WordPress, рассказать о любимых плагинах, отметить достоинства и недостатки самого популярного в мире «движка».

Сложно, не получается или просто нет времени? Делайте то, что умеете лучше, а профессиональное создание сайта на WordPress доверьте специалистам «Текстерры».

Обзор базы данных в WordPress

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

Использования базы данных в WordPress

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

Таблицы Базы Данных WordPress

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

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

wp_commentmeta: Данная таблица относится к комментариям и содержит в себе информацию Мета — данных. В таблице находится четыре поля meta_id, comment_id, meta_key, meta_value.

wp_comments: Название таблицы говорит само за себя. Она отвечает за комментарий, email – адреса, авторов и т.д.

wp_links: Ссылки в администраторской панели. Это больше относится к более раним версиям.

wp_options: В этой таблице находится большая часть ваших основных данных, таких как: адрес сайта, e-mail администратора, формат даты и многое другое.

wp_postmeta: Таблица содержит в себе информацию постов именуемая как мета – данные. А также в эту таблицу плагины могут добавлять собственную информацию.

wp_posts: Центр данных: страницы, посты, ревизии, все это находится в этой таблице.

wp_terms: Категории, метки и термин таксономии.

wp_term_relationships: Связь с категориями, тегами, записями и пр.

wp_term_taxonomy: Определение термина таксономии.

wp_usermeta: Мета – информация о пользователей сайта.

wp_users: Данные пользователей: пароли, логины, e-mail и т.д.

Управление базами данных в WordPress с помощью phpMyAdmin

phpMyAdmin – это административная зона управления базами данных она также написана на языке программирования PHP. Через это приложение выполняются все действия с БД в WordPress. На данный момент у многих веб – хостингов имеется эта система управления БД так, как она популярна и очень удобна в использование.

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

Оптимизация базы данных в WordPress

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

Резервное копирование базы данных в WordPress

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

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

Добавить комментарий