2014-12-10 2 views
1

wordpress에서 생성 한 첨부 파일 URL에서 첨부 파일 슬러그를 제거하려고합니다. 내가 그하는 기능을했지만 내가 갖는 URL을 출력 www.site.com입니다워드 프레스에서 URL에서 첨부 파일 슬러그 제거

www.site.com/category/folder/ 첨부/파일

: 나의 현재 URL 구조는 같다/폴더/파일, 해당 범주가 없습니다. 내가 그걸 고칠 수있는 어떤 생각? 여기에 지금까지 무엇을 가지고 있습니다 :

function wpd_attachment_link($link, $post_id){ 
    $post = get_post($post_id); 
    $post_data = get_post($post->post_parent); 
    return home_url(single_cat_title('', false)."/".$post_data->post_name."/". $post->post_title); 
} 
add_filter('attachment_link', 'wpd_attachment_link', 20, 2); 

P.S : 내가 주 워드 프레스 메뉴에서 영구 링크 구조를 변경하는 경우 그 수행 할 수 있습니다 알고 있지만, 현재 영구 링크 구조를 변경하려는 해달라고.

답변

1

시도 다음 코드를

function __filter_rewrite_rules($rules) 
{ 
    $_rules = array(); 
    foreach ($rules as $rule => $rewrite) 
    $_rules[ str_replace('attachment/', '/', $rule ) ] = $rewrite; 
    return $_rules; 
} 
add_filter('rewrite_rules_array', '__filter_rewrite_rules'); 

function __filter_attachment_link($link) 
{ 
    return preg_replace('#attachment/(.+)$#', '/$1', $link); 
} 
add_filter('attachment_link', '__filter_attachment_link'); 
관련 문제