首頁 › [Drupal] 使用者自訂快跳選單
[Drupal] 使用者自訂快跳選單
嗨!最近除了睡覺之外,都是在跟Drupal奮戰。最近研究的是使用者的部份,如何優化Drupal的使用者體驗是滿有趣的主題呢!
這個小小的教學主要是示範「整合兩個模組」,希望做到的事情是:
希望每個會員登入後,右上角有個叫做「快跳」的下拉式選單,裡面有管理者預設的一些常用連結,會員可以自行再修改、新增自己想要的頁面到快跳。
Bookmarks可以作到「每個使用者都有自己的選單」
Jump可以作到「把選單變成Dropdown選單」
步驟:
1.安裝以上模組
2.把Bookmarks區塊放到網站任何位置。這個模組提供的區塊就是「會員選單」。但並非是下拉式的,所以在我的案例中,我是不希望他出現。不過這個區塊身負著「產生選單及放入預設選單項目」的重任,所以一定要放這個區塊。可以再用CSS隱藏掉(visibility:hidden)。
3.新增一區塊,輸入格式改為PHP,輸入
<?php global $user; $path = drupal_urlencode(drupal_get_normal_path(drupal_get_path_alias($_GET['q']))); $jump_menu = jump_quickly('bookmarks-' . $user->uid); $output = '<div id="jump_to">' . $jump_menu; $output .= l(t('本頁加入快跳'), 'bookmarks/item/addpage/'. base64_encode($path),array('attributes' => array('id' => 'bookmarks_addthispage'))) . ' | ' . l(t('新增常用連結'), 'bookmarks/mine/presets' ,array('attributes' => array('id' => 'bookmarks_addpreset'))) . '</div>'; print $output; ?>
EXTRA,
Jump的樣式是有個下拉式選單,然後右邊有個GO按鈕,但我希望他能夠變成一選就跳,不需要還要按GO按鈕,這樣才叫快跳嘛!
作法如下:
1.新增模組quicker_jump
2.寫法:
/*--------------------------- 改變右上角的快跳 需要:jump.module ----------------------------*/ function quicker_jump_form_alter(&$form, $form_state, $form_id) { $form_id_short = drupal_substr($form_id, 0, 17); if($form_id_short == 'jump_quickly_form') { $form['jump_goto']['#attributes'] = array('onchange' => 'this.form.submit();'); array_unshift($form['jump_goto']['#options'], '快跳...'); $form['jump_goto']['#default_value'] = '快跳...'; //$form['jump_goto']['#options']['default_selected']['selected'] = 'selected'; $form['submit']['#prefix'] = '<div class="hidden">'; $form['submit']['#suffix'] = '</div>'; return $form; } }
- 人氣(4363)
Recent Comments
熱門內容
- Drupal | 用hook_menu_alter來修改tab項目 (192,708)
- 第一次玩弄Drupal就不上手 (183,799)
- 六個網站測速工具 (103,107)
- Drupal 的 Eye Candy? (71,120)
- Introduction to Drupal 簡報分享 (35,917)
找我聊聊
敲我MSN吧!
若我MSN下班,搞不好在這
或是在這














回應
“快跳”这个翻译也太……,我个人接受不了。
简体中文一般都是4个字:快速跳转 快速链接 之类
嗨 花水妹~
Nice article!
哈囉~~花水妹
可否再詳細說明如何新增模組quicker_jump ?
感謝囉 !!
哈囉~~花水妹
可否再詳細說明如何新增模組quicker_jump ?
感謝囉 !!
發表新回應