首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WP:将with_front设置为false并删除post类型的slug

这个问题涉及到WordPress中的URL重写和自定义文章类型的设置。在WordPress中,可以通过修改with_front参数和删除slug来自定义文章类型的URL。

首先,with_front参数是用来控制自定义文章类型URL中是否包含父级URL的。当with_front设置为true时,URL会包含父级URL,例如:example.com/父级URL/自定义文章类型/文章名称。当with_front设置为false时,URL会去掉父级URL,例如:example.com/自定义文章类型/文章名称。

要将with_front设置为false,可以使用register_post_type函数来创建自定义文章类型,并在参数中设置'with_front' => false。例如:

代码语言:txt
复制
function custom_post_type() {
    $args = array(
        'rewrite' => array( 'with_front' => false ),
        // 其他参数
    );
    register_post_type( 'custom_post', $args );
}
add_action( 'init', 'custom_post_type' );

接下来,要删除自定义文章类型的slug,可以使用add_permastruct函数来重新定义URL结构。例如:

代码语言:txt
复制
function remove_custom_post_slug( $post_link, $post ) {
    if ( 'custom_post' === $post->post_type && 'publish' === $post->post_status ) {
        $post_link = str_replace( '/' . $post->post_type . '/', '/', $post_link );
    }
    return $post_link;
}
add_filter( 'post_type_link', 'remove_custom_post_slug', 10, 2 );

function rewrite_custom_post_rules() {
    add_rewrite_rule(
        '^custom_post/([^/]+)/?$',
        'index.php?custom_post=$matches[1]',
        'top'
    );
}
add_action( 'init', 'rewrite_custom_post_rules' );

以上代码会将自定义文章类型的URL中的slug去掉,并且保持正确的重定向和访问。

关于自定义文章类型的优势,它可以让你在WordPress中创建不同于常规文章和页面的内容类型,以满足特定的需求。例如,你可以创建一个自定义文章类型来展示产品、案例研究、活动等。这样可以更好地组织和管理内容。

自定义文章类型的应用场景非常广泛。例如,对于一个电商网站,可以创建一个自定义文章类型来展示产品,以便更好地管理和展示产品信息。对于一个新闻网站,可以创建一个自定义文章类型来展示新闻文章,以便更好地分类和展示新闻内容。

腾讯云提供了丰富的云计算产品和服务,其中包括适用于WordPress的云托管服务、云服务器、云数据库等。你可以访问腾讯云官方网站了解更多关于这些产品的详细信息和使用指南。

  • 腾讯云官方网站:https://cloud.tencent.com/
  • 腾讯云云托管服务:https://cloud.tencent.com/product/tcb
  • 腾讯云云服务器:https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库:https://cloud.tencent.com/product/cdb

希望以上信息能够帮助到你,如果还有其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

史上最详细WordPress自定义文章类型指南(1)

'example', // bool|string (默认为 FALSE) // 该文章类型设置 query_var 键,如果设置 TRUE, 将使用文章类型名称,...) // 用于构建该文章类型编辑、删除、阅读权限字符串,可以设置字符串或者数组,如果单词负数不是加“s”形式,我们需要 //设置一个数组,array( 'box...// 是否在固定链接中显示 $wp_rewrite->front 文章类型别名 'with_front' => false, // bool (默认为 TRUE)...参数如下: // 定义该文章类型 URL 结构,我们可以设置一个具体参数或一个布尔值,如果设置 false,该文章类型将不支持 // URL Rewrite 功能...默认为文章类型名称) // 是否在固定链接中显示 $wp_rewrite->front 文章类型别名 'with_front' => false, //

4.3K20
  • wordpress添加post_type自定义文章类型

    // 是否在删除用户时,删除他们撰写文章 'delete_with_user' => false, // bool (如果文章类型支持 ‘author...'example', // bool|string (默认为 FALSE) // 该文章类型设置 query_var 键,如果设置 TRUE, 将使用文章类型名称,...) // 用于构建该文章类型编辑、删除、阅读权限字符串,可以设置字符串或者数组,如果单词负数不是加“s”形式,我们需要 //设置一个数组,array( 'box...URL 结构,我们可以设置一个具体参数或一个布尔值,如果设置 false,该文章类型将不支持 // URL Rewrite 功能 'rewrite'...// 是否在固定链接中显示 $wp_rewrite->front 文章类型别名 'with_front' => false, // bool (默认为 TRUE)

    1.5K10

    启用WP Super Cache纯代码版本之后一些优化措施

    return $contents; } 使用方法:编辑上一篇文章中所说 cache.php 文件,搜索 function auto_cache()函数,替换为以上代码即可。...> //触发函数:点击idclean元素时清理该页面缓存 $(function(){     $("#clean").click(function(){             CleanUp(...最简单写法如下: 你也可以在其他空闲元素上新增一个 id="clean",总之就是要新增一个 id clean 元素!...在网站前台点击这个元素清除当前页面的缓存。...functions.php 中即可实现发布或更新文章(单页面)时候,删除当前文章(页面)、首页及所在分类缓存文件,比 WP Super Cache 那个发布文章删除所有缓存机制合理多了!!

    1.3K70

    WordPress自定义查询WP_Query使用方法大全

    WP_Query 设置了发布状态 'post_status'=>'published', 但是附件默认为 'post_status'=>'inherit',所以你需要设置状态 'inherit'...'post_type' => 'any', // - 获取所有文章类型里面的文章,除了版本和文章类型参数'exclude_from_search'设置true文章类型 'post_status' =...> 'any', // - 获取处于所有文章状态文章,除了版本和文章类型参数'exclude_from_search'设置true文章类型 /** * 分页参数 */ 'posts_per_page..., //(布尔值) - 在一页显示所有文章或使用分页,默认值 'false', 使用分页 'paged' => get_query_var('paged'), //(整数) - 页数,分页时显示第几页...通过设置这个参数真,我们告诉了了WordPress不要查询数据总行数,从而降低数据库负载,如果设置了这个参数真,分页将不工作,更多信息请参考:http://flavio.tordini.org/speed-up-wordpress-get_posts-and-query_posts-functions

    4.2K41

    WordPress自定义查询:WP_Query使用

    ,默认 WP_Query 设置了发布状态 'post_status'=>'published', 但是附件默认为 'post_status'=>'inherit',所以你需要设置状态 'inherit...'post_type' => 'any', // - 获取所有文章类型里面的文章,除了版本和文章类型参数'exclude_from_search'设置true文章类型 'post_status'...=> 'any', // - 获取处于所有文章状态文章,除了版本和文章类型参数'exclude_from_search'设置true文章类型 /** * 分页参数 */ 'posts_per_page...$query = new WP_Query( 'page_id=5' );//指定page页面 调用多篇文章 调用id14、12、20文章: $args = array( 'post__in'...'=>array(3) ); 调用除了id3以外文章 $args = array( 'post__not_in'=>array(3) ); 调用全部文章 $query = new WP_Query(

    1.4K20

    迁移 valine 评论数据至 wordpress 数据库

    注意:此处需手动新增设置 comment_ID 字段递增及主键,否则可能影响后续操作。...此图已不再适用,需替换 rid pid 来关联 objectId 评论父级 符合 2617 评论所有 rid 行设置其 comment_parent 父评论 comment_ID 2617...然后在 navicat mysql 编辑器中右键运行 sql 文件导入 wp_comments.sql 文件(需要将原有数据删除,在设计表选项卡中将自动递增设置1),之后已关联 commetn_post_ID...(2k+数据执行时长大概在 5s) 导入完成后处理好数据表右键转储 sql 文件(包含数据和结构)导出 sql 后再导入到 wordpress 数据库即可覆盖 wp_comments 数据表即可...(*) 数量 CROSS JOIN 交叉合集 res 表,然后对比 res 表 ID 及 wp_posts 表 ID,最后 res 表中 count 写入 wp_posts 中 comment_count

    12500

    WordPress 自定义文章类型Post Type)终极指南

    比如大型杂志网站,可以为杂志类型创建个不同 Post Type 来进行管理;大型企业网站,可以为产品类型创建个不同 Post Type 来展示。... Post Type 添加自定义 Meta Box 我们想要添加电影类型不能仅仅只有正文内容,我们还需要额外添加一些 导演 之类有关内容。...这里主要用到注册 Post Type 参数数组里面的 rewrite 参数,常用以下几两项: slug =>自定义固定连接结构别名,默认是使用 Post Type 名(例如本例 movie),可以被翻译...with_front => 固定连接是否以根目录基础路径。...如果你在固定连接设置页面设置结构 /archives/,那么你 Post Type 生成连接默认为 /archives/movie 如果设置该项 false 即可去掉前面的 /archives

    2.9K20

    实现WordPress提交评论删除该页面的WP-Super-Cache缓存方法

    用过 WP-Super-Cache 插件应该都知道,在高级设置里面有一项【当某页面有新评论时,只刷新该页面的缓存】功能,从字面上来说,就是当有人在某篇文章发起评论时,删除该页面的缓存。...也就是采用 ajax 评论方式,可能无法触发 WP-Super-Cache 删除机制,从而导致这个功能失效!总之,不管怎么样,反正在我博客失效了,现在就要想办法解决这个问题。...', $comment_post_ID); 然后,在这行代码之后添加删除缓存代码,保存即可: //有人评论将自动删除已存在缓存 $post_data = get_post($post->ID, ARRAY_A...); $slug = $post_data['post_name']; $cache_s = WP_CONTENT_DIR."...$slug."/index.html"; $cache_pd = WP_CONTENT_DIR."/cache/supercache/".$_SERVER['SERVER_NAME']."/".

    839120

    WordPress 文章查询教程1:如何使用分类,标签或其他分类模式参数

    「WordPress果酱」通过一系列教程讲解如何使用 WP_Query 进行 WordPress 文章查询。...三、真正王炸:tax_query tax_query 参数是 WordPress 3.1 版本引进,WordPress 非常复杂多重筛选就是使用它实现,我们通过几个例子讲解怎么实现。...可能「AND」,「OR」,如果只有一个分类参数数组,不要使用。...单个分类模式查询 在 people 这个自定义分类模式获取值 bob 文章: $query = new WP_Query(array( 'post_type' => 'post',...比如:获取在 quotes 分类中或者同时有 quote 文章格式和在 wisdom 分类中文章: $query = new WP_Query(array( 'post_type' => 'post

    1.4K40

    WordPress 6.0 提升了分类模式性能

    WordPress 6.0 对性能提升还是做了很多工作,比如昨天文章介绍新增了批量添加、设置删除一组缓存函数,对分类模式下各种查询也进行提升。...改进查询缓存 key 生成规则 如上所述,现在所有查询只获取 Term ID,所以很多相似的查询,它们缓存内容都是相同,比如使用 get_terms 去获取所有分类信息,第一次获取 slug 字段,...另外对传递给 WP_Term_Query 查询参数处理也进行了优化,比如 slug 字段可能是字符串,也可能是数组,现在统一转换成数组,这样无论你传递什么类型参数,缓存 keys 相同可能性更高...此外如果菜单中含有分类和文章数据,wp_get_nav_menu_items 会改成使用 _prime_term_cache 和 _prime_post_cache 来准备 term 和 post 缓存...( false ); WordPress Taxonomy Cache Fix 但是经过测试,WordPress 6.0 升级还造成了 child_of 参数失效,我写了一个小插件修复了该问题。

    33030

    WordPress5.0 远程代码执行分析

    我们可以通过 AUTOMATIC_UPDATER_DISABLED 设置成 true ,来禁止 WordPress 后台自动更新(在 wp-config.php 文件开头添加 define('AUTOMATIC_UPDATER_DISABLED...在 wp_update_post 方法中,我们看到其调用了 wp_insert_post 方法,该方法会将我们构造恶意路径传入 update_post_meta 方法中,具体代码如下: ?...在 wp_ajax_crop_image 方法中,根据 POST id 来校验 ajax 请求数据以及判断是否有权限编辑图片,然后 $_POST['cropDetails'] 中数据传入 wp_crop_image...根据注释内容可知, get_page_template_slug 函数会根据传入 $post 变量,从数据库中查询返回其对应模板文件名。...]=cropped-demo.jpeg 数据最终会调用 get_single_template 函数,调用 get_page_template_slug 函数根据上面数据包中 post_ID 值获取模板文件名

    1.3K30
    领券