首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >短代码问题

短代码问题
EN

Stack Overflow用户
提问于 2018-06-20 10:35:28
回答 1查看 535关注 0票数 2

我目前正在创建一个短代码,以便将自定义分类法术语显示为我的模板中的列表:

代码语言:javascript
复制
// First we create a function
function list_terms_forme_juridique_taxonomy( $atts ) {

// Inside the function we extract custom taxonomy parameter of our 
shortcode

extract( shortcode_atts( array(
'custom_taxonomy' => 'forme_juridique',
), 
                    $atts ) );

// arguments for function wp_list_categories
$args = array( 
taxonomy => $custom_taxonomy,
title_li => ''
);

// We wrap it in unordered list 
echo '<ul>'; 
echo wp_list_categories($args);
echo '</ul>';
}

// Add a shortcode that executes our function
add_shortcode( 'forme_juridique', 'list_terms_forme_juridique_taxonomy' 
);

我讨论了以下两个问题:

  • 该短代码(呈现)显示在我的页面顶部,而不是我放在页面中的位置;
  • PHP标记以下两个错误:
    • 未定义常量分类法的使用-假定的“分类法”
    • 未定义常数title_li的使用-假定为“title_li”

任何帮助都很感激!

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-20 10:43:45

首先,您的短代码的输出显示在您的页面顶部,因为您正在回显输出。您应该创建一个$output变量,并使用要显示的内容构建它,然后返回它。例如:

代码语言:javascript
复制
$output = '';
$output .= '<ul>'; 
$output .= wp_list_categories($args);
$output .= '</ul>';
return $output;

第二,由于没有引用数组声明中的键,所以得到了错误。因此,PHP假定它们应该是以前定义的常量。

代码语言:javascript
复制
$args = array( 
    taxonomy => $custom_taxonomy,
    title_li => ''
);

应:

代码语言:javascript
复制
$args = array( 
    'taxonomy' => $custom_taxonomy,
    'title_li' => ''
);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50946170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档