Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 高级自定义字段类别链接_Php_Wordpress_Advanced Custom Fields - Fatal编程技术网

Php 高级自定义字段类别链接

Php 高级自定义字段类别链接,php,wordpress,advanced-custom-fields,Php,Wordpress,Advanced Custom Fields,即使在看了文档之后,我也在努力解决这个问题,但我想做的就是链接到一个类别。我已经创建了一个分类字段来选择类别。除了我添加 <a href="<?php echo the_sub_field('category_link','option' ); ?>"></a> 我只得到类别的ID,但我想要名称。当我创建菜单时,这些都在一个转发器中,但我需要帮助获取名称而不是ID 有什么帮助吗?试试这个。它可以给出首选分类法下的所有术语。只需在下面的代码中给出您的分类名

即使在看了文档之后,我也在努力解决这个问题,但我想做的就是链接到一个类别。我已经创建了一个分类字段来选择类别。除了我添加

<a href="<?php echo the_sub_field('category_link','option' ); ?>"></a>

我只得到类别的ID,但我想要名称。当我创建菜单时,这些都在一个转发器中,但我需要帮助获取名称而不是ID


有什么帮助吗?

试试这个。它可以给出首选分类法下的所有术语。只需在下面的代码中给出您的分类名称

<?php $terms= get_terms( array(
    'taxonomy' => 'taxonomy name',
) );
    foreach ( $terms as $term ) {
    echo $term->name;
    }

?>


首先,让我知道您是否已在您创建的自定义字段中选择了Term\u id,并且让我知道您可以通过该自定义字段选择一个或多个分类法。

如果有只选择一个分类法的选项

然后编写查询:

    <?php $term_id = get_sub_field('category_link');
    if( $term_id):
        $term_name = get_cat_name( $term_id ) ;
        $term_url = get_category_link( $term_id ); ?>
        <a href="<?php echo term_url; ?>"><?php echo $term_name; ?></a>
   <?php endif; ?>

如果存在多个类别术语,则放置此查询:

     <?php 
    $terms = get_sub_field('category_link');
    if( $terms ):
        foreach( $terms as $term_id ): 
            $term_name = get_cat_name( $term_id ) ;
            $term_url = get_category_link( $term_id ); ?>
            <a href="<?php echo term_url; ?>"><?php echo $term_name; ?></a>
   <?php endforeach;  endif;    ?>


现在将你的分类术语url和名称放入锚定标签。

你能试试这个吗好的,我得到了我的分类列表,这比我目前得到的要远,但是我如何为分类建立链接呢?获取\u term\u link($term);在foreach内部,可以为您提供链接。我已经选择了term IDPlease select term object并执行另一个答案中提到的查询。我已经在上面添加了您的代码并添加了,但这不起作用…我做错了什么?我刚才看到,您说您已经从后端的分类字段中选择了类别,是吗?在分类字段中是类别还是自定义分类?只是类别…没有自定义分类我真的很抱歉给您带来这么多不便,请在后端的自定义字段中将术语对象还原为术语id并查找我的更新代码。