Voici un fichier PHP autonome que vous pouvez enregistrer à la racine de votre site Web appelé quelque chose comme /export.php
et lorsque vous l'appelez avec votre navigateur, il enverra un texte brut délimité par des tabulations liste des posts avec le joli permalien, le titre du post et (en bonus) le type de post.
Chargez simplement l'URL dans votre navigateur, puis "enregistrer sous " dans un fichier texte que vous pouvez ensuite charger dans Excel ou de toute autre manière dont vous avez besoin pour le traiter.
<?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}";
}
J'espère que cela vous aidera.
-Mike
PS J'ai utilisé le standard WordPress WP_Query()
mais également inclus un SQL commenté au cas où vous préféreriez (ou auriez besoin) de l'utiliser à la place.