sql >> Databasteknik >  >> RDS >> Mysql

Exportera lista med vackra permalänkar och inläggstitel

Här är en fristående PHP-fil som du kan spara i roten på din webbplats som heter något som /export.php och när du anropar det med din webbläsare kommer det att skicka en tabbavgränsad vanlig text lista över inlägg med den vackra permalänken, inläggets titel och (som en bonus) inläggstypen.

Ladda bara in webbadressen i din webbläsare och sedan "spara som " till en textfil kan du sedan ladda i Excel eller hur du än behöver bearbeta den.

<?php

include "wp-load.php";

$posts = new WP_Query('post_type=any&posts_per_page=-1&post_status=publish');
$posts = $posts->posts;
/*
global $wpdb;
$posts = $wpdb->get_results("
    SELECT ID,post_type,post_title
    FROM {$wpdb->posts}
    WHERE post_status<>'auto-draft' AND post_type NOT IN ('revision','nav_menu_item')
");
*/

header('Content-type:text/plain');
foreach($posts as $post) {
    switch ($post->post_type) {
        case 'revision':
        case 'nav_menu_item':
            break;
        case 'page':
            $permalink = get_page_link($post->ID);
            break;
        case 'post':
            $permalink = get_permalink($post->ID);
            break;
        case 'attachment':
            $permalink = get_attachment_link($post->ID);
            break;
        default:
            $permalink = get_post_permalink($post->ID);
            break;
    }
    echo "\n{$post->post_type}\t{$permalink}\t{$post->post_title}";
}

Hoppas detta hjälper.

-Mike

P.S. Jag använde standard WordPress WP_Query() men inkluderade också en kommenterad SQL om du föredrar (eller behöver) använda den istället.



  1. Alfanumerisk ordning efter i Mysql

  2. SQL-fråga har fastnat i statistiktillstånd

  3. MySQL slår samman två tabell-ID:n för att producera resultat från en tabell till en annan

  4. Hur man infogar json array i mysql databas