Skip to content

Commit 4cef658

Browse files
author
Andy McCormick
committed
added core hook overview
1 parent 12380b2 commit 4cef658

File tree

3 files changed

+90
-1
lines changed

3 files changed

+90
-1
lines changed
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
---
2+
lang: php
3+
---
4+
5+
<!--
6+
This source file is part of the open source project
7+
ExpressionEngine User Guide (https://github.com/ExpressionEngine/ExpressionEngine-User-Guide)
8+
9+
@link https://expressionengine.com/
10+
@copyright Copyright (c) 2003-2020, Packet Tide, LLC (https://packettide.com)
11+
@license https://expressionengine.com/license Licensed under Apache License, Version 2.0
12+
-->
13+
14+
# Available Core Hooks
15+
16+
Throughout ExpressionEngine are what is known as "hooks"; little snippets of code in over 100 strategic places that allow the calling of third-party scripts that can rewrite and modify the inner workings of the program. By hooking into the core, you can do things like modify an entire Control Panel page, add/remove functionality, and modify the appearance of certain page elements. Hooks enable third party developers to modify aspects of ExpressionEngine without hacking the core.
17+
18+
TIP: Reference [Extending The Core](development/extensions.md) for more information on developing extensions that hook into the core.
19+
20+
Core hooks are categorized into 5 categories:
21+
- Global
22+
- [Core Library](development/extension-hooks/global/core.md)
23+
- [Email Library](development/extension-hooks/global/email.md)
24+
- [Filemanager Library](development/extension-hooks/global/filemanager.md)
25+
- [Functions Library](development/extension-hooks/global/functions.md)
26+
- [Grid Fieldtype](development/extension-hooks/global/grid.md)
27+
- [RTE Fieldtype](development/extension-hooks/global/rte.md)
28+
- [Input Library](development/extension-hooks/global/input.md)
29+
- [Output Library](development/extension-hooks/global/output.md)
30+
- [Pagination Library](development/extension-hooks/global/pagination.md)
31+
- [Relationships Fieldtype](development/extension-hooks/global/relationships.md)
32+
- [Session Library](development/extension-hooks/global/session.md)
33+
- [Template Library](development/extension-hooks/global/template.md)
34+
- [Text Helper](development/extension-hooks/global/text-helper.md)
35+
- [Typography Library](development/extension-hooks/global/typography.md)
36+
- API Libraries
37+
- [Channel Fields API](development/extension-hooks/api/channel-fields.md)
38+
- [Template Structure API](development/extension-hooks/api/template-structure.md)
39+
- Control Panel
40+
- [Admin Content Controller](development/extension-hooks/cp/admin-content.md)
41+
- [CSS Controller](development/extension-hooks/cp/css.md)
42+
- [Design Controller](development/extension-hooks/cp/design.md)
43+
- [Javascript Controller](development/extension-hooks/cp/javascript.md)
44+
- [Login Controller](development/extension-hooks/cp/login.md)
45+
- [Members Controller](development/extension-hooks/cp/members.md)
46+
- [Control Panel Menu](development/extension-hooks/cp/menu.md)
47+
- [My Account Controller](development/extension-hooks/cp/myaccount.md)
48+
- [Publish Controller](development/extension-hooks/cp/publish.md)
49+
- Models
50+
- [CategoryField Model](development/extension-hooks/model/category-field.md)
51+
- [CategoryGroup Model](development/extension-hooks/model/category-group.md)
52+
- [Category Model](development/extension-hooks/model/category.md)
53+
- [Channel Model](development/extension-hooks/model/channel.md)
54+
- [Channel Entry Model](development/extension-hooks/model/channel-entry.md)
55+
- [ChannelFieldGroup Model](development/extension-hooks/model/channel-field-group.md)
56+
- [ChannelField Model](development/extension-hooks/model/channel-field.md)
57+
- [ChannelFormSettings Model](development/extension-hooks/model/channel-form-settings.md)
58+
- [ChannelLayout Model](development/extension-hooks/model/channel-layout.md)
59+
- [Comment Model](development/extension-hooks/model/comment.md)
60+
- [File Model](development/extension-hooks/model/file.md)
61+
- [Fluid Field Library](development/extension-hooks/model/fluid-field.md)
62+
- [GlobalVariable Model](development/extension-hooks/model/template-global-variable.md)
63+
- [MemberField Model](development/extension-hooks/model/member-field.md)
64+
- [Member Model](development/extension-hooks/model/member.md)
65+
- [Role Model](development/extension-hooks/model/role.md)
66+
- [Site Model](development/extension-hooks/model/site.md)
67+
- [Snippet Model](development/extension-hooks/model/template-snippet.md)
68+
- [SpecialityTemplate Model](development/extension-hooks/model/template-specialty-template.md)
69+
- [Status Model](development/extension-hooks/model/status.md)
70+
- [TemplateGroup Model](development/extension-hooks/model/template-group.md)
71+
- [TemplateRoute Model](development/extension-hooks/model/template-route.md)
72+
- [Template Model](development/extension-hooks/model/template.md)
73+
- Modules
74+
- [Channel Module](development/extension-hooks/module/channel.md)
75+
- [Channel Form](development/extension-hooks/module/channel-form.md)
76+
- [Comment Module](development/extension-hooks/module/comment.md)
77+
- [Email Module](development/extension-hooks/module/email.md)
78+
- [Forum Module](development/extension-hooks/module/forum.md)
79+
- [Member Module](development/extension-hooks/module/member.md)
80+
- [Member Module Authorization](development/extension-hooks/module/member-auth.md)
81+
- [Member Module Registration](development/extension-hooks/module/member-register.md)
82+
- [Member Module Settings](development/extension-hooks/module/member-settings.md)
83+
- [Search Module](development/extension-hooks/module/search.md)
84+
- [Simple Commerce Module](development/extension-hooks/module/simple-commerce.md)
85+
- [Wiki Module](development/extension-hooks/module/wiki.md)

docs/development/extensions.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,9 @@ class TypographyParseTypeEnd extends AbstractRoute
8686

8787
As we can see, the CLI has correctly created a new class using our core hook in PascalCase as the name.
8888

89-
Inside our class is the `process()` function. Again the CLI has already added all parameters that will be passed in from the core hook. Reference the [Available Core Hooks]() section of the docs to read on what parameters your hook uses.
89+
Inside our class is the `process()` function. Again the CLI has already added all parameters that will be passed in from the core hook.
90+
91+
TIP:Reference the [Available Core Hooks](development/extension-hooks/extension-hooks-overview.md) section of the docs to read on what parameters your hook uses.
9092

9193
From the [`typography_parse_type_end()`](/development/extension-hooks/global/typography.html#typography_parse_type_endstr-this-prefs) docs we can see that this hook modifies a string after all other typography is processed. Thus we should be able to take a string, manipulate it, then pass it back to ExpressionEngine to be rendered in the template.
9294

docs/toc_sections/_advanced_usage_toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,8 @@
169169

170170
- name: Available Core Hooks
171171
items:
172+
- name: Overview
173+
href: development/extension-hooks/extension-hooks-overview.md
172174
- name: Global
173175
items:
174176
- name: Core Library

0 commit comments

Comments
 (0)