I'm creating a portfolio site where I have a set of links on the home page and each link calls its respective post via Ajax. When a post is called, a hidden div gets populated with the response and through the history api, the url (previously example.com) changes as well.

enter image description here

With the change, the URL is now example.com/projects/title-of-project. When a user enters that URL directly into their address bar, it leads them to the single.php template where I have set up a template with the respective post static on top with the rest of the posts underneath it, basically exactly like the home page except with the static post on top. This is so users are actually able to visit/share a real url and feel like they haven't left the home page, making the experience seamless.

Would this set off Google's radar and would they punish me for duplicate content?

2 Answers 2


I'm not sure if the Google bot is able to execute your JavaScript code but to be sure you could just block the access for the bots to the directory "/projects" in your robots.txt or install a SEO plugin and set the meta "robots" of the post_type projects to "noindex".

BTW You can set this yourself with a hook:

function noindex_for_projects() {
    if ( is_singular( 'projects' ) ) {
        echo '<meta name="robots" content="noindex">', "\n";
add_action( 'wp_head', 'noindex_for_projects' );
  • This hasn't crossed my mind. Ideally, I'd like the project pages to show up on searches. If worse comes to worst, I'll have to just forget about the rest of the posts on the single template and show the main post on top only.
    – Desi
    Commented Jan 27, 2015 at 1:39

What you have is basically a fancy nav-bar. Most web sites have duplicate navigation links which can be ignored. What really matters is the amount of unique content on the page. If your POST LOADS HERE content is at least as large as the .post link boxes, then you should be fine. Just put a lot of unique text into your main content area for each page.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.