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 );

Ссылки

Источник: https://www.kobzarev.com/wordpress/wp-me-cpt/

Михаил Кобзарёв

Суровый русский тимлид. Жил в Магадане, в офисе московских веб студий и в Тульской деревне. Виртуозно знает WordPress, PHP, ООП, Vue.js и вот это вот все. Делает крутые высоконагруженные сайты, поэтому уже почти захватил весь рынок WordPress разработки в России. Не дает никому делать сайты без спроса. Ведет блог о разработке, дайджест в телеграмме и в ВК. Любит сиськи, баню и радиоэлектронику. 100% патриот (но это не точно). Тролль 542 уровня. Ездит в отпуск раз в 5 лет.

Добавить комментарий

%d такие блоггеры, как: