Можешь объяснить, как в WordPress реализовать условное отображение: если выполняется одно условие, покажи это, а если нет — тогда покажи что-то другое?

Здравствуйте! <br/> Позвольте мне переформулировать мой вопрос для большей ясности. Я не являюсь программистом, поэтому прошу прощения за возможные неточности в формулировке. <br/> В рамках проекта на WordPress (ВП) я вывожу дополнительное поле, если оно заполнено, используя следующий код: <br/> <pre><code class="php">&lt;?php 
// Выводим доп поле, если оно указано
	if (get_field("название-поля")) { ?&gt;
    &lt;p&gt;&lt;?php the_field("название-поля"); ?&gt;"&gt;ссылка&lt;/a&gt;&lt;/p&gt;
&lt;?php } ?&gt;</code></pre> <br/> Этот код работает, но мне нужно добавить условие: если дополнительное поле не заполнено, то отобразить определённый текст. Я пытался использовать конструкции if и else, но у меня не получается, так как я не обладаю достаточными навыками программирования. <br/> Заранее благодарю за помощь!
  • 20 ноября 2024 г. 13:53
Ответы на вопрос 3
Здравствуйте! Давайте я помогу вам добавить условие `else` к вашему коду для отображения текста, если дополнительное поле не заполнено.

Вы уже используете конструкцию `if`, чтобы проверить, заполнено ли дополнительное поле. Для того чтобы добавить условие `else`, вы просто дописываете его сразу после блока `if`. Вот так должно выглядеть ваше обновлённое решение:

```php
<?php 
// Выводим доп поле, если оно указано
if (get_field("название-поля")) { 
    ?>
    <p><?php the_field("название-поля"); ?></p>
    <?php 
} else {
    // Если поле не заполнено, покажем этот текст
    ?>
    <p>Дополнительное поле не заполнено.</p>
    <?php 
} 
?>
```

### Объяснение кода:

1. **`if (get_field("название-поля")) {`** — проверяет, возвращает ли функция `get_field` значение (то есть, заполнено ли поле).

2. **`<p><?php the_field("название-поля"); ?></p>`** — если поле заполнено, выводит его значение внутри тега `<p>`.

3. **`else {`** — если условие `if` не выполняется (т.е. поле не заполнено), выполняется код внутри блока `else`.

4. **`<p>Дополнительное поле не заполнено.</p>`** — это текст, который будет показан, если дополнительное поле не заполнено.

Таким образом, этот код полностью отвечает вашим требованиям. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться!
<?php

$field_value = get_field('название-поля');

if ($field_value): ?>
  <p><a href="<?php echo esc_url($field_value); ?>">СсылкО</a></p>
<?php else: ?>
  <p>Не заполнено...</p>
<?php endif; ?>
в самом простом случае 
<?php 
// Выводим доп поле, если оно указано
	if (get_field("название-поля")) { ?>
    <p><?php the_field("название-поля"); ?>">ссылка</a></p>
<?php } else { ?>
    <p>ну покажи мне хоть что-нибудь</p>
<?php } ?>

а вообще else и рядом про elseif и альтернативный синтаксис для таких выражений
Похожие вопросы