WordPress как на ладони
Черная пятница на хостинге fornex.com! Новые WordPress шаблоны

get_the_permalink() WP 3.9.0

Получает, а не выводит на экран, УРЛ записи, которая обрабатывается в текущий момент (в Цикле). Тег шаблона.

Нужно использовать внутри Цикла WordPress.

get_the_permalink() - копия функции get_permalink().

Работает на основе: get_permalink()
✈ 1 раз = 0.002494с = очень медленно | 50000 раз = 7.14с = быстро PHP 7.1.11, WP 4.9.8

Хуков нет.

Возвращает

Строку, ссылку на запись или false, если ссылку получить не удалось.

Использование

$link = get_the_permalink ( $id, $leavename );
$id(число/объект)
ID или объект записи, ссылку на которую нужно получить.
По умолчанию: $post
$leavename(объект/логический)
Оставлять или нет имя записи (слаг). Если указать true то конструкция %postname% не будет заменена на имя поста, т.е. вернет примерно это: http://wp-kama.ru/%postname%
По умолчанию: false

Примеры

#1 Пример использования

Получим ссылку на текущий пост в цикле:

<a href="<?php echo get_the_permalink(); ?>">Читать дальше...</a>

#2 Получим ссылку определенной записи

$url = get_the_permalink( 23 );

// вернет: http://site.ru/post-name/

#3 Второй параметр: $leavename

Результат зависит от структуры ЧПУ. Предположим что у нас такая структура: %post_id%/%postname%.html, тогда:

$url = get_the_permalink( 23 );
echo get_the_permalink( 1, true );

// Выведет: http://wp-kama.ru/1/%postname%.html

Код get_the_permalink: wp-includes/link-template.php VER 4.9.8

<?php
function get_the_permalink( $post = 0, $leavename = false ) {
	return get_permalink( $post, $leavename );
}

Cвязанные функции

Из метки: permalink (постоянные ссылки ЧПУ)

Еще из раздела: Записи: посты, страницы, ...

4 коммента
  • Артур

    добрый день! подскажите пожалуйста как можно получить ссылку на пост из определенной категории внутри цикла если это возможно???

    -1
    Ответить4 года назад #
    • Kama7021

      Укажите ID поста ссылку на который нужно получить:

      $url = get_the_permalink( 23 );
      echo $url;
      Ответить4 года назад #
  • Виктор cайт: chomovva.ru

    Странно. Написано что ф-ция является копией get_permalink(), из её кода видно что она просто возвращает результат работы get_permalink, но работает она быстрей. 50000 раз = 2.27с против 3.05с. Интересно почему так?

    Ответить3 месяца назад #
    • Kama7021

      Ну данные были почти одинаковые... Обновил показатели, теперь совпадает. Почему так было, не знаю, проверка была для разных URL может поэтому. Это все приблизительные числа, от многих факторов зависит...

      Ответить3 месяца назад #
Здравствуйте, !     Войти . Зарегистрироваться