ホームページ  >  記事  >  CMS チュートリアル  >  Wordpressでカスタムボタンを追加してCSV出力する方法を詳しく解説

Wordpressでカスタムボタンを追加してCSV出力する方法を詳しく解説

藏色散人
藏色散人転載
2021-09-11 17:18:453142ブラウズ

WordPress の次のチュートリアル コラムでは、WordPress バックグラウンドでカスタム ボタンを追加し、CSV をエクスポートする方法を紹介します。

Wordpressでカスタムボタンを追加してCSV出力する方法を詳しく解説

Wordpress の背景に csv をエクスポートするためのカスタム ボタンが追加されました

wp-admin/edit で次のコードを見つけます。 php :

<?php
if ( current_user_can( $post_type_object->cap->create_posts ) ) {
    echo ' <a href="&#39; . esc_url( admin_url( $post_new_file ) ) . &#39;" class="page-title-action">' . esc_html( $post_type_object->labels->add_new ) . '</a>';
}
上記のコードの次の行に次のコードを追加します。

if ($post_type == 'aaa') {
    echo ' <a href="&#39;.esc_url( admin_url(&#39;admin-ajax.php?action=export_permanent_csv&#39;)).&#39;" class="page-title-action">CSVをエクスポート</a>';
}
$post_type は、このファイルのヘッダーから取得される記事のタイプです。

wp-content/themes/hcr/functions/admin.php

function export_permanent_csv()
{
    $args = array(
            'post_type' => 'aaa',
            'numberposts' => -1,
            'meta_key' => 'mark_id',
            'orderby' => 'meta_value_num',
            'order' => 'ASC',
            );
    $posts = get_posts($args);
    if (empty($posts)) {
        return;
    }
    $noNumber = 1;
    foreach ($posts as $post) {
        $metaData = get_post_meta($post->ID);
        $data = [
            $metaData['mark_id'][0],
            $noNumber,
            $post->post_title,
            $metaData['prmnnt_address'][0],
            $metaData['prmnnt_tel'][0],
            $metaData['prmnnt_fax'][0],
            $metaData['prmnnt_site'][0],
            $metaData['prmnnt_time'][0],
            $metaData['prmnnt_closing'][0],
            $metaData['prmnnt_service'][0],
            $metaData['prmnnt_class'][0],
            $post->post_type,
        ];
        $csv_output .= '"'.implode('","', $data).'"'."\n";
        $noNumber++;
    }
    $csv_output .= "\n";
    $filename = $file."_".date("Ymd", time());
    header("Content-type: application/vnd.ms-excel");
    header("Content-disposition: csv" . date("Y-m-d") . ".csv");
    header("Content-disposition: filename=".$filename.".csv");
    print $csv_output;
    exit;

}
add_action('wp_ajax_export_permanent_csv', 'export_permanent_csv');

以上がWordpressでカスタムボタンを追加してCSV出力する方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はwordpressで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。