Изучение различных методов получения коротких постоянных ссылок в WordPress

В WordPress постоянные ссылки — это постоянные URL-адреса, указывающие на отдельные записи, страницы или другой контент на вашем веб-сайте. По умолчанию WordPress генерирует постоянные ссылки на основе структуры, которую вы определяете в настройках постоянных ссылок. Однако могут быть случаи, когда вам потребуется получить короткую постоянную ссылку программным способом. В этой статье мы рассмотрим несколько методов достижения этой цели и предоставим примеры кода для каждого подхода.

Метод 1: использование функции get_permalink()
Функция get_permalink() — это встроенная функция WordPress, которая извлекает постоянную ссылку для указанного сообщения или идентификатора сообщения. Передав идентификатор сообщения в качестве параметра, вы можете получить короткую постоянную ссылку.

$post_id = 123; // Replace with your desired post ID
$permalink = get_permalink($post_id);
echo $permalink;

Метод 2: использование функции get_sample_permalink()
Функция get_sample_permalink()возвращает массив, содержащий образец структуры постоянной ссылки и короткую постоянную ссылку для указанного сообщения или идентификатора сообщения. Вы можете извлечь короткую постоянную ссылку из массива.

$post_id = 123; // Replace with your desired post ID
$permalink_array = get_sample_permalink($post_id);
$short_permalink = $permalink_array[0];
echo $short_permalink;

Метод 3: получение постоянных ссылок с помощью пользовательского WP_Query
Если вы используете собственный WP_Queryдля получения сообщений, вы можете получить доступ к короткой постоянной ссылке непосредственно из объекта запроса.

$args = array(
    'post_type'      => 'post',
    'posts_per_page' => 1,
);
$query = new WP_Query($args);
if ($query->have_posts()) {
    while ($query->have_posts()) {
        $query->the_post();
        $short_permalink = get_permalink();
        echo $short_permalink;
    }
    wp_reset_postdata();
}

Метод 4: получение постоянных ссылок с помощью REST API
Если вы предпочитаете получать постоянные ссылки с помощью REST API WordPress, вы можете сделать запрос GET к конечной точке /wp/v2/posts/{post_id}и извлечь linkсвойство.

fetch('/wp-json/wp/v2/posts/123')
    .then(response => response.json())
    .then(data => {
        const short_permalink = data.link;
        console.log(short_permalink);
    });

В этой статье мы рассмотрели несколько методов получения коротких постоянных ссылок в WordPress. Независимо от того, нужно ли вам получить их в коде PHP или через REST API, эти методы обеспечивают гибкость и простоту использования. Включив эти методы в рабочий процесс разработки WordPress, вы сможете легко получать короткие постоянные ссылки для различных целей.