gpt4 book ai didi

WordPress + Twig (Timber) - 在类别下拉列表中显示当前类别

转载 作者:行者123 更新时间:2023-12-01 08:44:37 31 4
gpt4 key购买 nike

我目前为我的博客页面设置了类别下拉过滤器。这可以在类别页面之间切换,但是,我很难让下拉框显示事件类别。

这是我的 archive.php 文件中的内容

$context['categories'] = Timber::get_terms('category');

这是显示当前类别下拉列表的函数。

<form id="category-select" class="category-dropdown" action="{{site.url}}" method="get"> 
<select name="cat" id="cat" class="cat-menu" onchange="return this.form.submit()">
<option value="-1">Select a category</option>
{% for cat in categories %}
<option class="level-0" value="{{cat.id}}">{{cat.name}}</option>
{% endfor %}
<option value="0">View All</option>
</select>
<noscript><input type="submit" value="View" /></noscript></form>

有人对如何正确执行此操作有任何指导吗?

最佳答案

您必须将当前类别传递给 View 。如果您的帖子只有一个类别,您可以使用以下代码片段,

controller.php

<?php
$post = Timber::get_post();
$post_categories = $post->terms('category');

$context['selected_category'] = reset($post_categories); //post can be attached to one or more categories
$context['categories'] = Timber::get_terms('category');

view.twig

<form id="category-select" class="category-dropdown" action="{{site.url}}" method="get"> 
<select name="cat" id="cat" class="cat-menu" onchange="return this.form.submit()">
<option value="-1">Select a category</option>
{% for cat in categories %}
<option class="level-0" value="{{cat.id}}"{% if selected_category is defined and selected_category.id = cat.id %} selected{% endif %}>{{cat.name}}</option>
{% endfor %}
<option value="0">View All</option>
</select>
<noscript><input type="submit" value="View" /></noscript></form>

关于WordPress + Twig (Timber) - 在类别下拉列表中显示当前类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43749607/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com