Title: TablePress PHP Fatal Error
Last modified: August 21, 2016

---

# TablePress PHP Fatal Error

 *  Resolved [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/)
 * I have TablePress 1.2. I have been trying to figure out this problem with TablePress
   for about a month or so. I keep getting this PHP Fatal error every day at this
   specific time of day.
 * `[30-Oct-2013 09:00:46 UTC] PHP Fatal error: Class 'TablePress_Controller' not
   found in /wp-content/plugins/tablepress/controllers/controller-frontend.php on
   line 21`
    `[31-Oct-2013 09:00:53 UTC] PHP Fatal error: Class 'TablePress_Controller'
   not found in /wp-content/plugins/tablepress/controllers/controller-frontend.php
   on line 21`
 * I’m also getting these errors
    `Oct 31, 11:42:08 PHP Fatal error: Unknown: Cannot
   use output buffering in output buffering display handlers in Unknown on line 
   0`
 * Here’s my website: [evscicats.com](http://evscicats.com)
 * Are the two types of errors related? Any assistance is greatly appreciated. Thanks!
 * [http://wordpress.org/plugins/tablepress/](http://wordpress.org/plugins/tablepress/)

Viewing 13 replies - 1 through 13 (of 13 total)

 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274880)
 * Hi,
 * thanks for your post, and sorry for the trouble.
 * That’s really strange, and I’m not really sure what could be causing this.
    That
   class that is reported to be missing is included in the file /plugins/tablepress/
   classes/class-controller.php.
 * The only explanation I see here is that this file does maybe not exist (e.g. 
   because the plugin install process was somehow interrupted/disturbed).
    Can you
   check if that file exists? Just to be sure, you might also want to consider replacing
   the /wp-content/plugins/tablepress/ folder with that from a fresh plugin download.
 * What is even more strange is that you are seeing this error every day, at the
   same time… That makes no sense to me. Maybe your webhost can help with this? 
   Are they maybe running backups at that time or something like that?
    If this 
   were a problem in TablePress, you should see this error everytime someone views
   a page with a table…
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274915)
 * Yesterday, I deleted the tablepress folder using FTP and uploaded a fresh downloaded
   version of the plugin that I got from wordpress.org yesterday.
 * When I refreshed my browser and looked at the PHP error log, these errors were
   shown and I figured they appeared due to me deleting the plugin.
 *     ```
       [30-Oct-2013 13:11:17 UTC] PHP Warning:  fopen(/wp-content/plugins/tablepress/tablepress.php): failed to open stream: No such file or directory in /wp-includes/functions.php on line 3594
       [30-Oct-2013 13:11:17 UTC] PHP Warning:  fread() expects parameter 1 to be resource, boolean given in /wp-includes/functions.php on line 3597
       [30-Oct-2013 13:11:17 UTC] PHP Warning:  fclose() expects parameter 1 to be resource, boolean given in /wp-includes/functions.php on line 3600
       ```
   
 * These errors repeated until 13:11:29 UTC when I got the plugin fully reuploaded.
 * I’ll find out from my webhost if there’s anything going on at the time for the
   earlier error and report back.
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274916)
 * Hi,
 * ok, that should actually be sufficient then.
 * It is expected that you get some of these erros during the update, because people
   will still be visiting the site and trigger the loading of the file.
 * Please check with your FTP program again, if all files were copied over (especially
   in the “tablepress/classes” folder). Sometimes, due to an FTP timeout, files 
   are not copied properly.
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274924)
 * I talked with my webhost guy and also with my team of authors. Seems we have 
   had two things scheduled at that same exact time and not sure which is triggering
   the error with TablePress.
 * My team has been scheduling a daily post at 9:00UTC and the webhost also has 
   a backup running on the site at 9:00UTC. I asked my team to reschedule the daily
   post for tomorrow to 3:30 am and we’ll see if the error happens at that time 
   and/or with the backup.
 * My webhost guy told me the backup he runs is: “It’s a cron job that runs on at
   9:00UTC. It runs a command to copy and archive all the files and moves it to 
   the netapp, it also does a dump of the mysql database and moves it.” It’s not
   a plugin doing the backup. It’s something he has setup on the server.
 * The other thing I went ahead and turned off was the plugin **Edit Flow**. I had
   Edit Flow set to notify me every time a post was scheduled or changed and I am
   checking the log to see if the other PHP Fatal Errors match up with when I was
   notified of the status updates of the posts.
 * I also have read online that scheduling posts with WordPress seems to cause the
   PHP Fatal Errors so I don’t know if we need to report this to WordPress or come
   up with a different workflow.
 * I’ll update this forum tomorrow morning with an update of what happens overnight.
   Thanks for your support.
 * Happy Halloween!
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274925)
 * Hi,
 * thanks for further investigating this!
    I don’t really think that the scheduled
   post causes this, as that doesn’t trigger requests to the files like that. (That’s
   why I’m confused that you say that this apparantly can cause PHP Fatal Errors,
   as you have read. However, if this really happened more often (or for many people),
   I’d assume that this has already been reported to the WordPress bug tracker).
 * So, my assumption is that during that backup process, when the files are copied,
   a user visits a page with a table right at a time when the file is not there,
   and that seems to be triggering the error.
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274957)
 * The error happened again overnight and at the changed scheduled time the post
   went live. No other cron jobs were scheduled to run at that time.
 * `[01-Nov-2013 12:40:46 UTC] PHP Fatal error: Class 'TablePress_Controller' not
   found in /wp-content/plugins/tablepress/controllers/controller-frontend.php on
   line 21`
 * I just tried scheduling a page to post a few minutes ago and it happened again.
 * `[01-Nov-2013 12:40:46 UTC] PHP Fatal error: Class 'TablePress_Controller' not
   found in /wp-content/plugins/tablepress/controllers/controller-frontend.php on
   line 21`
 * When I go into a post or page and publish it straight from draft, the error does
   not occur. Updating posts and pages the error does not occur. It’s only occurring
   when it’s scheduled to post.
 * The other PHP Fatal Errors have not occurred again though, so keeping my fingers
   crossed those will stay away.
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274958)
 * Hi,
 * ok, thanks for that information. That’s really strange then.
    By default, TablePress
   does not load itself when “DOING_CRON” is set, i.e. when scheduled posts are 
   published. That’s why I think that something else (another plugin?) is likely
   loading the controller-frontend.php class, but without loading the class-controller.
   php file as well…
 * Now, as long as TablePress is working correctly and as long as all this does 
   is produce the log file entry, we should not be too concerned, I guess.
    I’ll
   try to reproduce this on my test installs, to see if I can maybe harden the load
   process.
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274965)
 * What can I look for in the scripts of my plugins that would load the frontend.
   php class?
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4274966)
 * Hi,
 * you could check, if they manually load the file “controller-frontend.php”, or
   the PHP classes “TablePress_Controller_Frontend” or “TablePress_Controller”.
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4275034)
 * I found where the controller-frontend.php is being loaded. It’s in the Relevanssi
   search plugin. It’s in the indexing.php file at line 325 located in the ‘wp-content/
   plugins/relevanssi/lib/indexing.php’. Here’s the code.
 *     ```
       if ('on' == get_option('relevanssi_expand_shortcodes')) {
       	if (function_exists("do_shortcode")) {
       	// WP Table Reloaded support
       	if (defined('WP_TABLE_RELOADED_ABSPATH')) {
       		include_once(WP_TABLE_RELOADED_ABSPATH . 'controllers/controller-frontend.php');
       		$My_WP_Table_Reloaded = new WP_Table_Reloaded_Controller_Frontend();
       				}
       	// TablePress support
       		if (defined('TABLEPRESS_ABSPATH')) {
       			include_once(TABLEPRESS_ABSPATH . 'controllers/controller-frontend.php');
       			$My_WP_Table_Reloaded = new TablePress_Frontend_Controller();
       					$My_WP_Table_Reloaded->init_shortcodes();
       				}
       ```
   
 * Is this the cause?
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4275035)
 * Hi,
 * great find! 🙂 Yes, that is exactly it!
 * This way of loading TablePress’s Shortcodes will fail during Cron requests (like
   when publishing a scheduled post), because the “TablePress_Controller” is not
   loaded. This is not that much of a problem, except for those entries in the error
   log.
 * That piece of code should probably be changed to
 *     ```
       // TablePress support
       if ( defined( 'TABLEPRESS_ABSPATH' ) ) {
       	$My_TablePress_Controller = TablePress::load_controller( 'frontend' );
       	$My_TablePress_Controller->init_shortcodes();
       }
       ```
   
 * With that, all required files will be loaded, so that the error will no longer
   appear.
 * Regards,
    Tobias
 *  Thread Starter [Jerrad](https://wordpress.org/support/users/jjgleim/)
 * (@jjgleim)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4275037)
 * It worked!
 * I replaced the code starting at line 332 in the indexing.php file and scheduled
   a page to post and the error did not reappear. Thanks so much for your help.
 * Do I need to notify the author of the other plugin about the fix or do you do
   that?
 *  Plugin Author [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * (@tobiasbg)
 * [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4275038)
 * Hi,
 * very nice! Great to hear that this helped!
 * It would be great if you could send the suggested fix to the Relevanssi developer,
   I’m a little busy at the moment. Thanks!
 * Best wishes,
    Tobias
 * P.S.: In case you haven’t, please [rate TablePress](http://wordpress.org/support/view/plugin-reviews/tablepress)
   here in the plugin directory. Thanks!

Viewing 13 replies - 1 through 13 (of 13 total)

The topic ‘TablePress PHP Fatal Error’ is closed to new replies.

 * ![](https://ps.w.org/tablepress/assets/icon.svg?rev=3192944)
 * [TablePress - Tables in WordPress made easy](https://wordpress.org/plugins/tablepress/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/tablepress/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/tablepress/)
 * [Active Topics](https://wordpress.org/support/plugin/tablepress/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/tablepress/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/tablepress/reviews/)

## Tags

 * [output buffer](https://wordpress.org/support/topic-tag/output-buffer/)
 * [PHP Fatal error](https://wordpress.org/support/topic-tag/php-fatal-error/)

 * 13 replies
 * 2 participants
 * Last reply from: [Tobias Bäthge](https://wordpress.org/support/users/tobiasbg/)
 * Last activity: [12 years, 6 months ago](https://wordpress.org/support/topic/tablepress-php-fatal-error/#post-4275038)
 * Status: resolved