如何从wordpress URL中删除特定字符

如何从wordpress URL中删除特定字符,wordpress,Wordpress,如何从wordpress URL中删除特定字符,因为我们已经在博客文件夹中安装了wordpress,并使用带有PHP7的nginx服务器 示例:www.vkwins.com/blog/press/vinay 我们需要从URL中删除blog,它应该是:www.vkwins.com/press/vinay通常通过在.htaccess文件中添加URL重写规则来完成URL重写。Wordpress有一个内置的功能名Permalink来实现它 在Wordpress管理中转到设置→ Permalinks面板(

如何从wordpress URL中删除特定字符,因为我们已经在博客文件夹中安装了wordpress,并使用带有PHP7的nginx服务器

示例:www.vkwins.com/blog/press/vinay
我们需要从URL中删除blog,它应该是:www.vkwins.com/press/vinay

通常通过在.htaccess文件中添加URL重写规则来完成URL重写。Wordpress有一个内置的功能名Permalink来实现它

在Wordpress管理中转到设置→ Permalinks面板(选项→ Permalinks(WordPress 2.5之前的版本),您可以选择一种“常用”结构,或者使用结构标签在“自定义结构”字段中输入您自己的结构,以定义您的URL选择。
或者您可以尝试删除您的帖子类型,然后您可以使用此代码

用您的帖子类型更改帖子类型service,并将其粘贴到
functions.php

function na_remove_slug( $post_link, $post, $leavename ) {

    if ( 'service' != $post->post_type || 'publish' != $post->post_status ) {
        return $post_link;
    }

    $post_link = str_replace( '/' . $post->post_type . '/', '/', $post_link );

    return $post_link;
}
add_filter( 'post_type_link', 'na_remove_slug', 10, 3 );

/*====================================================
remove of code of custom post type...
======================================================*/

function na_parse_request( $query ) {

    if ( ! $query->is_main_query() || 2 != count( $query->query ) || ! isset( $query->query['page'] ) ) {
        return;
    }

    if ( ! empty( $query->query['name'] ) ) {
        $query->set( 'post_type', array( 'post', 'service', 'page' ) );
    }
}
add_action( 'pre_get_posts', 'na_parse_request' );

您需要在wp includes/link-template.php中进行更改

函数中的get_permalink

if ($post->post_type == 'page') return get_page_link($post, $leavename, $sample);
elseif ( $post->post_type == 'attachment' )
    return get_attachment_link( $post, $leavename );
elseif (in_array($post->post_type, get_post_types(array('_builtin' => false)))) {
    if ($post->post_type == 'press') {
        return str_replace('/blog', '', get_post_permalink($post, $leavename, $sample));
    } else {
        return get_post_permalink($post, $leavename, $sample);
    }
}
此外,您还必须对url重写进行更改,以便新的url可以根据需要工作

location /press {
    root   /html/www/;
    try_files $uri $uri/ /blog/index.php?$args ;
}

然后您可以尝试Wp admin panel permalinkswp admin permalink在没有在ngnix.conf文件中添加位置的情况下不工作