官术网_书友最值得收藏!

Summary

In this chapter, we discussed many things. We saw how logging works in Drupal, how the mail API can be used programmatically (and extended), and how the token system can be employed to make our text more dynamic.

While going through this chapter, we also enriched our Hello World module. So, apart from understanding the theory about logging, we created our own logging channel service and logger plugin. For the latter, we decided to send out emails when log messages were of the error type. In doing this, we took a look at the Mail API and how we can use it programmatically. We saw that, by default, PHP's native mail() function is used to send out emails, but we can create our own plugin very easily to use whatever external service we want—yet another great example of extensibility via plugins.

Lastly, we looked at tokens in Drupal. We saw what components make up the API, how we can programmatically use existing tokens (replace them with the help of contextual data), and how we can define our own tokens for others to use. These are the main tenets of extensibility (and sharing)—using something someone else has exposed to you and exposing something for someone else to use.

In the next chapter, we will look at another great topic—theming.

主站蜘蛛池模板: 泾川县| 松潘县| 海淀区| 陆河县| 江门市| 报价| 磴口县| 华蓥市| 丹棱县| 名山县| 峨眉山市| 宁南县| 卢氏县| 五指山市| 临湘市| 周宁县| 怀化市| 营口市| 报价| 文登市| 武义县| 兴安盟| 临江市| 白朗县| 桂阳县| 赤城县| 丽江市| 固镇县| 玉屏| 钟祥市| 栾城县| 曲阜市| 金昌市| 尤溪县| 马关县| 黎城县| 云霄县| 南涧| 文化| 宣城市| 内黄县|