Fix theme loading: - Add proper theme list table initialization - Include required theme class - Add more theme data fields - Fix theme API request
This commit is contained in:
@ -256,6 +256,7 @@ function wpa_superstar_ajax_get_theme() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
require_once ABSPATH . 'wp-admin/includes/theme.php';
|
require_once ABSPATH . 'wp-admin/includes/theme.php';
|
||||||
|
require_once ABSPATH . 'wp-admin/includes/class-wp-theme-install-list-table.php';
|
||||||
|
|
||||||
// Try to get cached data first
|
// Try to get cached data first
|
||||||
$cached_data = wpa_superstar_get_cached_theme();
|
$cached_data = wpa_superstar_get_cached_theme();
|
||||||
@ -265,11 +266,10 @@ function wpa_superstar_ajax_get_theme() {
|
|||||||
$GLOBALS['tab'] = 'theme-install';
|
$GLOBALS['tab'] = 'theme-install';
|
||||||
$_REQUEST['tab'] = 'theme-install';
|
$_REQUEST['tab'] = 'theme-install';
|
||||||
$_REQUEST['type'] = 'theme-install';
|
$_REQUEST['type'] = 'theme-install';
|
||||||
set_current_screen('theme-install');
|
|
||||||
|
|
||||||
$wp_list_table = _get_list_table('WP_Theme_Install_List_Table', array(
|
// Set up the list table
|
||||||
'screen' => 'theme-install'
|
$wp_list_table = new WP_Theme_Install_List_Table();
|
||||||
));
|
$wp_list_table->prepare_items();
|
||||||
|
|
||||||
// Override the items with our cached data
|
// Override the items with our cached data
|
||||||
$wp_list_table->items = array($cached_data);
|
$wp_list_table->items = array($cached_data);
|
||||||
@ -293,14 +293,18 @@ function wpa_superstar_ajax_get_theme() {
|
|||||||
$theme_data = themes_api('theme_information', array(
|
$theme_data = themes_api('theme_information', array(
|
||||||
'slug' => 'kadence',
|
'slug' => 'kadence',
|
||||||
'fields' => array(
|
'fields' => array(
|
||||||
'sections' => false,
|
'sections' => true,
|
||||||
'rating' => true,
|
'rating' => true,
|
||||||
'ratings' => false,
|
'ratings' => true,
|
||||||
'downloaded' => true,
|
'downloaded' => true,
|
||||||
'last_updated' => true,
|
'last_updated' => true,
|
||||||
'homepage' => true,
|
'homepage' => true,
|
||||||
'description' => true,
|
'description' => true,
|
||||||
'screenshot_url' => true,
|
'screenshot_url' => true,
|
||||||
|
'version' => true,
|
||||||
|
'requires' => true,
|
||||||
|
'downloadlink' => true,
|
||||||
|
'active_installs' => true,
|
||||||
)
|
)
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -319,11 +323,10 @@ function wpa_superstar_ajax_get_theme() {
|
|||||||
$GLOBALS['tab'] = 'theme-install';
|
$GLOBALS['tab'] = 'theme-install';
|
||||||
$_REQUEST['tab'] = 'theme-install';
|
$_REQUEST['tab'] = 'theme-install';
|
||||||
$_REQUEST['type'] = 'theme-install';
|
$_REQUEST['type'] = 'theme-install';
|
||||||
set_current_screen('theme-install');
|
|
||||||
|
|
||||||
$wp_list_table = _get_list_table('WP_Theme_Install_List_Table', array(
|
// Set up the list table
|
||||||
'screen' => 'theme-install'
|
$wp_list_table = new WP_Theme_Install_List_Table();
|
||||||
));
|
$wp_list_table->prepare_items();
|
||||||
|
|
||||||
// Set the items directly
|
// Set the items directly
|
||||||
$wp_list_table->items = array($theme_data);
|
$wp_list_table->items = array($theme_data);
|
||||||
|
Reference in New Issue
Block a user