Switch language

wpseek.com
A WordPress-centric search engine for devs and theme authors




get_sample_permalink [ WordPress Function ]

get_sample_permalink ( $id, $title = null, $name = null )
Parameters:
  • (int|object) $id Post ID or post object.
  • (string) $title (optional) Title
  • (string) $name (optional) Name
Returns:
  • (array) With two entries of type string
Defined at:



{@internal Missing Short Description}}

Source


<?php
function get_sample_permalink($id$title null$name null) {
    
$post = &get_post($id);
    if ( !
$post->ID )
        return array(
'''');

    
$ptype get_post_type_object($post->post_type);

    
$original_status $post->post_status;
    
$original_date $post->post_date;
    
$original_name $post->post_name;

    
// Hack: get_permalink would return ugly permalink for
    // drafts, so we will fake, that our post is published
    
if ( in_array($post->post_status, array('draft''pending')) ) {
        
$post->post_status 'publish';
        
$post->post_name sanitize_title($post->post_name $post->post_name $post->post_title$post->ID);
    }

    
// If the user wants to set a new name -- override the current one
    // Note: if empty name is supplied -- use the title instead, see #6072
    
if ( !is_null($name) )
        
$post->post_name sanitize_title($name $name $title$post->ID);

    
$post->post_name wp_unique_post_slug($post->post_name$post->ID$post->post_status$post->post_type$post->post_parent);

    
$post->filter 'sample';

    
$permalink get_permalink($posttrue);

    
// Replace custom post_type Token with generic pagename token for ease of use.
    
$permalink str_replace("%$post->post_type%"'%pagename%'$permalink);

    
// Handle page hierarchy
    
if ( $ptype->hierarchical ) {
        
$uri get_page_uri($post);
        
$uri untrailingslashit($uri);
        
$uri strrevstristrstrrev$uri ), '/' ) );
        
$uri untrailingslashit($uri);
        
$uri apply_filters'editable_slug'$uri );
        if ( !empty(
$uri) )
            
$uri .= '/';
        
$permalink str_replace('%pagename%'"{$uri}%pagename%"$permalink);
    }

    
$permalink = array($permalinkapply_filters('editable_slug'$post->post_name));
    
$post->post_status $original_status;
    
$post->post_date $original_date;
    
$post->post_name $original_name;
    unset(
$post->filter);

    return 
$permalink;
}
?>

Examples [ wp-snippets.com ]

Google Arama Sonuçlarý

Dahasý ...

Kullanýcý Tartýþmalarý [ wordpress.org ]

- Bulunamadý -

Yeni bir konu yaz ...

0 User Note(s)

Henüz yok. Ýlk sen ol!

Yeni Ekle ...



HTML5 Powered with CSS3 / Styling, Performance & Integration, and Semantics