Вначале ведение блога или сайта на WordPress не так уж и важно. Это на самом деле довольно просто. Вы устанавливаете WordPress на веб-сервер, загружаете и устанавливаете тему, начинаете вести блог, и ваш веб-сайт работает. Первые два года это кусок пирога. У вас может не быть успешного блога
с первого дня, но вы знаете, что — если вы хороший писатель, трафик начинает прибывать. Прежде чем вы это знаете, у вас есть приличное мало последователей.
Вы не можете быть профессиональным блоггером
с первым дня, но с достаточной решительностью, настойчивостью и упорной старым хорошим жиром локтя, вы можете сделать это там. Однако путь к этому саммиту успеха является непростым. Вы обнаружите, что в конечном итоге ваш трафик превышает возможности вашего общего веб-хостинга. Затем вы узнаете, что бесплатная служба рассылки, на которую вы подписались, не может справиться с нагрузкой аудитории, которую вы накопили.
А потом, есть сами сообщения в блоге. То, что начиналось как несколько десятков статей, в конечном итоге превращается в сотни. И затем, через несколько лет, вы получили более одной-двух тысяч статей, и ваш сайт растет в геометрической прогрессии. Вы даже не можете вспомнить эти ранние статьи больше. Ваш сайт мог развиваться годами, и структура ваших статей изменилась, но эти ранние статьи не изменились. Может быть, некоторые ссылки были сломаны. Возможно, некоторые изображения исчезли. Дело в том, что если вы не знаете, как запрашивать базу данных блогов WordPress, вы можете не видеть всего, что происходит с вашим сайтом, и вы не сможете должным образом управлять своим блогом.
К счастью, большинство веб-хостов предоставляют вам доступ к вашей базе данных через phpMyAdmin, и следующие запросы к базе данных WordPress могут помочь вам лучше отслеживать все ваши тысячи сообщений.
Мониторинг ваших сообщений с помощью запросов к базе данных WordPress
Следующие советы по использованию phpMyAdmin для запроса базы данных WordPress не предназначены для выполнения каких-либо агрессивных или опасных действий. По сути, это запросы, которые вы можете использовать для поиска определенных постов в вашем блоге, которые могут быть захоронены в течение нескольких лет после появления записей, которые можно найти навсегда, когда инструмент поиска WordPress просто недостаточно эффективен.
В некоторых случаях, как я опишу ниже, вы можете захотеть найти такие вещи, как спам-комментарии в своем блоге, чтобы вы могли удалить их, найти неиспользуемые теги, найти каждую статью, написанную конкретным автором или внутри особая категория и многое другое. Как только вы поймете, как структурировать эти запросы, это станет чрезвычайно ценным инструментом для извлечения данных из вашего огромного блога.
Выполнение phpMyAdmin SQL-запросов
Когда вы зайдете на свой веб-хост и получите доступ к инструменту phpMyAdmin, вы увидите все свои базы данных, доступные в левом меню. Нажмите на базу данных WordPress, и вы увидите все таблицы WordPress, которые доступны для запроса данных.
Чтобы выполнить запросы, которые я собираюсь описать в этой статье, просто нажмите на вкладку SQL, и вы увидите поле, в которое можно вставить запросы. Вы можете скопировать их прямо из этой статьи и вставить их в собственное поле запроса, если хотите.
Итак, теперь, когда вы настроены на выполнение собственных запросов, начнем!
Извлечь адреса электронной почты, оставленные комментаторами
За прошедшие годы вы получите множество комментариев от ваших читателей, и большинство из них предоставят свой адрес электронной почты, когда будут публиковать в своем блоге. Многие блоггеры даже не задумываются об этом, но, если учесть, ваш блог создал одну из наиболее ценных форм маркетинга, доступных для любого бизнеса — список рассылки. Вы можете извлечь все эти адреса электронной почты из комментариев в своем блоге, выполнив простой запрос:
SELECT DISTINCT comment_author_email FROM wp_comments;
[/ NOEDIT]
Полученный список предоставит вам все адреса электронной почты, о которых вы даже не подозревали. В моем случае это было более 2000 адресов электронной почты.
Учитывая, что многие из них (большинство, вероятно) будут поддельными адресами электронной почты, которые в любом случае бесполезны для вас, но есть значительная часть этого списка, составленная из законных адресов электронной почты для читателей, которые проявили достаточный интерес к вашему блогу для публикации комментарий. Подумайте над тем, чтобы отправить маркетинговое электронное письмо, поблагодарив этих людей за комментирование на вашем сайте, и порекомендовать им подписаться на вашу рассылку, чтобы получать регулярные обновления о последних новостях, добавленных в ваш блог.
Определите и удалите неиспользуемые теги
За прошедшие годы вы также можете разработать несколько тегов вашего сайта, которые не используются. Это всегда хорошая идея, чтобы очистить неиспользуемые теги, и вы можете сделать это быстро с помощью нескольких быстрых операторов SQL. Во-первых, чтобы определить список тегов, используя этот запрос:
ВЫБЕРИТЕ имя, слаг
ОТ wp_terms
ГДЕ term_id
В (
ВЫБЕРИТЕ term_id
ОТ wp_term_taxonomy
ГДЕ таксономия = 'post_tag'
AND count = '0'
);
[/ NOEDIT]
Результаты этого запроса будут выглядеть примерно так, как показано ниже. В моем случае я обнаружил в своем блоге 22 неиспользуемых тега, которые мне нужно очистить или применить к законным публикациям.
Вы можете использовать ссылки «Удалить», чтобы удалить отдельные записи тегов из базы данных, или выполнить следующую инструкцию DELETE, чтобы удалить их все массово (используйте с особой осторожностью и только после создания резервной копии базы данных!)
УДАЛИТЬ ИЗ wp_terms
ГДЕ term_id
В (
ВЫБЕРИТЕ term_id
ОТ wp_term_taxonomy
ГДЕ таксономия = 'post_tag'
AND count = '0'
);
[/ NOEDIT]
Это очистит все эти неиспользованные теги одним махом.
Найти сообщения по автору
Вы также можете быстро извлечь список сообщений определенного автора. Сначала зайдите в панель WordPress и перейдите в раздел пользователей. Нажмите на имя пользователя и URL страницы пользователя, вы сможете найти раздел «user_id = xx». Запишите идентификационный номер.
Используйте этот идентификатор в следующем запросе для поиска этих сообщений. В приведенном ниже примере я ищу сообщения, написанные Марком Дорром (пользователь № 11) в моем блоге.
ВЫБЕРИТЕ ID, post_title
ОТ wp_posts
ГДЕ post_status = 'опубликовать'
И post_author = 11;
[/ NOEDIT]
Результатами являются идентификатор и название для каждого сообщения, написанного этим автором.
Если у вас огромный блог, вы можете добавить LIMIT = 1000 или что-то еще в запрос, или вы можете применить поиск по диапазону дат по запросу (см. Ниже).
Поиск контента внутри постов и комментариев
Еще одна интересная вещь, которую вы можете сделать с запросами в WordPress DB — это просеивать содержимое вашего поста для конкретного текста или даже HTML-разметки. Например, допустим, вы хотите найти каждый пост, в который вы вставили картинку, используя «img src = xx». Вы можете использовать символы подстановки SQL для запроса любых слов или предложений, используя эту технику. Вот как выглядит запрос.
ВЫБЕРИТЕ ID, POST_TITLE
ОТ wp_posts
ГДЕ post_content LIKE "% src =%"
И post_status = 'опубликовать'
LIMIT 100;
[/ NOEDIT]
В конце я добавил бит «LIMIT 100», потому что у меня будет более 1000 постов с этим кодом.
Кстати, вы также можете выполнять подобный поиск по шаблону в комментариях WordPress. Это действительно крутой способ найти комментарии, где люди пытались проскользнуть, например, через HTML-ссылки или графические ссылки. Я попытался выполнить поиск в своем блоге и нашел комментарий, о котором даже не знал (и быстро удалил!)
Поиск сообщений по дате
Вы также можете осуществлять поиск по сообщениям в своем блоге по диапазону дат, используя запрос, который проверяет «post_date» и сравнивает его с конкретными датами в верхнем и нижнем диапазоне.
ВЫБЕРИТЕ ID, POST_TITLE
ОТ 'wp_posts'
ГДЕ 'post_type' = 'post'
И 'post_date'> '2009-04-15 08:00:00'
И 'post_date'< '2009-04-30 08:00:00'
LIMIT 100;
[/ NOEDIT]
Вот как выглядят результаты.
Я на самом деле использую этот запрос очень часто, потому что в сочетании с запросом автора или запросом текстового поиска, он обеспечивает гораздо более мощную функциональность поиска, чем любой обычный инструмент поиска, который я использовал. Результаты быстрые и точные.
Расширенный поиск запросов
Конечно, люди, которые очень способны к вызовам SQL, знают, что приведенные выше запросы являются чрезвычайно простыми. Вы можете продвинуться вперед в некоторых из этих поисков, таких как этот запрос, который позволяет вам показать идентификатор сообщения, автора и заголовок ваших последних 1000 сообщений, отсортированных по дате.
Выберите p.id как post_id, u.user_nicename как автора, p.post_title, p.post_name как post_slug, p.post_date как local_publish_date, p.comment_count
ОТ wp_posts p, wp_users u
ГДЕ p.post_status = 'опубликовать'
AND p.post_type = 'post'
AND u.id = p.post_author
ORDER BY p.post_date DESC
LIMIT 500;
[/ NOEDIT]
Такой запрос связывает фактическое имя авторов с идентификатором пользователя в таблице wp_posts. Объединяя данные из разных таблиц, вы можете сделать окончательный вывод для более полезного. Теперь вы можете видеть не только ваш пост недавно опубликованных постов, но и имена авторов, а также количество комментариев к каждому посту.
Лучше всего то, что с каждым из запросов, которые я подробно описал в этом посте, вы можете просто щелкнуть ссылку «Экспорт» в нижней части выходной таблицы, чтобы отправить данные в выходной формат по вашему выбору, такой как файл CSV.
Как видите, переход к вашей базе данных WordPress для поиска содержимого, скрытого внутри вашего блога, может быть эффективным. Используя креативные SQL-запросы, вы можете искать всевозможные подробности о постах - например, сравнение количества постов по автору, количество постов по определенной теме, список комментариев в блоге, где кто-то набрал свой адрес электронной почты, и многое другое. Больше. Вы просто не можете делать такие вещи с панели WordPress.
Знаете ли вы какие-либо творческие запросы к базе данных WordPress для базы данных WordPress? Вы первый раз слышали об этом? Поделитесь своими мыслями и опытом с этой техникой в разделе комментариев ниже!
Кредиты изображений: концепция базы данных через Shutterstock