eturn void */ private function migrateSeoAnalyzerResults() { $internalOptions = $this->getRawInternalOptions(); $results = ! empty( $internalOptions['internal']['siteAnalysis']['results'] ) ? $internalOptions['internal']['siteAnalysis']['results'] : []; if ( empty( $results ) ) { return; } $parsedData = [ 'results' => is_string( $results ) ? json_decode( $results, true ) : $results, 'score' => $internalOptions['internal']['siteAnalysis']['score'], ]; Models\SeoAnalyzerResult::addResults( $parsedData ); aioseo()->core->cache->delete( 'analyze_site_code' ); aioseo()->core->cache->delete( 'analyze_site_body' ); } /** * Migrate the SeoAnalyzer competitors results from the Internal Optinos to the new table. * * @since 4.8.3 * * @return void */ private function migrateSeoAnalyzerCompetitors() { $internalOptions = $this->getRawInternalOptions(); $competitors = ! empty( $internalOptions['internal']['siteAnalysis']['competitors'] ) ? $internalOptions['internal']['siteAnalysis']['competitors'] : []; if ( empty( $competitors ) ) { return; } foreach ( $competitors as $url => $competitor ) { $parsedData = is_string( $competitor ) ? json_decode( $competitor, true ) : $competitor; $results = empty( $parsedData['results'] ) ? [] : $parsedData['results']; if ( empty( $results ) ) { continue; } Models\SeoAnalyzerResult::addResults( [ 'results' => $results, 'score' => $parsedData['score'], ], $url ); } aioseo()->core->cache->delete( 'analyze_site_code' ); aioseo()->core->cache->delete( 'analyze_site_body' ); } /** * Adds the AI column to our posts table. * * @since 4.8.4 * * @return void */ public function addAiColumn() { if ( ! aioseo()->core->db->columnExists( 'aioseo_posts', 'ai' ) ) { $tableName = aioseo()->core->db->db->prefix . 'aioseo_posts'; if ( aioseo()->core->db->columnExists( 'aioseo_posts', 'open_ai' ) ) { aioseo()->core->db->execute( "ALTER TABLE {$tableName} ADD ai longtext DEFAULT NULL AFTER open_ai" ); } else { aioseo()->core->db->execute( "ALTER TABLE {$tableName} ADD ai longtext DEFAULT NULL AFTER options" ); } } } /** * Returns the raw options from the database. * * @since 4.8.3 * * @return array */ private function getRawInternalOptions() { // Options from the DB. $internalOptions = json_decode( get_option( aioseo()->internalOptions->optionsName ), true ); if ( empty( $internalOptions ) ) { $internalOptions = []; } return $internalOptions; } /** * Adds the column index for the cornerstone content table. * * @since 4.8.7 * * @return void */ private function addColumnIndexForCornerstoneContent() { if ( ! aioseo()->core->db->columnExists( 'aioseo_posts', 'pillar_content' ) || aioseo()->core->db->indexExists( 'aioseo_posts', 'ndx_aioseo_posts_pillar_content' ) ) { return; } $tableName = aioseo()->core->db->db->prefix . 'aioseo_posts'; aioseo()->core->db->execute( "ALTER TABLE {$tableName} ADD INDEX ndx_aioseo_posts_pillar_content (pillar_content)" ); } }
Fatal error: Uncaught Error: Class 'AIOSEO\Plugin\Common\Main\Updates' not found in /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/app/AIOSEO.php:305 Stack trace: #0 /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/app/AIOSEO.php(106): AIOSEO\Plugin\AIOSEO->load() #1 /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/app/AIOSEO.php(85): AIOSEO\Plugin\AIOSEO->init() #2 /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/app/AIOSEO.php(398): AIOSEO\Plugin\AIOSEO::instance() #3 /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.php(98): aioseo() #4 /home/kordian1/domains/klekociaki.pl/public_html/wp-settings.php(545): include_once('/home/kordian1/...') #5 /home/kordian1/domains/klekociaki.pl/public_html/wp-config.php(81): require_once('/home/kordian1/...') #6 /home/kordian1/domains/klekociaki.pl/public_html/wp-load.php in /home/kordian1/domains/klekociaki.pl/public_html/wp-content/plugins/all-in-one-seo-pack/app/AIOSEO.php on line 305