I can personally confirm that at least as of today, google will add jumplinks for singlepage scrolling sites...but I have not found a way to get sitelinks.
To get jumplinks working you should have:
href="#idOfContent" with anchor text (or alt text for image links) which you want to show on google as a jumplink.
- document elements with corresponding IDs to the URL fragment.
In the example below the jump links are Section Title 1,3,4:
I thought I had site links but apparently only have jump links for my single page site.
Jump links are provided for single page sites if you have the anchors and things setup properly. Haven't found any docs from google about them yet though which is strange.
If your single page site uses url fragments (
#sectionid) you may be out of luck for site links. However there are some client-side js frameworks ("single page app" type stuff) that can work with normal URIs (e.g.
The problem with this is that google will see the content on all these supposedly different pages (different URIs) all have the same content and will likely penalize you in search results or only show one of your pages.
The other problem is that if you really just have a single page scrolling site...using in-page links with url fragments is really the right way to do it.
Another problem with this may be that web browsers will think these are all different pages and cache them independently.
Moral of the story:
single page site with jumplinks is great for very basic marketing/corporate websites where you don't have that much content. However as your site content expands it really does make sense to add more pages in order to group similar content together (e.g. products page, pricing page, login page, etc would make sense to be different than the home page).
If you have a "single page app" that is really a multi-page site (google search docs 3 calls this the app shell model)... then you should do what I suggested above and have your singlepage app use the URI instead of the URL fragment to determine which content/page to show. Different URIs should show different content, different page titles, different page meta descriptions, etc.
Don't confuse sitemaps (e.g. sitemap.xml) with sitelinks.
Sitelinks are a google specific thing which are sub-links to individual pages/sections under your website search result.
Google Webmaster tools will allow you to submit a sitemap. This is really only necessary if for some reason you think that google's crawler may have trouble discovering all your pages.
Providing google webmaster tools a sitemap will help their crawler to discover your pages in order to crawl them (ie if for some reason google can't find all your pages via following links from your home page).
If google can't find/crawl your pages without a sitemap.xml...then this will of course prevent google from generating sitelinks. Besides that sitelinks and sitemaps are not related.
...when you have content not readily linked by other pages, such as new pages or obscure information, you can help our system learn about your URLs by providing them in a list, known as a sitemap. (2)
According to google (1) the sitelink generation process is automated based on their proprietary algorithms. This means you can't force sitelinks to show up, you can just try to do the right technical things to enable google to show sitelinks if they decide they want to.
Google may draw the content of sitelinks from page titles, anchor text (or alt text for image links), page meta-data, etc.