如何从子主题中获得父主题修改?

时间:2015-05-22 作者:raddevon

我已经构建了一个子主题,我想重用父主题创建的一些设置。我希望这会像get_theme_mod( \'setting\' ) 在子主题中,但不返回任何内容。

我发现a feature request 这就解决了这个问题,这让我相信WP并没有提供一个简单的方法来获得这些父主题设置。有人找到了解决这个问题的方法吗?

1 个回复
SO网友:s_ha_dum

If you look at how the code works, 你应该注意到主题mod保存在*_options 下的表格theme_mods_{theme_slug} 主题slug是包含主题样式表的目录名,因此:

$ptheme = get_template_directory();
$theme_slug = basename($ptheme);
$mods = get_option( "theme_mods_$theme_slug");
作为一种功能:

function get_parent_theme_mods($mod = \'\') {
  $ptheme = get_template_directory();
  $theme_slug = basename($ptheme);
  $mods = get_option( "theme_mods_{$theme_slug}");
  if (!empty($mods) && isset($mods[$mod])) {
    $mods = $mods[$mod];
  }
  return $mods;
}
var_dump(get_parent_theme_mods());
var_dump(get_parent_theme_mods(\'background_color\'));

结束

相关推荐

Responsive Admin Themes

我在看这个管理主题的示例(http://themepixels.com/main/themes/demo/webpage/shamcey/dashboard.html). 至于标签为“Navigation”的左侧管理栏,有没有一种方法可以在不使用插件的情况下实现这种类型的左侧仪表板管理菜单?我想用css、js或Jquery来实现这一点,任何处理编码的东西都可以。