【发布时间】:2012-10-14 22:17:27
【问题描述】:
如果标题超过 40 个字符,我正在修改面包屑脚本以附加 '...'。我把那部分工作得很好,但我不能把它嵌套在这个庞大的脚本中,以便在它的长度低于 40 个字符时保留它。
我这里还需要 else 吗?我从未遇到过有多个 ifs 而没有 else 或 elseif 的脚本
} elseif ( is_single() && !is_attachment() ) {
if ( get_post_type() != 'post' ) {
$post_type = get_post_type_object(get_post_type());
$slug = $post_type->rewrite;
echo '<a href="' . $homeLink . '/' . $slug['slug'] . '/">' . $post_type->labels->singular_name . '</a>';
if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . substr(the_title('', '', FALSE), 0, 40) . $after;
} else {
$cat = get_the_category(); $cat = $cat[0];
$cats = get_category_parents($cat, TRUE, ' ' . $delimiter . ' ');
if ($showCurrent == 0) $cats = preg_replace("#^(.+)\s$delimiter\s$#", "$1", $cats);
echo $cats;
if (($showCurrent == 1) && (strlen($post->post_title) > 40)) echo $before . substr(the_title('', '', FALSE), 0, 40) . '...' . $after;
} elseif {
if (($showCurrent == 1) && (strlen($post->post_title) < 40)) echo $before . get_the_title() . $after;
}
【问题讨论】:
-
这不会解决你的实际问题,但我用于这种情况的东西是在服务器上,我检查字符串的长度是否> 40(就像你一样)......如果是这样,向名为
"trimmed"的元素添加一个类,并且只打印前 40 个字符...然后在您的 CSS 中,使用以下规则:.trimmed:after { content: "..."; } -
绝招,感谢分享
标签: php javascript syntax if-statement