Support » Plugin: TablePress » Accessing TablePress $data

  • Resolved James W. Lane


    I been working on my next revision of my Schema Plugin to work not only with your latest commit, but also resolve that issue where if I save the Schema Data it breaks the ajax for TablePress editor.

    I decided the best approach would be add a tab and build a new UI from there.

    I built a class extending the class TablePress_View and have it showing up as a tab and in the sidebar properly. But when I try to read $data its only giving me a array of the tabs and their settings that wads defined in init_view_actions() in controller-admin.php.

    My plan for this revision is to have a list of all the tables and when you select one to ajax load a new Schema settings interface. And when they save to save it to the $options for that $id vs saving it to its own table in the WordPress database. So I need to figure out a way I can list all of the tables, access the data in them, and save to their options. By looking at the Auto Import plugin I can mimic what you have for saving the options. But since it extends the Import class I think the access to the $data is being handled by that class. Yet I can seem to figure out the correct public variable to access $data.

    If you can point me in the right direction for this that would be great.


Viewing 3 replies - 1 through 3 (of 3 total)
  • Plugin Author TobiasBg


    Hi James,

    yes, using a separate tab might indeed be the best option here, as the “Edit” screen is really hard to work with.

    For another example of how to create a new tab, see this Extension:

    The $data array that you are getting is not the table data, but the view data.
    To also get the table data, you will need to load the desired data (the list of table IDs) in the tablepress_view_data hook (in the same way as it’s done in TablePress_Controller_Admin::load_admin_page().

    Saving it to the table’s own options is however also tricky, as you would first have to extend the data scheme. For new tables, that’s possible by filtering that scheme, but for existing tables, you could run into trouble. The better approach might therefore be to use a custom structure (e.g. a JSON encoded array, as JSON is better than serialize() in a WP Option).


    Yeah I figured out how to add the table like you did in your debug extension, I am getting better at this 🙂

    I will look at pulling the data through that method

    I will also look at JSON encoding the array for saving.

    Those are my goals for this week. That and putting out other fires at work.

    Plugin Author TobiasBg



    nice! Good to hear that the Debug Extension is helpful, and that the other suggestions are also helpful. 🙂


Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘Accessing TablePress $data’ is closed to new replies.