更改Wordpress主题,但保留旧主题的所有旧文章

时间:2014-04-13 07:28:20

标签: wordpress wordpress-theming

我不知道这是否可行,但我希望是。

我运行了一个非常大的Wordpress网站,有超过2万篇文章,我现在需要重新设计。但是我试图通过将所有现有文章保留在我们现在所使用的相同主题中并且只更改新文章和首页来作弊。

这是因为很多文章都有自定义页面主题和需要旧功能的嵌入式功能。

所以问题是,我可以这样做吗?甚至可能吗?

或者我可以为每篇当前文章创建静态HTML文件,因此当有人查看它时,它们会获得旧HTML而不是新主题。

这里也有任何可怕的想法:)

1 个答案:

答案 0 :(得分:1)

我会尝试在旧帖子中添加特定类别,例如archives,如果正在查看其中的类别或单个帖子,则提供不同的主题:

<?php
/**
 * Plugin Name: Theme for Archived Posts
 */
add_action( 'setup_theme', 'setup_so_23040011' );

function setup_so_23040011() 
{
    add_filter( 'stylesheet', 'switch_so_23040011' );
    add_filter( 'template',   'switch_so_23040011' );
} 

function switch_so_23040011( $value ) 
{
    if( is_category('archives') || in_category('archives') )
        return 'twentytwelve'; // <-- The old theme
    return $value;
}

要自动将类别分配给所有20k帖子,另一个带有on_activation过程的插件可以遍历所有这些并添加archives类别。东西like this,但适合添加猫。只需激活并让它在之后运行,取消激活和删除(确保事先备份数据库)。