2016-04-11 2 views
1

私は多くのプロジェクトでACFを使用するのと同じようにカスタムサイドバーを使用できるようにするためにWooSidebarsを使用しました。しかしこれは初めてのことですが、私はTimber Frameworkでもそれを使うことに決めました。私はfunction.phpにサイドバーを登録しておき、サイドバー自体が動作します。今、私がWooSidebarsでサイドバーを作成し、ウィジェットを別にしようとすると、WooSidebarsがやっているオーバーライドは、Timberによって取り上げられないようです。サイドバーを呼び出すWooSidebarsによってTimber内に作成

私が呼んでいる:

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

そして、私は別のサイドバーで、お問い合わせページのpageを交換するウィジェットエリアを作成していたプラグインの中に。ティンバーは、オーバーライドではなく、サイドバーのpageを引き続き受け取ります。しかし、私が電話すると

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

が手動で動作します。

デフォルトのリテラルサイドバーの代わりにWooSidebarが提供するサイドバーが必要であることを、Timberコンテキストに通知する方法はありますか?

答えて

0

何年も私はこれを2つの方法で解決することができましたが、どちらも私にとって理想的なものではありません。

  1. サイドバーのコンテンツを管理する代わりにウィジェットを使用して、カスタムフィールド内でオンページで管理しないでください。
  2. ウィジェットを使用する必要がある場合は、そのIDを値として使用して、すべてのウィジェットを含むドロップダウンカスタムフィールドを作成します。次に、私はこの値をつかんで、Timber::get_widgetsに渡してサイドバーを取得し、私はそのページにしたい。
関連する問題