First off, in case I’ve WAY over thought your question and all you want is to see the raw xml for each sitemap file, I’ll save you some time reading the rest of my post: you can open the page up in your browser (your-site.com/sitemaps.xml) and, if you’re using Chrome simply right click on the page and choose “View Page Source.”
If that’s not all you wanted to do, read on, friend…
You aren’t seeing the sitemap where you’d normally expect it because the plugin is dynamically handling the output of the xml file. It’s similar to the way WordPress uses a database to serve up your site’s content: when you create a new page or post on your site, WordPress doesn’t create a new .html file and put it on your server. Instead, it puts the content of that post into a database and then it’s served up based on what your browser requests.
Assuming that your FTP client is set up to see everything within the WordPress directory, you can look at the files in the plugin’s directory to get a better idea as to how the magic happens. (wpcontent/plugins/wordpress-seo/) The authors of this particular plugin do a spectacular job of documenting what their code does, so even if you don’t speak fluent php, you can get a pretty good idea of what’s happening by reading what’s in each file.
Let’s start with the file class-sitemaps.php (full path is wpcontent/plugins/wordpress-seo/inc/class-sitemaps.php) This is where the content of the sitemap(s) is generated, taking into account each of the options you’ve set within the plugin’s settings page (in your WP admin panel). It’s the recipe for making each specific sitemap, and that recipe includes instructions for how to create the url for each sitemap. Take note of this:
/**
* Make a request for the sitemap index so as to cache it before the arrival of the search engines.
*/
function hit_sitemap_index() {
$url = wpseo_xml_sitemaps_base_url( 'sitemap_index.xml' );
wp_remote_get( $url );
}
So this file bakes up the content of each sitemap and then craps a link to each of these individual files into the sitemap_index.xml file. Then it says sitemap_index.xml can be found at the url wpseo_xml_sitemaps_base_url/sitemap_index.xml. So how does wpseo_xml_sitemaps_base_url turn into your website’s domain name?
The file wpseo-functions.php (full path is wpcontent/plugins/wordpress-seo/inc/wpseo-functions.php) contains rewrite rules that say “any browser looking for sitemaps.xml” should go to the home_url() + sitemaps_index.xml. On line 166, you’ll see the function wpseo_xml_sitemaps_base_url. This says to use home_url() and append a string to it, based on sitemap it’s referencing – for example, the sitemap for a custom post type named “snack-schedule” would be https://www.your-site.com/snack-schedule.xml
Granted, this is a very glossed-over explanation of what these plugin files do, but it should help to explain what the plugin is doing under the hood, and why you aren’t finding the xml files you expected to find.