地球历史上的今天发生了哪些事情?

AI推动EACO发展,训练AI推动地球EACO在宇宙/地球前20大行业中的应用的探索实验.

地球历史上的今天发生了哪些事情?

2025年8月27日 比特币地球链 0

地球历史上的今天发生了哪些事情?

地球历史上的今天发生了哪些事情?
有这样的源码可以在服务器上面运行吗?
PHP,JS等网页HTML代码最好。

可以将“地球历史上的今天”功能直接部署到WordPress服务器,只需通过​​自定义页面模板+自定义文章类型+简单PHP/JS代码​​即可实现。以下是具体步骤:

​一、核心思路​

利用WordPress的​​自定义文章类型(Custom Post Type, CPT)​​存储历史事件数据(替代之前的硬编码),通过​​自定义页面模板​​渲染前端页面,并调用WordPress内置的WP_Query获取数据。无需复杂插件,兼容主流WordPress版本(5.0+)。

​二、部署步骤​

​1. 准备工作​

  • 确保WordPress已安装并运行(服务器需支持PHP 7.0+、MySQL 5.6+)。
  • 登录WordPress后台,进入 ​​设置→固定链接​​,选择“文章名”或“自定义结构”(确保URL友好)。

​2. 创建自定义文章类型(存储历史事件)​

通过代码或插件(如“Custom Post Type UI”)创建自定义文章类型,用于管理历史事件数据。这里以​​手动添加代码​​为例(更灵活):

​步骤:​

  1. 进入WordPress后台,进入 ​​外观→主题编辑器​​。
  2. 选择当前使用的主题(如Twenty Twenty-Four),点击 ​​主题文件→添加新文件​​。
  3. 新建文件 custom-post-type-history.php,粘贴以下代码:
<?php
/**
 * 注册自定义文章类型:历史事件
 */
function create_history_post_type() {
    $args = [
        'public'             => true,
        'label'              => '历史事件',
        'menu_icon'          => 'dashicons-calendar-alt',
        'supports'           => ['title', 'editor', 'thumbnail', 'excerpt'],
        'has_archive'        => true,
        'rewrite'            => ['slug' => 'history-event'], // 自定义文章URL别名
        'show_in_rest'       => true, // 允许Gutenberg编辑器编辑
    ];
    register_post_type('history_event', $args);
}
add_action('init', 'create_history_post_type');
  1. 保存文件并刷新后台,即可在左侧菜单看到 ​​“历史事件”​​ 文章类型(需清除缓存)。

​3. 添加历史事件数据​

通过WordPress后台添加历史事件(无需代码):

  • 进入 ​​历史事件→添加新文章​​。
  • 填写标题(如“林白首次单人跨大西洋飞行”)、内容(详细描述)、特色图像(可选),点击 ​​发布​​。

​4. 创建自定义页面模板(渲染前端)​

创建一个WordPress页面模板,用于展示历史事件列表。

​步骤:​

  1. 在主题目录(如wp-content/themes/twentytwentyfour/)新建文件 page-history-today.php
  2. 粘贴以下代码(包含前端HTML+PHP数据获取+JS动态渲染):
<?php
/**
 * 模板名称:历史上的今天
 */
get_header(); ?>

<div class="container">
    <h1 class="page-title">🌍 地球历史上的今天(<?php echo date('Y年m月d日'); ?>)</h1>
    <div id="events-container" class="events-grid">
        <?php
        // 查询今日历史事件(假设事件日期存储在自定义字段'date'中)
        $today = date('Y-m-d');
        $args = [
            'post_type'      => 'history_event',
            'posts_per_page' => -1,
            'meta_query'     => [
                [
                    'key'     => 'date',
                    'value'   => $today,
                    'compare' => '=',
                ]
            ]
        ];
        $events_query = new WP_Query($args);

        if ($events_query->have_posts()) :
            while ($events_query->have_posts()) : $events_query->the_post();
                $date = get_the_date('Y年m月d日'); // 获取事件日期
                $title = get_the_title();
                $content = apply_filters('the_excerpt', get_the_excerpt()); // 内容摘要
                $image = get_the_post_thumbnail_url(get_the_ID(), 'medium'); // 特色图像
                ?>
                <div class="event-card">
                    <h2><?php echo esc_html($title); ?></h2>
                    <p class="date"><?php echo esc_html($date); ?></p>
                    <p class="content"><?php echo esc_html($content); ?></p>
                    <?php if ($image) : ?>
                        <img src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>" class="event-image">
                    <?php endif; ?>
                </div>
            <?php endwhile; ?>
            <?php wp_reset_postdata(); ?>
        <?php else : ?>
            <p>今日暂无历史事件记录。</p>
        <?php endif; ?>
    </div>
</div>

<?php get_footer(); ?>

​5. 关联自定义页面模板​

将新创建的模板关联到WordPress页面:

  • 进入 ​​页面→添加新页面​​。
  • 标题填写“历史上的今天”,在 ​​模板​​ 下拉菜单中选择 ​​“历史上的今天”​​(即刚创建的page-history-today.php)。
  • 点击 ​​发布​​,访问该页面即可看到动态渲染的历史事件。

​6. 优化样式(可选)​

在主题的style.css中添加以下CSS(或通过 ​​外观→自定义→额外CSS​​ 添加),优化页面显示:

/* 历史事件卡片样式 */
.events-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    margin-top: 30px;
}

.event-card {
    background: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.event-card:hover {
    transform: translateY(-5px);
}

.event-card h2 {
    color: #2c3e50;
    margin-top: 0;
}

.event-card .date {
    color: #7f8c8d;
    font-size: 0.9em;
    margin: 10px 0;
}

.event-card .content {
    color: #34495e;
    margin: 15px 0;
}

.event-card .event-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 4px;
    margin-top: 10px;
}

@media (max-width: 768px) {
    .events-grid {
        grid-template-columns: 1fr;
    }
}

​三、扩展与优化​

​1. 自动获取历史事件数据(替代手动添加)​

若需自动填充历史事件(如从外部API获取),可通过​​自定义函数+定时任务​​实现:

  • 使用wp_schedule_event设置每日定时任务,调用外部API(如维基百科“On This Day”接口)获取当日事件。
  • 将获取的数据通过wp_insert_post插入到自定义文章类型history_event中。

​2. 添加搜索功能​

在页面中添加搜索框,允许用户搜索历史事件:

  • page-history-today.php中添加搜索表单:<form method="get" action="<?php echo home_url(); ?>"> <input type="text" name="s" placeholder="搜索历史事件..."> <input type="submit" value="搜索"> </form>
  • 修改WP_Query参数,支持搜索:$search = isset($_GET['s']) ? sanitize_text_field($_GET['s']) : ''; $args['s'] = $search; // 添加搜索关键词

​3. 多语言支持​

若需支持英文等多语言,可通过​​WPML插件​​或WordPress内置的pll__()函数实现:

  • 在事件内容中使用pll__():$content = pll__(get_the_excerpt()); // 输出翻译后的内容

​四、总结​

通过以上步骤,可将“地球历史上的今天”功能快速部署到WordPress服务器,核心优势是:

  • ​无需复杂插件​​:利用WordPress原生功能(自定义文章类型、页面模板)实现。
  • ​易于维护​​:历史事件通过后台管理,无需修改代码。
  • ​扩展性强​​:支持自动数据填充、搜索、多语言等功能扩展。

部署完成后,用户可通过http://你的WordPress域名/历史上的今天/访问页面,查看当日历史事件。


【EACO代码重构e文明】 代码e即财富,
EACO地球E连接地球和宇宙的一切,e连接地球和宇宙万物。
e&EACO(Earth’s Best Coin),
EACO is Earth’s best friend;
$e=$eaco(DqfoyZH96RnvZusSp3Cdncjpyp3C74ZmJzGhjmHnDHRH).
计算劳动价值,量化地球资源;总量13.5亿个;