O código abaixo faz parte do código do plugin Storie Plus Plugin, correspondente ao arquivo: Storie Plus Plugin/storieplus_plugin/requests.php
<?php
function myplugin_add_admin_page() {
add_submenu_page(
'myplugin', // slug do menu principal
'Registros das Solicitações', // título da página
'Registros', // título do menu
'manage_options', // capacidade
'myplugin_requests', // slug do menu
'myplugin_requests_callback' // função de callback
);
}
add_action('admin_menu', 'myplugin_add_admin_page');
function myplugin_requests_callback() {
$requests = get_option('myplugin_requests', array());
echo '<h2>Registros de Solicitações</h2>';
echo '<table>';
echo '<tr><th>URL</th><th>Horário</th><th>Tempo de execução (segundos)</th></tr>';
foreach ($requests as $request) {
echo '<tr>';
echo '<td>' . esc_html($request['url']) . '</td>';
echo '<td>' . esc_html($request['time']) . '</td>';
echo '<td>' . esc_html($request['execution_time']) . '</td>';
echo '</tr>';
}
echo '</table>';
}
function myplugin_post_request($url, $body) {
$start_time = microtime(true);
$response = wp_remote_post($url, array('body' => $body));
$end_time = microtime(true);
$execution_time = ($end_time - $start_time);
if (is_wp_error($response)) {
$error_message = $response->get_error_message();
echo "Algo deu errado: $error_message";
} else {
// salva as informações da solicitação em uma opção do WordPress
$requests = get_option('myplugin_requests', array());
$requests[] = array(
'url' => $url,
'time' => current_time('mysql'), // tempo atual no formato MySQL
'execution_time' => $execution_time, // tempo de execução em segundos
);
update_option('myplugin_requests', $requests);
}
}
Você pode baixar o plugin wordpress: Storie Plus Plugin, clicando no link a seguir: https://wordpress.org