我想在索引页面上为摘录制作一个条件语句。
如果没有手动摘录,我希望保留摘录的div为dispaly:none
<div class="excerpt"><?php if(!empty($post->post_excerpt)) {
//This post have an excerpt, let's display it
the_excerpt();
} else {
// <div class="excerpt" display:none?>
答案 0 :(得分:2)
我会亲自使用内联if语句
<div class="exerpt" <?=((empty($post->post_excerpt)) ? 'style="display:none;"' : NULL)?> >
<?=the_exerpt()?>
</div>
所以html style="display:none;"
仅在empty($post->post_exerpt)
为真时才适用
如果您不想使用内联if语句,则可以执行以下操作:
<?php
$style = NULL;
if(empty($post->post_exerpt()))
{
$style = ' style="display:none;" ';
}
?>
<div class="exerpt" <?=$style?> >
<?=$the_exerpt()?>
</div>
虽然,如果要隐藏它,为什么要打印div
?
为什么不:
<?php
if(!empty($post->post_exerpt()))
{
?>
<div class="exerpt">
<?=$the_exerpt()?>
</div>
<?php
}
?>
这种方式只有在有内容的情况下才会添加div,否则,div会被一起忽略
答案 1 :(得分:1)
只需在每个案例的(行)中对div进行不同的渲染:
<?php if(!empty($post->post_excerpt)) {
?><div class="excerpt"><?php
//This post have an excerpt, let's display it
the_excerpt();
?></div><?php
} else {
?><div class="excerpt" style="display: none;" /><?php
} ?>
在这种情况下,您还可以删除else
部分,然后只有在有摘录且甚至不可见时才会呈现。
答案 2 :(得分:0)
<div class="exerpt" style="display:none;">
答案 3 :(得分:0)
<div class="exerpt" <?php if(empty($post->post_excerpt)) { ?> style="display:none;" <?php }?> >
<?php the_exerpt()?>
</div>
答案 4 :(得分:0)
我无法想到为什么这不起作用的任何原因。除非你有一个插件可以创建手册摘录。有时基于搜索的插件会这样做。
global $post
if(!empty($post->post_excerpt)) {
the_excerpt();
} else {
// whatever
}