2012-03-09 34 views
1

爲我創建的主題我需要通過主題設置頁面上傳圖像的可能性。到目前爲止沒有問題。但是通過該特定設置頁面上傳的圖像應該存儲在不同的目錄中,然後存儲在標準上傳目錄中,或者至少使其與其他媒體有所不同。WordPress的:有條件地更改上傳目錄

我沒有找到一個很好的腳本來改變上傳目錄:

function ml_media_upload_dir($upload) { 
global $user_ID; 
if ((int)$user_ID > 0) { 
    $upload['subdir'] = "/" . $user_ID.'test'.$ID; 
    $upload['path'] .= $upload['subdir']; 
    $upload['url'] .= $upload['subdir']; 
} 

return $upload; } add_filter('upload_dir', 'ml_media_upload_dir'); 

現在,上傳目錄更改爲一個特定的USER_ID。但是,只有當媒體上傳者從特定的主題選項頁面被觸發時,我纔會更改目錄。見下面的截圖。

想知道如何處理這個問題,搜索幾個小時後仍然沒有找到解決方案。

Screenshot

回答

0

我認爲一個解決辦法是(temporarily) overwrite the core function with a filter。您可以在自定義頁面啓動上傳之前添加過濾器,並可能在完成後再次刪除過濾器。

未經測試。祝你好運!

+0

這是我試過的解決方案之一。但我認爲應該在functions.php中添加過濾器來工作。所以當我在options-interface.php中使用它時,主題選項框架初始化上傳器的頁面不起作用。正如此處所述[http://cl.ly/EuuO] – 2012-03-11 10:22:06

+0

剛剛使用了一個不太好的解決方法;認爲使用正確的鉤子是相當困難的。不管怎麼說,還是要謝謝你 – 2012-03-11 11:26:01