我对Timber和TWIG情有独钟。 我无法显示动态侧边栏。我的目标是仅在具有动态侧边栏并且您位于 front-page.php 上时显示内容。当前它告诉我有小部件区域,但是我不在正确的页面上。我确定 front-page.php 会被渲染。 我正在使用Timber starter theme (Github)作为Wordpress的基础。 如果直接在 front-page.twig
中注释掉的代码添加到代码中,则可以显示这些小部件。sidebar.php
#Timber::render( array( 'sidebar.twig' ), $data ); if i understand right, i can remove this?
$context = array();
$context['dynamic_sidebar'] = Timber::get_widgets('home_sidebar');
Timber::render('sidebar.twig', $context);
functions.php 我将其添加到文件末尾:
function custom_widgets_init() {
register_sidebar( array(
'id' => 'home_sidebar',
'name' => __( 'Dynamic Sidebar 1', $text_domain ),
'description' => __( 'This sidebar is located on the left side of the content.', $text_domain ),
) );
}
add_action( 'widgets_init', 'custom_widgets_init' );
font-page.twig
{% extends "base.twig" %}
{# STUFF #}
{% block sidebar_area %}
<aside>
{{dynamic_sidebar}}
{# {% do function('dynamic_sidebar', 'dynamic-sidebar-1') %} THIS HOWEVER WORKS #}
</aside>
{% endblock %}
sidebar.twig :当前为空