Как я могу получить page slug


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

Author: JM at Work, 2011-03-08

4 answers

Внутри вашего цикла вы можете сделать:


global $post;

echo $post->post_name;

 23
Author: Pippin, 2011-03-08 03:08:34

Другой вариант - получить пулю по почтовому идентификатору:

$slug = get_post_field( 'post_name', $post_id );

Вот более подробная информация о get_post_field https://codex.wordpress.org/Function_Reference/get_post_field

 43
Author: jmarceli, 2017-07-24 05:45:08

Вне цикла:

<?php
$post_id = 11;
$post = get_post($post_id); 
$slug = $post->post_name;
?> 
 19
Author: Marcin, 2011-03-08 05:27:11

Согласно другим ответам, пуля хранится в свойстве post_name. Хотя к нему можно получить прямой доступ, я предпочитаю (недостаточно используемую) функцию get_post_field() для доступа к свойствам сообщений, для которых нет соответствующего API.

Для этого требуется сообщение, предоставленное явно, и по умолчанию оно не соответствует текущему.

Если вы хотите получить фрагмент сообщения вне цикла, используйте:

$post_id = 20; //specify post id here
$post = get_post($post_id); 
$slug = $post->post_name;

Если вы хотите получить фрагмент сообщения из цикла, используйте:

global $post;
echo $post->post_name;
 1
Author: Ajay Tank, 2017-07-24 06:14:24