假如你的WordPress網站開放註冊和投稿,用戶在後臺發佈文章時,需要手動選擇文章分類。有沒有辦法為新文章自動預選分類?答案是肯定的。
假設你的網站有 WP主題、WP外掛、WP教程 三個分類,我們可以在WordPress後臺左邊菜單中添加快捷菜單,比如“添加新WP主題”,用戶點擊以後,直接自動就選擇“WP主題”這個分類。一起來看看實現方法吧。
1.將下面的代碼添加到主題的 functions.php 文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
//預選文章分類 function ws_preselect_post_category() { if ( isset($_GET['category_id']) && is_numeric($_GET['category_id']) ) { $catId = intval($_GET['category_id']); ?> <script type="text/javascript"> jQuery(function() { var catId = <?php echo json_encode($catId); ?>; jQuery('#in-category-' + catId).click(); }); </script> <?php } } add_action('admin_footer-post-new.php', 'ws_preselect_post_category'); |
//預選文章分類
function ws_preselect_post_category() {
if ( isset($_GET[‘category_id’]) && is_numeric($_GET[‘category_id’]) ) {
$catId = intval($_GET[‘category_id’]);
?>
<script type="text/javascript">
jQuery(function() {
var catId = <?php echo json_encode($catId); ?>;
jQuery(‘#in-category-‘ + catId).click();
});
</script>
<?php
}
}
add_action(‘admin_footer-post-new.php’, ‘ws_preselect_post_category’);
然後你就可以在 /wp-admin/post-new.php 這個“寫文章”的地址後面添加參數 ?category_id=15 就可以實現預選分類。比如 訪問 http://yoursite.com/wp-admin/post-new.php?category_id=15 默認就選中 ID 為 15 的分類。
2.新建一個後臺快捷菜單,依舊在主題的 functions.php 添加:
1 2 3 4 5 6 7 8 9 10 |
//“添加新WP主題”快捷菜單 function ws_add_new_post_link() { add_posts_page( '添加新WP主題', '添加新WP主題', 'edit_posts', 'post-new.php?category_id=15' // 15 為分類ID ); } add_action('admin_menu', 'ws_add_new_post_link'); |
//“添加新WP主題”快捷菜單
function ws_add_new_post_link() {
add_posts_page(
‘添加新WP主題’,
‘添加新WP主題’,
‘edit_posts’,
‘post-new.php?category_id=15’ // 15 為分類ID
);
}
add_action(‘admin_menu’, ‘ws_add_new_post_link’);
上面的代碼在後臺添加瞭“添加新WP主題”快捷菜單,第 7 行的 15 就是“WP主題”這個分類的ID。
參考資料:http://w-shadow.com/blog/2012/11/20/pre-select-category-for-new-post/