WP.me для пользовательских типов записей
Shortlinks — это модуль плагина Jetpack, который предоставляет быстрый способ получить короткие и простые ссылки на ваши записи и страницы. Для это он использует домен WP.me
.
Этот модуль в последних версиях активирован по умолчанию. Если вы не видите описываемый функционал — посмотрите руководство по включению модуля.
Функциональность Shortlinks очень похожа на другие сервисы по сокращению ссылок, но есть и коренные отличия:
- Каждый пост на WordPress.com и сайтах с Jetpack уже имеют короткий URL в доменной зоне WP.me
- Ссылки эти публичные. Их можно увидеть в <head> вашего сайта внутри
rel=shortlink
- Возможность присутствует только для URL сайтов, которые хостятся на WordPress.com
- Эти ссылки вечные и будут жить, пока жив сам WordPress.com
- Домен WP.me защищен от спама, присутствует мониторинг и удаление спама в атоматическом режиме.
Включение коротких ссылок для CPT
Тут есть два варианта: добавить возможность коротких ссылок после регистрации пользовательского типа записей или во время регистрации. Рассмотрим оба случая.
Чтобы добавить короткие ссылки для уже существующего типа пользовательских записей, воспользуемся функцией add_post_type_support()
, добавив сниппет в functions.php
вашей активной темы:
function mihdan_add_shortlinks_by_post_type_support() { add_post_type_support( 'product', 'shortlinks' ); } add_action( 'init', 'mihdan_add_shortlinks_by_post_type_support' );
Не забудьте заменить product
на название вашего кастомного типа поста.
Вторым возможным решением данного вопроса может служить добавление коротких ссылок к CPT во время ее регистрации:
function mihdan_add_shortlinks_to_register_post_type() { $labels = array( 'name' => _x( 'Products', 'Post Type General Name', 'text_domain' ), ); $args = array( 'label' => __( 'product', 'text_domain' ), 'supports' => array( 'title', 'editor', 'shortlinks' ), ); register_post_type( 'product', $args ); } add_action( 'init', 'mihdan_add_shortlinks_to_register_post_type', 0 );
Если в вашей версии WordPress отсутствует кнопка для получения короткой ссылки, то вернуть её можно через фильтр get_shortlink
:
function mihdan_restore_shortlink_button( $shortlink ) { return $shortlink; } add_filter( 'get_shortlink', 'mihdan_restore_shortlink_button', 0 );