| 1 | <?php |
|---|
| 2 | /* |
|---|
| 3 | Plugin Name: Plugin Test |
|---|
| 4 | Plugin URI: http://www.santosj.name |
|---|
| 5 | Description: Horriblely break WordPress |
|---|
| 6 | Author: Jacob Santos |
|---|
| 7 | Version: code base |
|---|
| 8 | Author URI: http://www.santosj.name |
|---|
| 9 | */ |
|---|
| 10 | |
|---|
| 11 | new TestPlugin(); |
|---|
| 12 | |
|---|
| 13 | class TestPlugin |
|---|
| 14 | { |
|---|
| 15 | var $message = 'Hey, message was not updated! WTF?'; |
|---|
| 16 | |
|---|
| 17 | function TestPlugin() |
|---|
| 18 | { |
|---|
| 19 | $this->construct(); |
|---|
| 20 | } |
|---|
| 21 | |
|---|
| 22 | function __construct() |
|---|
| 23 | { |
|---|
| 24 | add_action('init', array(&$this, 'init')); |
|---|
| 25 | } |
|---|
| 26 | |
|---|
| 27 | function init() |
|---|
| 28 | { |
|---|
| 29 | add_filter('the_content', array(&$this, 'the_content')); |
|---|
| 30 | add_filter('the_title', array(&$this, 'the_title')); |
|---|
| 31 | |
|---|
| 32 | // This illustrates, why it is useful to remove a plugin |
|---|
| 33 | // It could be further illustrated by plugins that wish to check and |
|---|
| 34 | // remove filters from other plugins and then add them again. Or |
|---|
| 35 | // move their own hooks that are no longer needed, while still in |
|---|
| 36 | // loop. |
|---|
| 37 | |
|---|
| 38 | $this->message = 'Removal Failed! Not seriously, but fix me!'; |
|---|
| 39 | |
|---|
| 40 | |
|---|
| 41 | add_action('wp_head', array(&$this, 'stop_message')); |
|---|
| 42 | add_action('admin_head', array(&$this, 'stop_message')); |
|---|
| 43 | } |
|---|
| 44 | |
|---|
| 45 | function the_content($content) |
|---|
| 46 | { |
|---|
| 47 | return $this->message; |
|---|
| 48 | } |
|---|
| 49 | |
|---|
| 50 | function the_title($title) |
|---|
| 51 | { |
|---|
| 52 | return 'Removal Failed!'; |
|---|
| 53 | } |
|---|
| 54 | |
|---|
| 55 | function stop_message() |
|---|
| 56 | { |
|---|
| 57 | remove_filter('the_content', array(&$this, 'the_content')); |
|---|
| 58 | remove_filter('the_title', array(&$this, 'the_title')); |
|---|
| 59 | } |
|---|
| 60 | |
|---|
| 61 | } |
|---|