Попробуйте прочитать свой код как книгу:
Сначала вы пытаетесь напечатать список галерей (которых у вас нет, это неопределенная переменная) какa selectbox:
<select>
<?php
foreach($gallerylist as $galleryrow) { ?>
<?php echo $galleryrow; ?>
<option value="<?php echo $galleryrow; ?>"><?php echo $galleryrow; ?></option>
<?php } ?>
</select>
После этого вы загружаете список галерей из базы данных, но вы ничего не используете, вы просто загружаете его, а затемСценарий заканчивается:
global $wpdb;
$gallerydefine= $wpdb->prefix."ngg_gallery";
$query="SELECT * FROM $gallerydefine";
$gallerylist = $wpdb->get_results($query);
Очевидно, это не имеет никакого смысла. Это как обед, когда вы сначала «едите это» (даже если у вас его нет), а потом идете покупать ингредиенты, готовите его и идете спать, не съев его на самом деле.
Просто подумайте, что выВы делаете все в правильном порядке.
Важные замечания
включить отчеты и с отображением всех ошибок, включая предупреждения и уведомления в вашей локальной среде разработки. Если вы включите его, вы сразу узнаете, что делаете что-то не так: он скажет, что вы используете неопределенную переменную $gallerylist
внутри цикла foreach
.
Кроме того, неплохо бы проверить, не было ли ошибок базы данных сразу после выполнения запроса к базе данных.
Всегда проверить, какой HTMLкод - это ваш скрипт, генерирующий . Вы можете увидеть только пустую веб-страницу, но за этим может быть много HTML-кода. Например, вы печатаете текст между тегами HTML <select>
и <option>
, что недопустимо.
И используйте отладчик и выполните шаг сценария. шаг за шагомВы поймете, в каком порядке выполняются операторы, какие значения переменных содержатся в определенный момент времени и т. Д.