我目前正在为我自己的网站开发自定义wordpress主题。我主要关心的是包括小部件区域。我设法包括一个小部件区域, 以便可以从”
外观”
>
”
小部件”
对其进行配置, 并且结果还显示在定制程序预览和实时网站上。唯一的问题是我无法在定制程序中配置窗口小部件。当我单击定制器中的窗口小部件时, 它仅显示以下消息:
你的主题有一个小部件区域, 但是此特定页面没有显示它。你可以在使用”
定制程序”
查看和编辑显示在这些页面上的窗口小部件时导航到站点上的其他页面。
好吧, 由于实际上在”
外观”
>
”
配置的窗口小部件”
下显示了窗口小部件, 因此我的站点似乎有一个窗口小部件区域。但是我猜想定制器缺少一些知识。
这是我从许多类似的教程中获取的侧边栏/小部件区域注册代码:
<
?php
function tgf_customize_register( $wp_customize ) {
//All our sections, settings, and controls will be added here
}
add_action( 'customize_register', 'tgf_customize_register' );
function tgf_widgets_init() {
register_sidebar(array(
'name'=>
'Sidebar Widget', 'id'=>
'main_sidebar_widget', 'description'=>
'Widget Area', 'before_widget' =>
'<
div class="widget">
', 'after_widget'=>
'<
/div>
', 'before_title'=>
'<
h2>
', 'after_title'=>
'<
/h2>
', ) );
}
add_action( 'widgets_init', 'tgf_widgets_init' );
?>
这是显示侧栏的代码:
<
?php if ( is_active_sidebar( 'main_sidebar_widget' ) ) : ?>
<
?php dynamic_sidebar( 'main_sidebar_widget' );
?>
<
?php endif;
?>
我也尝试使用此代码显示它, 但是即使从” 外观” > ” 窗口小部件” 对其进行配置, 该窗口小部件也根本不会在站点上显示:
<
?php if ( is_active_sidebar( 'main_sidebar_widget' ) ) : ?>
<
?php get_sidebar( 'main_sidebar_widget' );
?>
<
?php endif;
?>
为什么不能在定制器中配置此小部件?
【WordPress自定义主题(小部件区域无法在定制程序中配置)】WordPress主题创建这个问题:显示的页面上没有窗口小部件区域, 在定制器中提及相同的错误消息, 但未提供适用于我的特定问题的解决方案。
由于我无法通过研究这个问题找到任何东西, 因此我认为我缺少一些基本知识。因为我是wordpress主题开发和PHP的新手, 所以这很有可能。提前致谢!
#1发现自己自己这些教程都没有告诉我什么:
我必须在页面开头添加< ?php wp_head()?> , 并在页面末尾添加< ?php wp_footer()?> 。
WordPress似乎需要这些钩子才能正常运行。
推荐阅读
- wordpress(datepicker在小部件选项页面上有效,但在定制器上无效)
- WordPress自定义主题将转到404.php
- WordPress的自定义主题-更改将资源文件夹路径
- WordPress自定义主题-应用更新
- 带有分页功能的WordPress自定义帖子类型类别视图
- WordPress自定义帖子页面未显示
- WordPress-无限滚动自定义分页
- WordPress自定义选项未保存
- 如何在 Linux 中更改主机名(运维工程师应该都知道吧!)