migration->oldOptions; $rules = aioseo()->options->tools->robots->rules; if ( ! empty( $oldOptions['modules']['aiosp_robots_options'] ) && ! empty( $oldOptions['modules']['aiosp_robots_options']['aiosp_robots_rules'] ) ) { $rules += $this->convertRules( $oldOptions['modules']['aiosp_robots_options']['aiosp_robots_rules'] ); } aioseo()->options->tools->robots->rules = $rules; } /** * Converts the old Robots.txt rules to the new format. * * @since 4.0.0 * * @param array $oldRules The old rules. * @return array $newRules The converted rules. */ private function convertRules( $oldRules ) { $newRules = []; foreach ( $oldRules as $oldRule ) { $newRule = new \stdClass(); $newRule->userAgent = aioseo()->helpers->sanitizeOption( $oldRule['agent'] ); $newRule->rule = aioseo()->helpers->sanitizeOption( lcfirst( $oldRule['type'] ) ); $newRule->directoryPath = aioseo()->helpers->sanitizeOption( $oldRule['path'] ); array_push( $newRules, wp_json_encode( $newRule ) ); } return $newRules; } }