Eroare $wpdb - Call to a member function get_results() on a non-object în WordPress
4 nov. 2014, 17:11:16
Vizualizări: 15.3K
Voturi: 2
Am această eroare "Call to a member function get_results() on a non-object in" din următorul cod:
require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-config.php');
require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-load.php');
if (!$wpdb) {
$wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST);
} else {
global $wpdb;
}
function vendorDatails( $param)
{
if ((substr ($param, 0, 0)) == '#')
{
substr($param, 1);
}
$order_ids = $wpdb->get_results(
"
SELECT DISTINCT vendor_id
FROM $wpdb->lqrhxf_pv_commission
WHERE order_id = %d
",
$param
);
foreach ( $order_ids as $order_id )
{
echo $order_id->vendor_id;
}
}
Parametrii bazei de date sunt încărcați cu succes dar primesc eroarea pe linia de mai sus când folosesc variabila $wpdb:
$order_ids = $wpdb->get_results(

GabrieleU
23
Toate răspunsurile la întrebare
2
0
Aceasta este o problemă de domeniu de vizibilitate pentru variabile PHP, nu există nicio variabilă $wpdb
definită în funcția ta.
Adaugă
global $wpdb;
înainte de a încerca să folosești obiectul $wpdb
.

Milo
78.9K
4 nov. 2014 17:24:59
1
Când dorești să utilizezi funcționalitățile WordPress în afara mediului WordPress, poți folosi:
include_once($_SERVER['DOCUMENT_ROOT'].'/wp-load.php');
Apoi vei putea accesa funcționalitățile WordPress. Verifică acest lucru. Dacă vrei să accesezi doar funcțiile de bază de date, folosește:
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-config.php' );
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-includes/wp-db.php' );
if (!$wpdb) {
$wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST);
} else {
global $wpdb;
}

Yogesh Bangar
101
27 iun. 2019 14:53:17
Întrebări similare
2
răspunsuri
5
răspunsuri
2
răspunsuri