관리-도구
편집 파일: html-report-by-date.php
<?php /** * Admin View: Report by Date (with date filters) * * @package Kkart\Admin\Reporting */ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } ?> <div id="poststuff" class="kkart-reports-wide"> <div class="postbox"> <?php if ( 'custom' === $current_range && isset( $_GET['start_date'], $_GET['end_date'] ) ) : ?> <h3 class="screen-reader-text"> <?php /* translators: 1: start date 2: end date */ printf( esc_html__( 'From %1$s to %2$s', 'kkart' ), esc_html( kkart_clean( wp_unslash( $_GET['start_date'] ) ) ), esc_html( kkart_clean( wp_unslash( $_GET['end_date'] ) ) ) ); ?> </h3> <?php else : ?> <h3 class="screen-reader-text"><?php echo esc_html( $ranges[ $current_range ] ); ?></h3> <?php endif; ?> <div class="stats_range"> <?php $this->get_export_button(); ?> <ul> <?php foreach ( $ranges as $range => $name ) { echo '<li class="' . ( $current_range == $range ? 'active' : '' ) . '"><a href="' . esc_url( remove_query_arg( array( 'start_date', 'end_date' ), add_query_arg( 'range', $range ) ) ) . '">' . esc_html( $name ) . '</a></li>'; } ?> <li class="custom <?php echo ( 'custom' === $current_range ) ? 'active' : ''; ?>"> <?php esc_html_e( 'Custom:', 'kkart' ); ?> <form method="GET"> <div> <?php // Maintain query string. foreach ( $_GET as $key => $value ) { if ( is_array( $value ) ) { foreach ( $value as $v ) { echo '<input type="hidden" name="' . esc_attr( sanitize_text_field( $key ) ) . '[]" value="' . esc_attr( sanitize_text_field( $v ) ) . '" />'; } } else { echo '<input type="hidden" name="' . esc_attr( sanitize_text_field( $key ) ) . '" value="' . esc_attr( sanitize_text_field( $value ) ) . '" />'; } } ?> <input type="hidden" name="range" value="custom" /> <input type="text" size="11" placeholder="yyyy-mm-dd" value="<?php echo ( ! empty( $_GET['start_date'] ) ) ? esc_attr( wp_unslash( $_GET['start_date'] ) ) : ''; ?>" name="start_date" class="range_datepicker from" autocomplete="off" /><?php //@codingStandardsIgnoreLine ?> <span>–</span> <input type="text" size="11" placeholder="yyyy-mm-dd" value="<?php echo ( ! empty( $_GET['end_date'] ) ) ? esc_attr( wp_unslash( $_GET['end_date'] ) ) : ''; ?>" name="end_date" class="range_datepicker to" autocomplete="off" /><?php //@codingStandardsIgnoreLine ?> <button type="submit" class="button" value="<?php esc_attr_e( 'Go', 'kkart' ); ?>"><?php esc_html_e( 'Go', 'kkart' ); ?></button> <?php wp_nonce_field( 'custom_range', 'kkart_reports_nonce', false ); ?> </div> </form> </li> </ul> </div> <?php if ( empty( $hide_sidebar ) ) : ?> <div class="inside chart-with-sidebar"> <div class="chart-sidebar"> <?php if ( $legends = $this->get_chart_legend() ) : ?> <ul class="chart-legend"> <?php foreach ( $legends as $legend ) : ?> <?php // @codingStandardsIgnoreStart ?> <li style="border-color: <?php echo $legend['color']; ?>" <?php if ( isset( $legend['highlight_series'] ) ) echo 'class="highlight_series ' . ( isset( $legend['placeholder'] ) ? 'tips' : '' ) . '" data-series="' . esc_attr( $legend['highlight_series'] ) . '"'; ?> data-tip="<?php echo isset( $legend['placeholder'] ) ? $legend['placeholder'] : ''; ?>"> <?php echo $legend['title']; ?> </li> <?php // @codingStandardsIgnoreEnd ?> <?php endforeach; ?> </ul> <?php endif; ?> <ul class="chart-widgets"> <?php foreach ( $this->get_chart_widgets() as $widget ) : ?> <li class="chart-widget"> <?php if ( $widget['title'] ) : ?> <h4><?php echo esc_html( $widget['title'] ); ?></h4> <?php endif; ?> <?php call_user_func( $widget['callback'] ); ?> </li> <?php endforeach; ?> </ul> </div> <div class="main"> <?php $this->get_main_chart(); ?> </div> </div> <?php else : ?> <div class="inside"> <?php $this->get_main_chart(); ?> </div> <?php endif; ?> </div> </div>