Как связать базу данных с wordpress сайтом?
Необходимо создать строку поиска - вводится ID товара, выводится его название и цена.
Вся информация хранится в базе данных, на сайте больше не упоминается. Может быть, есть какой-нибудь плагин, позволяющий это осуществить?
Дополнительные вопросы
Вся информация хранится в базе данных
Речь про стороннюю базу данных или о чём?
Refguser @Refguser Делаю ИМ и другие решения Для работы с кастомными таблицами используется класс wpdb. Ответы на вопрос 0
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Если данные уже лежат в базе WordPress, то «связывать базу с сайтом» не нужно: WordPress уже подключён к этой базе. Нужно сделать форму поиска, принять ID товара, выполнить безопасный запрос к таблице и вывести название/цену. Если данные в сторонней таблице внутри той же базы, можно использовать глобальный объект
$wpdb.Самый простой вариант — shortcode:
add_shortcode('product_lookup', function () { ob_start(); ?> <button type="submit">Найти</button> prefix . 'my_products'; $row = $wpdb->get_row( $wpdb->prepare("SELECT name, price FROM {$table} WHERE external_id = %s LIMIT 1", $id) ); if ($row) { echo '<p><strong>' . esc_html($row->name) . '</strong>: ' . esc_html($row->price) . '</p>'; } else { echo '<p>Товар не найден.</p>'; } } return ob_get_clean(); });
После этого на страницу вставляется shortcode:
[product_lookup]
Важные моменты:
$wpdb->prepare;esc_html;wpdbили PDO.Плагин для такого может быть, но если задача простая — поиск по одному ID и вывод двух полей — надёжнее сделать маленький кастомный shortcode. Так меньше лишней нагрузки и проще контролировать безопасность.