2013-05-16 7 views
0

我一直在尝试为Wordpress主题自定义程序创建主题重置按钮,该按钮自动删除所有theme_mod设置。我尝试了多种方式来做到这一点,并从未能够实现这一目标。 As seen here.一个按钮用于更改Wordpress主题定制器中的所有设置?

在多次尝试使用remove_theme_mods方法失败后,我开始怀疑这是否是我的问题,而不是ajax和javascript有问题,并且没有正确绑定按钮。

由于我将所有的默认值保存到一个大数组中,所以当我的主题被安装时,它会自动在主题定制器页面上填充值,并且主题具有特定的外观......我想我可以尝试一种不同的方法来相反,删除主题设置,我只是骑他们,也许与自定义控制?可能通过某种方式将这些默认值分配给所有设置?我真的希望有人能帮助我做到这一点。如果您有任何想法,我将非常感激。

下面是如何分配我的默认值为主题的例子:

function newtheme_get_theme_mods() { 

$defaults = array(

     'newtheme_responsive'     => true, 

     'newtheme_hero_title'     => 'Beautiful and Elegant', 

     'newtheme_hero_description'   => 'The best theme in the world', 

       'newtheme_header_logo'    => '/wp-content/themes/newtheme/img/logo.png', 

       'newtheme_header_background_color' => 'rgba(35,35,35, 0.9)' 


    return $defaults; 

} 

回答

0

与题材类的序列化对象在数据库中创建一个类主题和存储主题设置。在您的Theme类构造函数中更改主题或还原主题加载序列化对象,然后该类将相应地使用这些设置。这是我迄今为止对我的项目所做的一些事情。

+0

该主题严重依赖于theme_mod设置。基本上整个主题都可以通过主题定制API进行定制,并且围绕这个主题定制。我认为在这个阶段为这个功能实现这个目标是太多了。但下次我肯定会采用这种方法。 – user1632018

相关问题