我有以下代码,但是它以文本形式显示简码,而不是显示简码的结果。
$curr_user_id = get_current_user_id();
// the value is 0 if the user isn't logged-in
if ( $curr_user_id != 0 ) {
// we know now the user is logged-in, so we can use his/her ID to get the user meta
$um_value = get_user_meta( $curr_user_id, 'user_phone', true );
// now we check if the value is correct
if ( ! empty( $um_value ) && $um_value == 'French' ) {
// if so we can output something
echo '[ld_course_list course_category_name="french" col=4 progress_bar=true]';
} else {
// else the code, eg.
echo '[ld_course_list course_category_name="english" col=4 progress_bar=true]';
}
}
以上代码将在下面显示文本,而不是显示短代码的结果
[ld_course_list course_category_name =“ english” col = 4 progress_bar = true]
如何更改代码以使其实际运行简码?
谢谢。
以下代码有效。唯一的问题是do_shortcode破坏了样式表。有人知道为什么或如何解决它吗?
<?
$curr_user_id = get_current_user_id();
// the value is 0 if the user isn't logged-in
if ( $curr_user_id != 0 ) {
// we know now the user is logged-in, so we can use his/her ID to get the user meta
$um_value = get_user_meta( $curr_user_id, 'user_phone', true );
// now we check if the value is correct
if ( ! empty( $um_value ) && $um_value == 'French' ) {
// if so we can output something
echo do_shortcode('[ld_course_list course_category_name="french" col=4 progress_bar=true]');
} else {
// else the code, eg.
echo do_shortcode('[ld_course_list course_category_name="english" col="4" progress_bar="true"]');
}
}
?>
答案 0 :(得分:1)
您使用的方式有误,您尝试使用的方法是在wordpress页面,帖子等内部使用的。
要使用内部插件,主题或任何其他.php
文件,请使用名为do_shortcode()
的WordPress函数,该函数可让您直接在主题和插件中添加短代码。
像这样添加它:
echo do_shortcode("[ld_course_list course_category_name="english" col=4 progress_bar=true]");