mysql - 导出漂亮的永久链接和帖子标题列表

标签 mysql wordpress

寻找一种方法来导出 WordPress 中漂亮的永久链接列表以及相应的帖子标题。寻找实际的永久链接结构,而不是短链接。我想如果必须,我会使用短链接,但我更喜欢完整的永久链接。

最佳答案

这是一个独立的 PHP 文件,您可以将其保存到网站的根目录中,名称类似于 /export.php,当您使用浏览器调用它时,它会发送一个 制表符分隔的纯文本text 具有漂亮永久链接、帖子标题和(作为奖励)帖子类型的帖子列表。

只需在您的浏览器中加载 URL,然后“另存为”到一个文本文件,然后您可以在 Excel 中加载该文件,或者您需要以其他方式处理它。

<?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}";
}

希望这对您有所帮助。

-迈克

附:我使用了标准的 WordPress WP_Query(),但也包括了一个注释掉的 SQL,以防您更喜欢(或需要)使用它。

关于mysql - 导出漂亮的永久链接和帖子标题列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3464701/

相关文章:

mysql - 多个表的正确连接/左连接 +

jquery - 在临时 div 包装器中包装短代码以进行编辑,然后在保存内容之前将其删除

wordpress - 如果网站使用 Divi,如何创建模板?

php - Woocommerce 插件 - 更新库存

mysql - 在 MySQL 触发器中获取 CURRENT_USER 返回错误值

MySQL 触发器检查值是否存在于另一个数据库的表中

wordpress - WooCommerce - 翻译结帐页面上的单词

javascript - WordPress 网站的 header.php 文件中发现未知代码

php - 如何使用复选框在 mySQL 中输入 true (1) 或 false (0) 并在 php/html 表单中显示为选中状态?

mysql - 尝试创建 MySQL 临时表会导致错误 "Base table or view not found"?