aboutsummaryrefslogtreecommitdiff
path: root/documentation/examples/hooks/advanced.php
diff options
context:
space:
mode:
authorcash <cash.costello@gmail.com>2011-11-12 14:49:36 -0500
committercash <cash.costello@gmail.com>2011-11-16 19:53:04 -0500
commit0ec65a0130347b3b846628e9e59a1f1cbf0f0e06 (patch)
treea2a3a3fb11b6c1ca318d923e1cc949a2b10dd76b /documentation/examples/hooks/advanced.php
parent11aacb4f048e659d1b86a6ba229438444a186142 (diff)
downloadelgg-0ec65a0130347b3b846628e9e59a1f1cbf0f0e06.tar.gz
elgg-0ec65a0130347b3b846628e9e59a1f1cbf0f0e06.tar.bz2
cleaned up the plugin hooks documentation
Diffstat (limited to 'documentation/examples/hooks/advanced.php')
-rw-r--r--documentation/examples/hooks/advanced.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/documentation/examples/hooks/advanced.php b/documentation/examples/hooks/advanced.php
new file mode 100644
index 000000000..ca036c46a
--- /dev/null
+++ b/documentation/examples/hooks/advanced.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * This snippet demonstrates how to change the value of a hook. The content
+ * passed into the hook is 'This is some Sample Content.'. After the two hook
+ * handlers are done, the new content is 'This is some $@mple Content.'.
+ */
+
+// the output:page hook is triggered by elgg_view_page().
+elgg_register_plugin_hook_handler('output', 'page', 'example_plugin_hook_handler', 600);
+elgg_register_plugin_hook_handler('output', 'page', 'example_plugin_hook_handler_2', 601);
+
+function example_plugin_hook_handler($hook, $type, $value, $params) {
+ // change a to @
+ $value = str_replace('a', '@', $value);
+
+ return $value;
+}
+
+function example_plugin_hook_handler_2($hook, $type, $value, $params) {
+ // change S to $
+ $value = str_replace('S', '$', $value);
+
+ return $value;
+}
+
+$content = 'This is some Sample Content.';
+
+echo elgg_view_page('Title', $content);