Запрос Mysql не работает в WordPress 4.2.2

Мой друг создал плагин генератора xml, который отлично работает с WP 3.5, но мне нужно обновить для 4.2.2 (вызывают безопасность), и теперь плагины сказали «Нет выбранной базы данных», но данные / данные в wp-config. Файл php верен.

Плагин:

<?php require_once('../../../wp-config.php'); if(file_exists('../../../wp-config.php')){ echo 'Database is exist'; }else{ echo 'n'; } $xmlFile = plugin_dir_path( __FILE__ ).'test.xml'; unset($sitemapContent); $sitemapContent = '<?xml version="1.0" encoding="UTF-8" ?>'."\n"; $sitemapContent .= '<products>'."\n"; $getProductsRes = mysql_query("SELECT * FROM wp_posts WHERE post_type = 'product' AND post_status = 'publish' AND post_parent = '0'"); if($getProductsRes){ }else{ echo mysql_error(); } 

«База данных существует» видна, но запрос не выполнен.

EDIT: О, я нашел решение. В WP 3.9 и heighter не поддерживается mysql_query больше: Link

Сначала попробуйте «самонастраивать» WordPress для вашего пользовательского сценария: include '../../../wp-load.php' (вам может понадобиться настроить путь для ваших нужд).

Затем вы можете безопасно использовать класс $ wpdb, например $ wpdb-> get_results и другие лакомства. Не забудьте выйти / очистить входящие данные, если они есть. Документация WordPress по $ wpdb

PS: всегда старайтесь использовать «встроенные» функции. Кодекс выше – золото.