Изменение пользовательского типа сообщений

Я работаю над дочерней темой, поэтому я не хочу редактировать файл, который регистрирует CPTR портфолио на моем сайте. Я использовал плагин для изменения имени из Portfolio to Stories, но плагин не дает возможности для slug.

Я попытался использовать следующую функцию:

function change_slug_of_post_type_portfolio() {
    register_post_type('portfolio', array('rewrite' => array ('slug' => 'stories',)));
}
add_action('init', 'change_slug_of_post_type_portfolio', 20);

Но он полностью удаляет портфолио с боковой панели администратора WordPress.

6 голосов | спросил Darren Bachan 25 52016vEurope/Moscow11bEurope/MoscowFri, 25 Nov 2016 01:10:04 +0300 2016, 01:10:04

2 ответа


12

register_post_type_args можно использовать для изменения аргументов типа post:

add_filter( 'register_post_type_args', 'wpse247328_register_post_type_args', 10, 2 );
function wpse247328_register_post_type_args( $args, $post_type ) {

    if ( 'portfolio' === $post_type ) {
        $args['rewrite']['slug'] = 'stories';
    }

    return $args;
}
ответил Dave Romsey 25 52016vEurope/Moscow11bEurope/MoscowFri, 25 Nov 2016 01:18:14 +0300 2016, 01:18:14
1

@ ответ dave-romsey не работал для меня, PHP продолжал говорить мне Warning: Cannot use a scalar value as an array in /path/to/functions.php Поэтому я перешел в путь array_merge.

Полную функцию, которую необходимо добавить к теме вашего ребенка functions.php:

function update_portfolios_slug( $args, $post_type ) {

    if ( 'portfolios' === $post_type ) {

        //$args['rewrite']['slug'] = 'presidentes';

        $my_args = array(
            'rewrite' => array( 'slug' => 'presidentes', 'with_front' => false )
        );

        return array_merge( $args, $my_args );
    }

    return $args;
}

add_filter( 'register_post_type_args', 'update_portfolios_slug', 10, 2 );

После загрузки кода не забудьте обновить свои постоянные ссылки, выбрав Настройки> Permalinks и нажмите Сохранить изменения .

Приветствия.

ответил Felipe Romero 19 J0000006Europe/Moscow 2017, 03:41:47

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132