
Gabriel Brooks
0
1737
59
Я показал вам много способов, с помощью которых WordPress уже является наиболее гибким CMS 5 Вещи, которые вы, возможно, не знали, что могли бы сделать с Wordpress 5 Вещи, которые вы, возможно, не знали, вы могли бы сделать с Wordpress Быть самой универсальной системой ведения блогов когда-либо, это не Удивительно, что разработчики извлекли и превратили Wordpress в гораздо большее благодаря умному использованию плагинов. Если вы думали, что Wordpress был только для ... Быстрое сканирование страницы «Лучшие из плагинов WordPress» также покажет некоторые из множества уникальных и нишевых способов сделать ваш блог более напряженным. Я даже показал вам, как использовать пользовательские типы сообщений Как создать свой собственный список событий с помощью пользовательских типов записей в WordPress Как создать свой собственный список событий с помощью пользовательских типов сообщений в WordPress WordPress позволяет использовать пользовательские типы сообщений для расширения встроенный функционал. Вот как это сделать без плагинов. создать собственную мини-базу данных Создайте базу данных с обзором продуктов с помощью Wordpress: пользовательские типы записей, пользовательские поля, избранные изображения и виджеты! Создайте базу данных отзывов о продуктах с помощью Wordpress: настраиваемые типы записей, настраиваемые поля, избранные изображения и виджеты! В прошлый раз мы показали вам, как создать простой список событий, используя, пожалуй, самую мощную функцию WordPress 3.0 - пользовательские типы записей. После некоторых просьб развивать это дальше, сегодня мы будем…; но я упустил одну вещь, я думаю.
Что если у вас уже есть база данных, например, информация о клиентах, но вы хотите иметь возможность запрашивать эти данные и отображать их в шаблоне WordPress? Сегодня я покажу вам, как это сделать безопасно в движке WordPress..
Требования
- Ваш собственный веб-сайт WordPress, очевидно,.
- Базовые навыки работы с PHP и MySQL - я рекомендую учебные пособия по Tizag PHP и MySQL, так как они охватывают более чем достаточно, и вы можете работать с ними за один день и обращаться к ним снова, когда это необходимо.
- Существующий набор данных в MySQL.
- Командная строка доступа PHPMyAdmin для объединения баз данных.
- Одна база данных с обоими наборами данных - это означает, что вам нужно либо объединить таблицы базы данных WordPress с существующей базой данных, либо изменить WP-config.php отражать новое имя пользователя базы данных и пароль; или импортируйте существующий набор данных в базу данных WordPress. Это проще, если у вас нет другой системы, основанной на данных. В любом случае, я собираюсь предположить, что вы уже сделали этот шаг - ознакомьтесь с моей статьей о том, как сделать полное резервное копирование базы данных через командную строку SSH. Как сделать резервную копию вашего сайта через командную строку SSH. Как сделать резервную копию вашего сайта через SSH. Командная строка Резервное копирование вашего сайта или блога может быть дорогой и трудной задачей, требующей разнообразных плагинов или дополнительных планов от вашего хостинг-провайдера - но это не обязательно должно быть на самом деле. Если у вас есть SSH ... если вам нужны некоторые указатели там.
Этот учебник настолько же продвинут, насколько мы собираемся получить его в MakeUseOf, но он должен открыть вам мир возможностей.
Зачем мне это делать?
Несмотря на множество плагинов и расширений, доступных для нас в WordPress, иногда у вас уже есть набор данных, и перенос его в формат, который нравится WordPress, доставит больше хлопот, чем стоит - особенно если у вас есть другая система, с которой вам нужно взаимодействовать.
Сегодня я возьму пример простой базы данных с информацией о клиентах и создам шаблон страницы, в котором перечислены эти клиенты - только для зарегистрированных пользователей WordPress (хотя сама страница будет доступна из внешнего интерфейса сайта). ).
В качестве справочника по именам столбцов и таблиц в базе данных может оказаться полезным установить плагин Database Browser, который также позволит вам запустить базовый где а также Сортировать по запросы для проверки вашего кода SQL. Вот снимок экрана с образцом набора данных, который я создал - в данном случае это таблица «Клиенты», содержащая некоторую базовую информацию о каждом из моих очень важных клиентов..
Что именно мы будем здесь делать?
- Создание нового шаблона страницы, к которому мы можем затем применить собственный PHP-код.
- Рассмотрим, как создать собственный запрос к базе данных, а затем проанализировать результаты, используя встроенные классы базы данных WordPress..
- Глядя на разрешения на случай, если вы хотите ограничить доступ.
Создание собственного шаблона
Если вы хотите использовать какой-то свой собственный код PHP, самый простой способ сделать это - создать собственный шаблон, а затем применить шаблон к определенной странице, которую вы создаете в WordPress. Начните с открытия файлов вашей темы и дублирования page.php (или же single.php если не один). Переименуйте это в нечто очевидное, например “Шаблон-customers.php” как я выбрал.
В самом верху файла мы должны сказать WordPress, что это пользовательский шаблон. Сделайте это, добавив следующее (это комментарий в стиле PHP, поэтому он должен быть после любого открывающего тега PHP, если имеется):
/ * Название шаблона: Клиенты * /
Очевидно, называйте это как хотите.
Теперь найдите функцию основного контента. Вы можете удалить его, если хотите, но я просто добавлю дополнительный код после него. С темой по умолчанию двадцать одиннадцать, вы ищете:
Но в большинстве тем это будет что-то вроде:
Это бит, который отображает ваш пост контент, поэтому все, что вы добавите после этого, будет показано сразу после основной области контента. Просто чтобы проверить, все ли работает, давайте добавим базовый оператор echo и сохраним файл.
Прежде чем мы сможем это проверить, нам нужно создать страницу на странице администратора WordPress и применить к ней шаблон нашей страницы..
Опубликовать и проверить страницу, чтобы увидеть, сработал ли ваш эхо-оператор.
Класс пользовательских запросов
Чтобы получить прямой доступ к базе данных, все, что вам нужно сделать, это использовать объект $ wpdb, сделав его глобальным. Эти три строки должны это сделать - замените общий оператор echo, который мы сделали ранее, следующим:
get_results ("SELECT * FROM клиентов;"); print_r ($ клиентов); ?>
Сохраните и обновите страницу. функция print_r () просто выгружает все данные из объекта клиента - так что вы должны увидеть, что ваш простой оператор SQL для выбора всего из таблицы клиента работает хорошо. Теперь все, что вам нужно сделать, это проанализировать результаты чего-то полезного. Конечно, вы можете поместить любой оператор SQL в get_results () метод, но я здесь не для того, чтобы научить вас SQL, поэтому мы пока будем просто хватать все.
Чтобы разобрать результаты во что-то более значимое, сейчас я просто воспользуюсь базовой таблицей. Заменить print_r метод со следующим кодом (не волнуйтесь, я вставлю полный код позже, если вы не хотите собирать его вместе):
эхо "
"$ На клиентах> имя." | "; эхо""$ На клиента> по электронной почте." | "; эхо""$ На клиента> телефон." | "; эхо""$ На клиента> адрес." | "; эхо"
Как только у вас есть каждый объект клиента внутри для каждого, Вы можете легко получить доступ к именам полей с $ На клиента> field_name - это действительно не может быть проще.
Закрепление вещей
В этом случае я не хочу, чтобы мои данные о клиентах отображались кому-либо и индексировались поисковыми системами, но я все же хочу, чтобы они отображались во внешнем интерфейсе с использованием этого шаблона; Так что мы можем сделать? Легко, мы собираемся использовать условную WordPress is_user_logged_in (), и отображать быстрое сообщение, если они не. Вот снова весь блок кода с новым условным добавлением:
get_results ("SELECT * FROM клиентов;"); эхо "
"$ На клиентах> имя." | "; эхо""$ На клиента> по электронной почте." | "; эхо""$ На клиента> телефон." | "; эхо""$ На клиента> адрес." | "; эхо"
Сохраните и обновите, и вы все равно должны увидеть содержимое. Тем не менее, выйти, затем обновите страницу, и вы увидите “Извините, только зарегистрированные пользователи ... ” сообщение.
Если вы хотите ограничить это для определенных уровней пользователей, а не для всех зарегистрированных пользователей, то вы должны использовать current_user_can () вместо условного, вместе со связанной возможностью (о возможностях в кодексе). Это будет проверять, например, пользователей-администраторов - единственных пользователей, которые могут управлять параметрами плагина:
current_user_can ('manage_options')
Резюме
Я собираюсь оставить его там сегодня, так как все остальное станет учебником по SQL или стилем вывода с помощью CSS. Небо действительно предел с WordPress, и я надеюсь, что это пригодится некоторым из вас в ваших проектах WordPress.
На следующей неделе я займусь немного более хитрой темой, как вставить данные обратно в вашу пользовательскую базу данных, используя форму на странице, и немного магии AJAX / jQuery. И взгляните на некоторые из наших других руководств WordPress, таких как решение 500 внутренних ошибок сервера и пустых страниц. Окончательное руководство по решению 500 внутренних ошибок сервера и пустых белых страниц в WordPress. Окончательное руководство по решению 500 внутренних ошибок сервера и пустых белых страниц в WordPress Возникли проблемы с 500 внутренними ошибками сервера и пустыми страницами в WordPress? Вот как их исправить сразу. и рекомендуемые размеры миниатюр и изображений Полное руководство по рекомендуемым эскизам и размерам изображений в WordPress Полное руководство по рекомендуемым миниатюрам и размерам изображений в WordPress Здесь есть все, что вам нужно знать о размерах изображений в WordPress и управлении избранными изображениями.. .
У вас еще нет установки WordPress? Ознакомьтесь с нашим руководством по установке WordPress на Bluehost. Как установить WordPress на Bluehost. Как установить WordPress на Bluehost. Bluehost - один из крупнейших и наиболее популярных провайдеров веб-хостинга. Вот простое руководство по установке WordPress на Bluehost. .