action_link
The Action Links module allows site admins to create links which perform an action when clicked.
For example, an action link could:
- toggle a node's published status
- cycle through the options for a field value on an entity
- change the workflow status on an entity
- change a field value on an entity
- add a product to the user's shopping cart
- subscribe a user to a node
Custom actions can be defined in code with plugins, and customized in the UI. Each action plugin can define configuration options and the parameters for the action, such as an entity to act on.
Actions can be toggles, such as subscribe/unsubscribe, or linear, such as add to/remove from cart, or multidimensional.
Action links can be configured to be output as one of:
- A JavaScript link which doesn't cause a page reload and updates itself with AJAX, showing a popup confirmation message. These degrade gracefully to plain reload links if JavaScript is disabled.
- A plain link which reloads the page, and shows a standard Drupal confirmation message.
- A form button styled as a link, which makes a POST request to reload the page
- A form button styled as a link, which makes an AJAX POST request
- A plain link which leads to a confirmation form.
Link styles can be extended with plugins.
Links, as well as AJAX popup messages, can be themed, with template suggestions for the action plugin ID and the action link entity ID.
Status
Action Link is close to a stable 1.0.0 release. See #3563974: stable 1.0 roadmap.
Relationship to Flag
Action Link is the UX of Flag, but without the underlying flag storage, and with the ability to have the link perform any kind of action instead.