My first plugin. Why doesn't it work? And how to debug?
-
This is my first Plugin. I coded it by viewing some tutorials… but it doesnt work π
I try to set the shortcode [randteasers] to my WP Blog and nothing happens… its not parsed…
<?php /* Plugin Name: Random Pageteasers Plugin URI: http://www.iscope.de Description: Show teasers for random pages Author: Fabian Heinrich <fheinrich@iscope.de> Author URI: http://www.iscope.de Version: 0.0.1 */ if(!class_exists('randTeasers')) { class randTeasers { function __construct() { var_dump('CONSTRUCTOR'); register_activation_hook( __FILE__, array(&$this, 'activate')); register_deactivation_hook( __FILE__, array(&$this, 'deactivate')); } function activate() { // Code to execute when the plugin is activated (for example set actions & filters) // ... var_dump('ACTIVATED'); } function deactivate() { // Code to execute when the plugin is deactivated (for example remove actions & filters) remove_shortcode('pageteasers'); var_dump('DEACTIVATED'); } // New filtering function that will add a where clause to the query function filter_where($where = '') { // Pages from the last x days $where .= " AND post_date > '" . date('Y-m-d', strtotime('-8 days')) . "'"; return $where; } function getRandomTeasers() { // Add filter for sql-where clause add_filter('posts_where', array(&$this, 'filter_where')); // Add arguments for WP_Query $args = array( 'orderby' => 'rand', 'post_type' => 'page', 'post_status' => 'publish', 'posts_per_page' => 4, 'caller_get_posts'=> 1 ); // Initialize WP_Query with arguments $my_query = null; $my_query = new WP_Query($args); // Execute query, receive page data and build html if ($my_query->have_posts()) { while ($my_query->have_posts()) { $my_query->the_post(); echo "<p><a href=\"".the_permalink()."\" rel=\"bookmark\" title=\"Permanent Link to ".the_title_attribute()."\">".the_title()."</a> (vom ".get_the_date().")</p>"; } } // Remove filter for sql-where clause remove_filter('posts_where', array(&$this, 'filter_where')); // Restore global post data stomped by the_post(). wp_reset_query(); } } } else { $randTeasersObject = new randTeasers(); var_dump('TEST2'); if (isset($randTeasersObject)) { var_dump('TEST1'); // Add wordpress init-action for plugin-activation add_action('init', array(&$randTeasersObject, 'activate')); // Add wordpress shortcode add_shortcode('randtreasers', array(&$randTeasersObject, 'getRandomTeasers')); } } ?>
Viewing 2 replies - 1 through 2 (of 2 total)
Viewing 2 replies - 1 through 2 (of 2 total)
- The topic ‘My first plugin. Why doesn't it work? And how to debug?’ is closed to new replies.