We've been dropping hints about various development features that haven't yet made their appearance in our previous blog entries. Now that hooks are no longer a possibility, we've expanded our Extensions system to allow developers to integrate with other areas within the framework.
This blog entry will give an overview of our new Extensions. We are working on updating our developer documentation to include these changes.
AccountSettings
Allows you to add tabs to the Account Settings page. This extension contains two methods:
-
getTab
Returns the key for the tab (or null to hide) -
getContent
The tab content
Loader
This extension was created primarily to allow you to load Javascript and CSS files in areas outside of your application, but has since been expanded to include other functionality. It is essentially an extension on the Dispatcher.
Available methods:
-
css
Returns an array of CSS files to load -
js
Returns an array of JS files to load -
checkForRedirect
Redirect users to another location. This is especially useful for custom applications that would have previously bypassed an existing controller. -
customError
Show a custom error message to the user instead of the standard IPS error messages.
SearchContent
This is used to allow your application's content to the Search Index. Previously, the framework relied on the ContentRouter extension for this, and the use of the \IPS\Content\Searchable interface. The interface has been removed, and searchable classes are determined by the new extension.
The SearchContent extension contains one required method, supportedClasses. You can also use this extension to override our default search logic for your content.
Other New Extensions
-
LoginHandler
Allows you to create additional Login methods -
UIComment/UIItem/UINode/UIReview
UI Extensions, described here, here, and here -
UserMenu
Allows you to add content to various menus. Additional information can be found here.
New Commerce Extensions
The following new extensions have been added to Commerce:
-
Gateway
Allows you to create new payment gateways -
LicenseKey
Allows you to add new methods for generating and managing license keys -
Payout
Allows you to create gateways for payouts
Deprecated Extensions
The following Extensions are no longer supported and have been removed:
- BBCode
- ContentModeratorPermissions (use ModeratorPermissions instead)
- CreateMenu (replaced by UserMenu)
- IncomingEmail
- MemberForm
Reminder: Send us your Feedback
Send us your questions or use-cases by submitting a topic here. Please note that this is a private forum; you will not see topics posted by others, so you are free to share code samples if necessary. We will review your questions, and then aggregate them into an FAQ. The deadline for your question to be considered for the FAQ is October 15. After that you may still submit questions in the Contributor forum, where we will do our best to respond.
Recommended Comments
There are no comments to display.