Проблема с get_post_meta

Всем привет столкнулся с очередной маленькой проблемкой. Вывожу на странице произвольные поля и всё работает нормально

<? echo get_post_meta($post->ID, 'myKey', true); ?>

Но если вынести эту штуковину в функцию, то она перестаёт работать!

<?php                
function ReplaceMeta($key){
echo get_post_meta($post->ID, $key, true);
}
?>

а в нужном месте пытаюсь запустить её

ReplaceMeta('myKey');

Но никакой реакции, причём $key нормально передаётся

<?php                
function ReplaceMeta($key){
echo $key;
}
?>

Что то неладное с этой функцией или я переменную не правильно передаю!

Не подскажете в чём может быть проблема?

А $post->ID откуда функция брать должна?

Я не силён в РНР просто знаю другой язык программирования а он немного похож, вот я по аналогии и пытаюсь разобраться с РНР.

Просто вне функции отрабатывае а внутри нет, может $post както сделать глобальным …

Аааа спасибо большое за намёк, оказываеся надо было просто $post тоже в функцию передавать 😉

Всё Вы правильно понимаете 🙂 Можно передавать, а можно объявить глобальной внутри функции (более экономный вариант).

Anonymous
Отправить
Ответ на: