基于自定义帖子类型变量的帖子URL

时间:2019-01-16 作者:PandaBoii

我想从自定义帖子类型变量创建自定义帖子URL。我考虑了一种方法:

在Permalinks设置中,我看到有一些默认标记可以选择从中合成URL(%year%、%post\\u id%、%postname%等)。我在考虑创建您可以包含的自定义标记(例如%mytag%)或重写现有标记。该标记应根据CPT中的变量自动生成。

因此,最后的标签应该是:

 %mytag% = $variable1 .  \'_\' . $variable2
这可能吗?也许有更简单的方法可以做到这一点,所以请让我知道你将如何解决这个问题。

非常感谢您的回答!

1 个回复
SO网友:Chris B

与其创建一个新的标记,我建议只编写代码,使用ACF的save\\u post函数在每篇文章的基础上创建slug。

//Update Cars slug field:
function wpse_post_slug_updater( $post_id ) {

    if( get_post_type() == \'cars\') {
        $my_post = array();
        $my_post[\'ID\'] = $post_id;
        $my_post[\'post_title\'] = esc_html(get_the_title($post_id));

        $my_new_slug = get_field(\'brand\') . \' \' . get_field(\'license_plate\');
        if(!empty($my_new_slug)){
            $my_post[\'post_name\'] = sanitize_title($my_new_slug);
            wp_update_post( $my_post );
        }
    }

}

// run after ACF saves the $_POST[\'fields\'] data
add_action(\'acf/save_post\', \'wpse_post_slug_updater\', 20);

相关推荐

Modifying WordPress plugins

关于对WordPress插件进行更改,我有一个非常简单的问题。我为我的问题的简单性道歉,因为我对使用开源代码和插件开发新手非常陌生。我发现了一个插件,它为我正在进行的一个项目提供了一个很好的解决方案。然而,为了更好地满足我的需要,我修改了代码。插件有一个;GPLv2或更高版本“;许可证,基于this 似乎是说对插件的修改很好,只要我注意到我所做的任何更改,并将插件发布在;GPLv2或更高版本“;许可证也是。由于我对插件所做的修改,我希望能够将其作为客户端工作的一部分提供给其他人。然而,我不确定前进的最佳方