...
✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kuidas WordPressis postitusi CSV-ks eksportida

16

WordPress on ajaveebiplatvorm. Blogi pole midagi muud kui postituste kogu. Mõne stsenaariumi korral võiksite oma postituste loendit kellegagi CSV-faili kaudu jagada. Abiks on kiire ülevaade kõigist postitustest ilma armatuurlauale sisse logimata. Sellist CSV-d kasutades saate hõlpsasti leida postituse pealkirja ja nende püsilingi. Selles artiklis näitan teile, kuidas WordPressis postitusi CSV-vormingus eksportida.

Lisan taustaprogrammi loendi lehele ühe kohandatud nupu. Sellel nupul klõpsates laaditakse CSV-fail automaatselt alla, mis sisaldab teavet postituste kohta.

Näiteks eksportin postituse pealkirja, postituse URL-i, kategooriad ja sildid CSV-faili. Kasutaja saab sellele lisada rohkem välju. Lõplik väljund on umbes selline nagu allpool olev ekraanipilt.

Kuidas WordPressis postitusi CSV-ks eksportida

Lisage postituste loendis kohandatud nupp

CSV loomiseks peame kõigepealt andma nupu taustaprogrammi postituse loendis. Lisaks kirjutame sellel nupul klõpsates koodi, mis genereerib CSV.

Avage functions.phpfail ja asetage sellesse allolev kood.

function admin_post_list_add_export_button( $which) {
    global $typenow;
  
    if ('post' === $typenow && 'top' === $which) {
        ?>
        <input type="submit" name="export_all_posts" class="button button-primary" value="<?php _e('Export All Posts'); ?>" />
        <?php
    }
}
 
add_action( 'manage_posts_extra_tablenav', 'admin_post_list_add_export_button', 20, 1 );

Ülaltoodud kood lisab postituste loendisse nupu "Ekspordi kõik postitused", nagu ekraanipildil näidatud. Siin olen konksu manage_posts_extra_tablenavabil kohandatud nuppu paigutanud lehele ‘Kõik postitused’.

Kuidas WordPressis postitusi CSV-ks eksportida

Tegelik kood postituste eksportimiseks CSV-sse

Selles etapis olete valmis oma kohandatud nupuga, mis peaks genereerima CSV. Lisame nüüd koodi, mis genereerib CSV ühe nupuvajutusega, ja saadame selle brauserisse allalaadimiseks.

Lisage functions.phpfaili allolev kood .

function func_export_all_posts() {
    if(isset($_GET['export_all_posts'])) {
        $arg = array(
            'post_type' => 'post',
            'post_status' => 'publish',
            'posts_per_page' => -1,
        );
  
        global $post;
        $arr_post = get_posts($arg);
        if ($arr_post) {
  
            header('Content-type: text/csv');
            header('Content-Disposition: attachment; filename="wp-posts.csv"');
            header('Pragma: no-cache');
            header('Expires: 0');
  
            $file = fopen('php://output', 'w');
  
            fputcsv($file, array('Post Title', 'URL', 'Categories', 'Tags'));
  
            foreach ($arr_post as $post) {
                setup_postdata($post);
                  
                $categories = get_the_category();
                $cats = array();
                if (!empty($categories)) {
                    foreach ($categories as $category) {
                        $cats[] = $category->name;
                    }
                }
  
                $post_tags = get_the_tags();
                $tags = array();
                if (!empty($post_tags)) {
                    foreach ($post_tags as $tag) {
                        $tags[] = $tag->name;
                    }
                }
  
                fputcsv($file, array(get_the_title(), get_the_permalink(), implode(",", $cats), implode(",", $tags)));
            }
  
            exit();
        }
    }
}
 
add_action( 'init', 'func_export_all_posts' );

See selleks! Edasi ja proovige. Peaksite hankima CSV-faili koos oma postituse teabega.

Loodan, et saate aru, kuidas WordPressis postitusi CSV-sse eksportida. Palun jagage oma mõtteid ja ettepanekuid allpool olevas kommentaaride jaotises.

seotud artiklid

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem