/**
* Plugin Name: Dashboard Posts Graph
* Description: Muestra un gráfico en el dashboard con el número de publicaciones por día y selector de fechas.
* Version: 1.0
* Author: ChatGPT
*/
add_action('admin_enqueue_scripts', function($hook) {
if ($hook === 'index.php') {
wp_enqueue_script('chartjs', 'https://cdn.jsdelivr.net/npm/chart.js', [], null, true);
wp_enqueue_script('dp-graph', plugin_dir_url(__FILE__) . 'script.js', ['chartjs', 'jquery'], null, true);
wp_localize_script('dp-graph', 'dpGraphAjax', ['ajaxurl' => admin_url('admin-ajax.php')]);
}
});
add_action('wp_dashboard_setup', function() {
wp_add_dashboard_widget('dashboard_posts_graph', 'Gráfico de Publicaciones Diarias', function() {
echo ' ';
echo '';
});
});
add_action('wp_ajax_get_post_counts', function() {
global $wpdb;
$start_date = sanitize_text_field($_GET['start']);
$end_date = sanitize_text_field($_GET['end']);
$results = $wpdb->get_results($wpdb->prepare("
SELECT DATE(post_date) as date, COUNT(*) as count
FROM $wpdb->posts
WHERE post_type = 'post' AND post_status = 'publish'
AND post_date BETWEEN %s AND %s
GROUP BY DATE(post_date)
ORDER BY date ASC
", $start_date, $end_date));
wp_send_json($results);
});
amarres - Chile Trends