详解wordpress怎么添加自定义按钮并导出csv

发布时间:2021-10-17 00:52 来源: 阅读:0 作者:藏色散人 栏目: CMS教程 欢迎投稿:712375056

下面由教程栏目给大家介绍wordpress后台怎么添加自定义按钮并导出csv,希望对需要的朋友有所帮助!

wordpress 后台添加自定义按钮导出csv

在wp-admin/edit.php中找到如下代码:

<?php
if ( current_user_can( $post_type_object->cap->create_posts ) ) {
    echo ' <a href="' . esc_url( admin_url( $post_new_file ) ) . '" class="page-title-action">' . esc_html( $post_type_object->labels->add_new ) . '</a>';
}

在上面代码的下一行加入如下代码:

if ($post_type == 'aaa') {
    echo ' <a href="'.esc_url( admin_url('admin-ajax.php?action=export_permanent_csv')).'" 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');

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。