【发布时间】:2019-04-30 15:16:49
【问题描述】:
当我在主页上循环浏览 CPT 时,它会正确显示,但我无法控制摘录长度。
我想在我的首页循环浏览 4 个不同的 CPT。循环正在工作,但我控制摘录长度的条件逻辑没有按预期工作,因为 get_post_type 返回“页面”而不是实际的 CPT。
这在我的functions.php中:
add_filter('excerpt_length', 'll_get_excerpt_length');
function ll_get_excerpt_length($size) {
if (is_post_type_archive('post')) {
return 40;
} elseif (is_post_type_archive('podcast')) {
return 15;
} elseif (is_post_type_archive('review')) {
return 5;
} else {
return $size;
}
}
当 var 转储帖子类型时,我得到“页面”,所以我不知道在哪里或如何控制摘录的各种长度。
我希望我首页上每个 CPT 循环的摘录长度都是正确的。
当我用 print_r 添加以下内容时,我只进入函数而不进入 ifs。
add_filter('excerpt_length', 'll_get_excerpt_length');
function ll_get_excerpt_length($size) {
print_r(get_post_type());
if (is_post_type_archive('post')) {
print_r(get_post_type());
return 40;
} elseif (is_post_type_archive('podcast')) {
print_r(get_post_type());
return 15;
} elseif (is_post_type_archive('review')) {
print_r(get_post_type());
return 5;
} else {
return $size;
}
}
任何帮助将不胜感激!
【问题讨论】:
-
您能否通过 CPT 显示您的实际循环,我怀疑这就是解决方案所在。
-
我正在使用 elementor 来设计页面。所以实际的循环发生在元素或逻辑中。
标签: wordpress wordpress-theming custom-wordpress-pages