2014-09-27 86 views
0

我有一個博客,我每天都會發布很多帖子。許多帖子使用10個常用標籤中的5個。而不是每次寫出每個標籤,我寧願取消選中一些我不需要的標籤(然後添加任何新的或不常見的標籤)。自動添加一組標籤到新的WordPress的帖子

所以,我正在尋找編輯我的functions.php文件,以便任何新的帖子已經有一個列表中的10個標籤。而且,如果標籤已經存在,不要做任何事情。如果可能,我想避免使用插件。

任何人都知道如何做到這一點?這將非常有用。

的代碼看起來是這樣的: (注:我的編程技能是可怕的,所以這可能不是正確的,甚至是不可能的)

function default_tag_list() { 
    if(new_post() && !get_the_tag_list()) { // using new_post() ... not sure how to check if its a new post. 
     $default_tags = array('health', 'nutrition', 'diet', 'well-being', 'eating'); 
     return $default_tags; 
    } // Then, somehow get the get_tag_list in the administration to use the default tags function (if it's a new post without any tags) ... 
} 

}

回答

0

只需複製並粘貼下面代碼在你的function.php:

function my_data_update() { 
    GLOBAL $post; 
    wp_set_post_tags($post->ID, 'health, nutrition, diet, well-being, eating', true); 
} 
add_action('publish_post', 'my_data_update'); 
add_action('save_post', 'my_data_update'); 

這個代碼一定會爲你工作,因爲它被測試。

+0

這有效,但缺少一些我需要的功能。首先,該功能將標籤添加到您發佈的每個帖子。如果需要,我希望能夠刪除標籤(所以,如果我創建了一個帖子並刪除了一些標籤,它們會在再次發佈時重新添加到帖子中)。 其次,當您創建新帖子時,新的標籤沒有在編輯頁面上列出...您需要點擊PUBLISH。即使如此,它並沒有顯示在更新後的編輯頁面上。你必須離開編輯頁面,然後回到它,然後標籤在那裏。 – Jabbamonkey 2014-10-08 19:52:16

+0

只需刪除最後一行代碼: add_action('save_post','my_data_update');它會解決你的第一個問題。現在爲您的第二個問題,我們需要發佈帖子來添加標籤並刷新頁面以觀看它們添加。不要擔心它們會在您點擊發布按鈕時添加。 – WpTricks24 2014-10-09 06:00:56

+0

我擺脫了最後一行...但它仍然加回到我刪除的任何標籤中。 – Jabbamonkey 2014-10-09 14:41:08

相關問題