В настоящее время я разрабатываю тему WordPress на основе _s, потому что проект отличается от обычных проектов WordPress.Пользовательская функция не работает в Wordpress
Я начал несколько дней назад и сделал проектирование, и теперь я застрял в одном месте в течение нескольких часов.
Я пытаюсь создать функцию для генерировать идентификатор видео с Youtube link (настраиваемое поле выполняет задание для типа сообщения «видео»).
Выходной сигнал выглядит примерно так: a0uGWc170Jc
.
Код я использовал ниже:
$id = get_post_meta($post->ID, 'video_option_youtube-link', true);
$id = explode('?v=', $id);
if (empty($id[1])) {
$id = explode('/v/', $id);
}
$id = explode("&", $id[1]);
$id = $id[0];
echo $id;
Этот код работает хорошо только тогда, когда я добавляю его внутри WP Query. Я попытался сделать функцию и вставил эту функцию в файл function.php темы и попытался эхо внутри WP_Query, но он возвращает ошибку php. Функция я сделал это:
function my_videoid() {
$id = get_post_meta($post->ID, 'video_option_youtube-link', true);
$id = explode('?v=', $id);
if (empty($id[1])) {
$id = explode('/v/', $id);
}
$id = explode("&", $id[1]);
$id = $id[0];
return $id;
}
(также пытался повторить вместо возвращения)
Итак, что я делаю неправильно?
С каким словом вы связываете WordPress и какую ошибку получаете? –
Я думаю, что вы делаете это неправильно. Сначала вы должны определить глобальные $ post; перед get_post_meta, чтобы он работал. Во-вторых, вам нужно передать пост id в качестве аргумента и использовать эту функцию в get_post_meta в своей функции, если вы хотите сделать ее независимой. – uzma