Load a panels display in code To load a Panel display from the database we can use panels_load_display($did)

However, the $did value is an autoincrement value from the database. It is not present in exported Panel page displays (e.g features export).

I thought perhaps we could use ctools_export_object_load to load the exported panels display.

However, I found that it only returns a result if the display is in the panels_display table in the database, and returns empty empty for exported code storage displays.

e.g: 

// Attempt to load Panels display
ctools_include('export');
$uuid = '49c15c71-d5d1-d574-b539-0149f912f925';
$display  = ctools_export_load_object('panels_display', 'conditions', array('uuid' =&gt; $uuid ));
var_export($display); // empty array if not in DB.


How can we load a Panel display in code when that display is exported in features and using code-based storage?
The relationship between tables and their exported datasets is declared via the export key in a table's schema definition. We can see that key both for page_manager_pages and panels_display. 

ctools also allows the definition of a default hook. If non was provided it will fall back to default_{table}. 

When loading a ctools exportable via ctools_export_load_object() ctools will first query the table for objects, then invoke the default hook to retrieve any objects stored in code.

When page manager pages are exported, panels_display objects are not declared separately under their own hook, but are wrapped in hook_default_page_manager_pages().
In order to retrieve them by their UUID they would have to be declared within hook_default_panels_display().