2010-06-13 2 views
0

Как получить постоянную ссылку на страницу и заголовок вне цикла в wordpress.Получить постоянную ссылку и заголовок вне цикла в wordpress

У меня есть функция, как

function get_post_info(){ 
    $post; 
    $permalink = get_permalink($post->ID); 
    $title = get_the_title($post->ID); 
    return $post_info('url' => $permalink, 'title' => $title); 
} 

, когда эта функция вызывается в цикле, он возвращает название Почты и URL.

Когда он вызывается вне цикла. Он не возвращает название и URL текущей страницы. При вызове на домашней странице он должен вернуть название домашней страницы и URL-адрес

Как это сделать? вместо того, чтобы эта функция возвращает последние сообщения название и URL

ответ

2

После исследования я нашел анс себе

wp_title() возвращает заголовок страницы и

$url = (!empty($_SERVER['HTTPS'])) ? "https://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] : "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; вернуть адрес страницы

2

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

Ваша функция в порядке, вы просто не указали ключевое слово global. Измените $post; на global $post;, и вы плаваете!

+0

Есть ли проблема с супер глобальными переменными? они небезопасны? пожалуйста, объясните мне, потому что я разрабатываю плагин, и они используются, что плагин –

+0

На самом деле это не что-то, что я могу описать в комментарии - Google «Безопасность PHP», читать о XSS и всегда санировать и избегать данных из источников, которые конечный пользователь может манипулировать. – TheDeadMedic

+0

О, да, спасибо! я просто забыл об этом! –