文本是《50個 WordPress 過濾鉤子(共7篇)》專題的第 7 篇。閱讀本文前,建議先閱讀前面的文章:
歡迎來到《50個 WordPress 過濾鉤子》的最后一個部分,在這個章節(jié)中,我們將回顧之前所學的50個WordPress過濾鉤子,并簡要對其做個總結(jié)。
第一章 WordPress過濾器介紹
在本系列教程中的第一章節(jié),我們進入了WordPress過濾鉤子的奇妙世界,知道了過濾鉤子的概念、工作機制,何時及如何使用過濾鉤子。我們學習了下列內(nèi)容:
什么是WordPress過濾鉤子: 過濾鉤子是一種函數(shù),處于數(shù)據(jù)庫與瀏覽器中間,在 WordPress 輸出之前對數(shù)據(jù)做出反應,WordPress有上百種過濾鉤子,正如我們在教程中所學,你也可以在開發(fā)中(如插件)創(chuàng)建自己的過濾鉤子。
如何創(chuàng)建一個過濾函數(shù),并且掛載到過濾鉤子: 其實很簡單:創(chuàng)建一個函數(shù),用來定義數(shù)據(jù)以及用add_filter()過濾鉤子將其連接起來(可能我描述的過于簡單了,實際上會更為復雜些)。如果你還不理解,可以重新復習本系列的第一章節(jié),這個很重要。
如何從一個過濾鉤子中移除函數(shù):我們學過了如何從過濾鉤子中移除的兩個函數(shù):remove_filter() 和remove_all_filters(). 顧名思義,從字面理解就可以知道各自的用法了。
如何創(chuàng)建我們自己的過濾鉤子:在WordPress核心代碼中已經(jīng)中上百個出色的過濾鉤子了,如果我們想讓自己開發(fā)的插件如核心代碼那樣靈活和擴展性強,此時便可以使用apply_filters() 這個函數(shù)了,當然首先你必須是插件開發(fā)者。
五個章節(jié)中50個重要過濾鉤子對應的典型樣例
進入WordPress過濾鉤子的世界后,首先要學習hook到WordPress核心代碼的每個過濾鉤子,這可能是WordPress教程史上最優(yōu)秀的教材了,我們?yōu)榇烁冻隽舜罅康臅r間和精力做了精選,因為在WordPress v3.9.1版本中就有超過上千個過濾鉤子。
教程中我們精選了50個過濾鉤子,對每個都做了簡潔的闡述并附帶樣例源碼,接下來我們再對所學的知識做個簡單的回顧。
第二章 WordPress過濾鉤子的1-10個樣例
- login_errors允許我們在登錄WordPress時修改默認的錯誤提示信息。
- comment_post_redirect 可以讓訪客在評論結(jié)束后將其重定向到內(nèi)部頁面(或者允許的外部域頁面)
- allowed_redirect_hosts可以讓我們在wp_safe_redirect()函數(shù)中自定義“安全”的外部主機白名單。
- body_class可以為<body>標簽設(shè)定樣式表。
- locale 可以改變WordPress的本地化語言。
- sanitize_user可過濾用戶名的不安全字符。
- the_content過濾鉤子可在文章內(nèi)容顯示出來之前對其做些修改。
- the_password_form 可自定義密碼保護文章的提示信息。
- the_terms 過濾鉤子可以修改the_terms()函數(shù)的輸出結(jié)果。
- wp_mail_from可修改默認的Email 發(fā)件人地址
第三章 WordPress過濾鉤子的11-20個樣例
- gettext過濾可翻譯的字符串,讓WordPress得以語言本地化。
- sanitize_title 可優(yōu)化標題別名。
- no_texturize_shortcodes將簡碼名字加入”do not texturize”名單中。
- pre_comment_approved過濾評論的審批狀態(tài)。
- enable_post_by_email_configuration 可啟用或者禁用“通過郵箱發(fā)表文章”的功能。
- wp_title過濾頁面標題,自定義title標簽在瀏覽器中的顯示結(jié)果。
- preprocess_comment可對評論保存到數(shù)據(jù)庫前進行處理。
- login_redirect 可在用戶登陸后自定義安全的跳轉(zhuǎn)地址。
- plugin_action_links_$plugin 可為為插件創(chuàng)建一個動作鏈接。
- 第三章 WordPress過濾鉤子的11-20個樣例
第四章 WordPress過濾鉤子的21-30個樣例
- use_default_gallery_style 可以啟用或者禁用簡碼的CSS樣式表
- wp_get_attachment_url 可過濾附件的URLs輸出結(jié)果。
- wp_mail_content_type設(shè)置郵件的內(nèi)容類型(默認為普通的text/plain文本類型)
- pre_comment_user_ip可讓我們設(shè)置存入數(shù)據(jù)庫的評論者ip地址。
- wp_revisions_to_keep 修改文章的保存版本修訂限制次數(shù)—無論是單篇文章、文章類型或其他均可。
- img_caption_shortcode 過濾圖片簡碼,可根據(jù)需要重寫輸出顯示結(jié)果。
- post_class 可為文章設(shè)置自定義的CSS 類。
- attachment_fields_to_edit可以讓我們在上傳或編輯附件時增減一些輸入域。
- excerpt_length 可以設(shè)置自動摘要的字數(shù)長度。
- bulk_actions-$screenid處理后臺管理頁面中的“批量操作”功能,允許增減一些操作。
第五章 WordPress過濾鉤子的31-40個樣例
- post_search過濾搜索查詢過程
- wp_editor_set_quality可設(shè)置上傳圖片的壓縮率,改變圖片附件的大小
- widget_text過濾文本小工具得以讓我們改變顯示輸出結(jié)果。
- the_content_feed 可修改feed的文本內(nèi)容
- mce_buttons可增刪可視化編輯器中不想要的按鈕
- list_terms_exclusions 可自定義排除列表中的某些分類
- image_size_names_choose 可在視化編輯器中修改下拉列表中的圖片尺寸
- excerpt_more可將文章自動摘要中默認的more….改為其他內(nèi)容.
- manage_posts_columns 讓我們在后臺管理頁面中更容易修改欄目項
- user_contactmethods可編輯用戶聯(lián)系信息表單,增減輸入域
第六章 WordPress過濾鉤子的41-50個樣例
- script_loader_src 可修改wp_enqueue_script()函數(shù)并改變其輸出結(jié)果。
- admin_post_thumbnail_html 允許我們在新建文章頁面的 “設(shè)置特色圖像”文字鏈接下插入HTML 內(nèi)容。
- comment_flood_filter 可防范灌水評論攻擊
- dashboard_glance_items 可以在后臺管理中修改“概覽”部分的欄目
- login_message 可修改登錄表單默認提示信息
- bulk_post_udated_messages 可修改文章更新時的提示信息
- widget_categories_args 修改默認分類小工具參數(shù)
- registration_redirect用戶注冊成功后重定向至一個“安全”頁面
- comment_form_default_fields更改評論表單字段
- upload_mimes 對允許上傳到媒體庫的的文件類型進行自定義
結(jié)束語
這部分的教程到此為止就全部結(jié)束了,我們學完了Wordpress過濾鉤子,但還沒涉及動作(actions)鉤子,在接下來的七個章節(jié)中我們將繼續(xù)學習。
盡管這是最讓人疲憊不堪的系列教程,但我仍然樂于編寫其中的每個單詞和代碼。所做甚微,但課題意義不凡,在教程編寫過程中我學到了很多知識,希望你們也是如此。
若各位能做到以下幾點,我將非常感謝。
- 在留言區(qū)寫下你們對本系列教程的看法和建議。
- 提出新的過濾鉤子和樣例作為補充。
- 對教程中存在的錯漏、語意含糊和表達前后不一致等問題請不吝賜教。
- 將本系列教程分享給他人,讓更多人熟悉掌握WordPress過濾鉤子。
謝謝大家能一直忍耐聽我啰嗦到最后,再見!
原文出自:http://code.tutsplus.com/tutorials/50-filters-of-wordpress-series-finale–cms-21300
由 shanezx@WordPress大學 原創(chuàng)翻譯,未經(jīng)允許,禁止轉(zhuǎn)載和采用本譯文。





