Widget Dashboard desenhado antes de abrir a tag HTML

Estou fazendo o meu primeiro widget do painel e está sendo exibido com sucesso, mas o HTML de saída da function abaixo está aparecendo antes da abertura da tag HTML na página do painel.

O código envolvido está abaixo. Preciso de uma chamada de boot antes da chamada add_action ()?

function example_add_dashboard_widgets() { wp_add_dashboard_widget( 'donationsmtcarmel', // Widget slug. 'Mt. Carmel Donations', // Title. 'draw_widget' // Display function. ); } add_action( 'wp_dashboard_setup', 'draw_widget' ); function draw_widget() { $dObj = new Donation; $donations = $dObj->retrieve("`paypal_txn` != '' AND `archived` = '0' ORDER BY `date` DESC"); echo ' 

Mt. Carmel Donations

'; echo "

Recent Donations:

"; if ($donations) { foreach ($donations as $d) { echo $d->donor_name.'   $'.$d->tx()->mc_gross.'   '.date('n/j/Y g:i A', strtotime($d->date))."
\n"; } } else { echo 'None.'; } echo '

Donations Page

'; }

Solutions Collecting From Web of "Widget Dashboard desenhado antes de abrir a tag HTML"

O seu add_action deve chamar a function que registra o widget do painel, que, por sua vez, chama a function para renderizar o widget. Agora você tem o add_action chamando a function para renderizar o widget diretamente.

mudança:

 add_action( 'wp_dashboard_setup', 'draw_widget' ); 

para:

 add_action( 'wp_dashboard_setup', 'example_add_dashboard_widgets' );