如何更改自定义POST类型辅助工具

时间:2016-11-29 作者:Ed Ribeiro

我想改变portfolio 我的网站URL的slug(www.website/portfolio/neleman cava/)到另一个方面,即work

我知道我可以通过一些插件做到这一点,但我真的不想在我的网站上加载无用的插件。

是否有人能帮助我并指出我必须在single-portfolio.php

<?php

get_header();

if (have_posts()) : the_post();

$show_title = comet_meta($post->ID, \'show_portfolio_title\');
$style = (comet_meta($post->ID, \'portfolio_title_bg\') != \'\') ? \'parallax\' : \'grey\' ;

$project_category  = \'\';
$cats = get_the_terms(get_the_id(), \'portfolio_category\');
if($cats){
  foreach($cats as $cat) {
    $project_category  .= $cat->name . \', \';
  }
  $project_category = rtrim($project_category, \', \');
}
?>

<article id="<?php echo esc_html($post->post_name); ?>" class="page-single">
  <?php if (!empty($show_title) && $show_title != \'no\'): ?>
  <section class="page-title <?php echo esc_attr($style); ?>">
有什么想法吗?非常感谢!

1 个回复
SO网友:Ranuka

您可以使用register_post_type_args 修改任何自定义post类型的slug。

你需要改变组合slug才能工作?那么代码应该是这样的。

add_filter( \'register_post_type_args\', \'change_slug_portfolio_to_work\', 10, 2 );

function change_slug_portfolio_to_work( $args, $post_type ) {

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

    return $args;
}

相关推荐

为什么我的可过滤公文包页面在Slug按钮和Slug输出WORDRPESS之间不能完美地工作?

我目前在Wordpress中有一个公文包自定义页面,可以根据需要工作,但我有一个问题。问题是,当我单击其中一个slug按钮时,主体/输出不是我想要的那样工作,例如在slug IOS中有3个项目,当我单击IOS slug中的“显示3个项目”时,应该是这样,但在这只显示1个项目。我读过很多类似于这个问题的教程,但都没有解决,请有人帮帮我,我一直在尝试解决这个问题,但仍然没有成功。以下是我读过的一篇文章:https://danny.care/a-responsive-filterable-portfolio-t