1

我在很多项目中都使用了WooSidebars来允许自定义侧边栏,就像使用 ACF 一样。这是第一次,但是我决定在 Timber Framework 中也使用它。我在我的 functions.php 中注册了侧边栏,并且侧边栏本身可以工作。现在,如果我从 WooSidebars 创建一个侧边栏并尝试将小部件放在一边,似乎 WooSidebars 所做的覆盖不会被 Timber 拾取。

我打电话给:

$context['sidebar'] = Timber::get_widgets('page');

在插件中,我正在创建一个小部件区域,以page在联系我们页面上替换为不同的侧边栏。Timber 只会继续拾取page侧边栏而不是覆盖。但是,如果我打电话

$context['sidebar'] = Timber::get_widgets('contact-us-sidebar');

手动它会工作。

有没有办法通知 Timber 上下文我需要 WooSidebar 提供的侧边栏而不是默认的文字侧边栏?

4

1 回答 1

0

多年来,我已经能够通过两种方式解决这个问题,虽然对我来说都不是那么理想,但它一直在完成工作。

  1. 不要使用小部件来管理侧边栏内容,而是在自定义字段中在页面上管理它。
  2. 如果您确实想要/需要使用小部件,我将创建一个下拉自定义字段,其中包含所有小部件,使用它们的 ID 作为值。然后我抓住这个值并将其传递Timber::get_widgets给我想要的页面侧边栏。
于 2018-03-01T18:57:22.383 回答