According to Google, you should list your AJAX URLs in a sitemap exactly as you say you've done:
"4. Consider updating your Sitemap to list the new AJAX URLs
Crawlers use Sitemaps to complement their discovery crawl. Your Sitemap should include the version of your URLs that you'd prefer to have displayed in search results, so in most cases it would be http://example.com/ajax.html#!key=value
."
At this point, I'll have to assume that the problem is somewhere else.
In particular, keep in mind that the method Google uses to fetch AJAX pages is not the same as how normal browsers do it, and that it requires extra server-side support (parsing the _escape_fragment_
query parameter and serving the appropriate server-side generated version of the AJAX content based on it). If your index.php
is not set up to do that, Google will never even see you AJAX content, and thus cannot index it.
To start with, I'd suggest using the Fetch as Googlebot feature of the Google Webmaster Tools to see if Google can even load your AJAX content. If it cannot, follow the instructions here to set up your site so that it can.