Recuperare e visualizzare dati da una tabella personalizzata del database nell'area amministrativa?
Ho un problema con un plugin che sto sviluppando e mi chiedo se qualcuno può fare luce sulla situazione, dato che molte, MOLTE ricerche non hanno portato ad alcun aiuto. :-/
In pratica, il mio plugin crea diverse entità personalizzate nel database di WordPress, che funzionano tutte bene. Ho aggiunto una funzione shortcode per inserire un form in una pagina per inviare informazioni, che funziona anch'essa correttamente.
Il mio problema è quando voglio recuperare i dati da queste entità personalizzate e visualizzarli nella sezione amministrativa di WordPress (sia in un widget della dashboard che in una pagina plugin personalizzata), non funziona. Punto.
La mia funzione di esempio per recuperare i dati è la seguente:
function showApplicants(){
global $wpdb;
$appTable = $wpdb->prefix . "applications";
$query = $wpdb->prepare("SELECT * FROM $appTable WHERE %d >= '0'", RID);
$applications = $wpdb->get_results($query);
foreach ( $applications as $application )
{
echo $application->title . " " . $application->app_firstName . " " . $application->app_surName . "<br/>";
}
}
Stranamente, quando questo codice viene inserito in una pagina fuori dall'area amministrativa di WordPress (ad esempio, una pagina creata con WordPress, tramite una funzione shortcode che semplicemente genera questo codice, o su una pagina che creo e aggiungo io stesso con questo codice nel template), funziona! Recupera le informazioni corrette e le visualizza come previsto.
Se lo aggiungo a un widget della dashboard, nessun risultato. Se lo aggiungo a una pagina personalizzata all'interno della sezione amministrativa, di nuovo, nessun risultato.
Sono bloccato. Qualche consiglio?
P.S. - Per evitare confusione, la variabile globale $wpdb è dichiarata più in alto nel codice, quindi non c'è bisogno di dichiararla di nuovo (anche se ho provato a dichiararla di nuovo all'interno della funzione e comunque non ha funzionato).
Qualsiasi aiuto sarebbe molto apprezzato!
Grazie mille!

Codice funzionante per aggiungere un widget alla dashboard di WordPress con informazioni da un database personalizzato:
/**
* Aggiunge un widget delle applicazioni alla dashboard.
*/
function addApplicationWidget() {
wp_add_dashboard_widget(
'submitted_applications',
'Applicazioni Inviate',
'showApplicants'
);
}
add_action( 'wp_dashboard_setup', 'addApplicationWidget' );
function showApplicants() {
global $wpdb;
$appTable = $wpdb->prefix . "applications";
$query = $wpdb->prepare("SELECT * FROM $appTable WHERE %d >= '0'", RID);
$applications = $wpdb->get_results($query);
foreach ( $applications as $application ) {
echo $application->title . " " . $application->app_firstName . " " . $application->app_surName . "<br/>";
}
}
