我正在为我的主题制作我的第一个主题选项/设置页面。WordPress的,在管理中使用主题选项页面,如果选中复选框添加html到header.php
我为我的滑块添加了一部分,但在某些情况下,我不希望滑块在那里,所以我要添加一个复选框,如果它已被选中,它会向我的标题添加一个div标记页面,如果没有被选中,则不会显示任何内容。
我曾考虑过使用短代码,但这会保持原状,并显示短代码名称(如果未选中)。
这里是在PHP我复选框形式
<?php
function hero_options_page() {
if ($_POST['update_hero_options'] == 'true') { hero_options_update(); }
?>
<div class="wrap">
<form method="post" action="<?php admin_url('themes.php?page=theme-settings'); ?>">
<input type="hidden" name="update_hero_options" value="true" />
<?php
<input type="checkbox" name="display_hero" id="display_hero" <?php echo get_option('theme_display_hero'); ?> />
?>
<!-- SUBMIT BUTTON-->
<p class="submit" style="clear: both;">
<input type="submit" name="Submit" class="button-primary" value="Update Options" />
</p>
<!-- /SUBMIT BUTTON-->
</form>
</div>
<?php
}
?>
以下是我得到的结果,如果它检查保存或不
function hero_options_update() {
if ($_POST['display_hero']=='on') { $display = 'checked'; } else { $display = ''; }
update_option('theme_display_hero', $display);
//If checked add html to header.php
}
?>
UPDATE 2014年11月1日15:45 @
我正在尝试使用下面的代码,如上所述添加了一点点
$c = get_option('display_header');
if ('checked' == $c) {
function add_header_function() {
echo 'your content';
}
}
add_shortcode('add_header', 'add_header_function');
以下是我在标题中放置的内容,要么会很好,我可以让它工作。
<?php echo do_shortcode('[add_header]'); ?>
<?php get_option('display_header'); ?>
该代码在哪里 - 最后两个块?我猜测你试图使用的钩子已经太晚了。 –
你可能有兴趣看看我的管理面板:github.com/maximski/Inferno它提供了一个简单的语法来创建全功能和可访问的管理选项:)(并且非常漂亮的方式) –