最新公告
  • 欢迎您光临知事网软件APP资源下载站,一个优质的手机App应用商店和网站源码基地。欢迎加入永久SVIP
  • WordPress函数wp_check_for_changed_slugs()用法 判断文章别名是否已修改

    正文概述 知事网   2020-09-17 10:09:23   422

    描述:

    判断文章/页面的别名是否已经修改

    用法:

    <?php wp_check_for_changed_slugs( $post_id ); ?>

    参数:

    $post_id
    
    (integer) (必填) 文章ID.
    
    默认值: None

    源文件:

    /**
    * Check for changed slugs for published post objects and save the old slug.
    *
    * The function is used when a post object of any type is updated,
    * by comparing the current and previous post objects.
    *
    * If the slug was changed and not already part of the old slugs then it will be
    * added to the post meta field ('_wp_old_slug') for storing old slugs for that
    * post.
    *
    * The most logically usage of this function is redirecting changed post objects, so
    * that those that linked to an changed post will be redirected to the new post.
    *
    * @since 2.1.0
    *
    * @param int $post_id Post ID.
    * @param WP_Post $post The Post Object
    * @param WP_Post $post_before The Previous Post Object
    */
    function wp_check_for_changed_slugs( $post_id, $post, $post_before ) {
    // Don't bother if it hasnt changed.
    if ( $post->post_name == $post_before->post_name )
    return;
    
    // We're only concerned with published, non-hierarchical objects.
    if ( $post->post_status != 'publish' || is_post_type_hierarchical( $post->post_type ) )
    return;
    
    $old_slugs = (array) get_post_meta($post_id, '_wp_old_slug');
    
    // If we haven't added this old slug before, add it now.
    if ( !empty( $post_before->post_name ) && !in_array($post_before->post_name, $old_slugs) )
    add_post_meta($post_id, '_wp_old_slug', $post_before->post_name);
    
    // If the new slug was used previously, delete it from the list.
    if ( in_array($post->post_name, $old_slugs) )
    delete_post_meta($post_id, '_wp_old_slug', $post->post_name);
    }

    知事网 » WordPress函数wp_check_for_changed_slugs()用法 判断文章别名是否已修改

    发表评论

    还没有评论,快来抢沙发吧!

    [!--temp.right--]
    请选择支付方式
    ×
    余额支付
    ×
    微信扫码支付 0 元