Меню заголовка включено в экспортированный лист Excel на первых страницах WordPress - PullRequest
0 голосов
/ 07 февраля 2020
$now = gmdate('D, d M Y H:i:s') . ' GMT';
  $filename ="analysis_report.xls";
  header('Content-type: application/ms-excel');
  header('Expires: ' . $now);
  header('Content-Disposition: attachment; filename='.$filename);
  header('Pragma: no-cache');
  require(SB_PATH."views/export_analysis/analysis_report_export.php");
  exit;

Я должен экспортировать динамические c html данные таблиц в WordPress. Пользовательские данные поступают нормально, но меню заголовков также включается в Excel-лист. Тот же код отлично работает в WordPress-бэкенде. Вот скриншот https://prnt.sc/qyw9v6

Пожалуйста, предложите исправить это.

1 Ответ

0 голосов
/ 07 февраля 2020

Ваш вопрос немного расплывчатый ... но ответ на вопрос, почему вы видите csv в каждом файле, заключается в том, что вы включаете его после отправки заголовков. Это означает, что вам нужно подключить вашу функцию к init или admin_init в зависимости от обстоятельств.

Также .. Вы хотите запускать функцию экспорта в csv только при нажатии кнопки. Я делаю что-то вроде этого.

// CSV Export
if (isset($_REQUEST['do']) && $_REQUEST['do'] == 'download' && $_GET['page'] == 'your-page-slug'){
    add_action('admin_init', 'download_csv_file');
}

Я запускаю экспорт csv с помощью кнопки на странице администратора, как это.

<a class="button-primary" href="<?php echo admin_url('admin.php?page=your-page-slug&do=download');?>&_wpnonce=<?php echo wp_create_nonce( 'download_csv' )?>">Download Existing Data</a>

Я полагаю, с информацией выше, вы должны быть в состоянии решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...