В php у меня отображается ul с 3 элементами списка в виде вкладок. Как запретить отображение вкладок без содержимого?
<div class = "grid col-540 fit" id = "tabs">
<ul>
<li><a href = "#tabs-1">Profile</a></li>
<li><a href = "#tabs-2">Project Experience</a></li>
<?php if (!empty(get('bio_publications')) { ?>
<li><a href = "#tabs-3">Publications</a></li>
<?php } ?><?php endif ?>
</ul>
<div class = "profile" id = "tabs-1">
<h2>Profile</h2>
<?php the_content( __( 'Read more ›', 'responsive' ) ); ?>
</div>
<div class = "project-experience" id = "tabs-2">
<h2>Project Experience</h2>
<?php echo get('bio_project_experience'); ?>
</div>
<div class = "publications" id = "tabs-3">
<h2>Publications</h2>
<?php echo get('bio_publications'); ?>
</div>
</div>
Я предполагал, что могу сделать это с помощью оператора if, но он не работает. Публикации не заполнены для этой конкретной ul, поэтому вкладка не должна отображаться.
Спасибо за вашу помощь.
Патрик, я думаю, вы правы, и что get() - это встроенная функция Wordpress. Мне не удалось найти конкретную документацию, и решение от @Cesar Schrega сработало идеально, поэтому я больше не трачу на это время. Спасибо за вашу помощь.






Вам просто действительно нужны условия IF, но вам нужно получить значения табуляции «раньше» в коде, чтобы проверить условия, примерно так:
<?php
//get your stuff
$content = get_the_content();
$bio_project_experience = get('bio_project_experience');
$bio_publications = get('bio_publications');
?>
<div class = "grid col-540 fit" id = "tabs">
<ul>
<?php if ($content): ?><li><a href = "#tabs-1">Profile</a></li><?php endif; ?>
<?php if ($bio_project_experience): ?><li><a href = "#tabs-2">Project Experience</a></li><?php endif; ?>
<?php if ($bio_publications): ?> <li><a href = "#tabs-3">Publications</a></li><?php endif ?>
</ul>
<?php if ($content): ?>
<div class = "profile" id = "tabs-1">
<h2>Profile</h2>
<?php the_content( __( 'Read more ›', 'responsive' ) ); ?>
</div>
<?php endif; ?>
<?php if ($bio_project_experience): ?>
<div class = "project-experience" id = "tabs-2">
<h2>Project Experience</h2>
<?php echo get('bio_project_experience'); ?>
</div>
<?php endif; ?>
<?php if ($bio_publications): ?>
<div class = "publications" id = "tabs-3">
<h2>Publications</h2>
<?php echo get('bio_publications'); ?>
</div>
<?php endif; ?>
</div>
Спасибо, Сезар! Это отлично сработало. Именно то, что мне нужно, чтобы скрыть вкладки, когда данных нет!
Вы уверены, что
get()возвращает контент, а не выводит его? Это встроенная функция Wordpress? Если да, можете ли вы дать ссылку на его документацию?