Frames and search engines

Discussion in 'HTML' started by Martin Johansen, Mar 2, 2004.

  1. Hello.

    I have a website which uses frames.

    The window is splitt in two, with a menu on lefthand side and a contents
    page on the right.

    If a person accesses my website from a search engine search, they reach the
    content page, but they do not see the manu. This is bacause the index.htm is
    the page containing the frame info.

    How can I solve this in HTML?

    Thanks.
     
    Martin Johansen, Mar 2, 2004
    #1
    1. Advertising

  2. "Martin Johansen" <> wrote:

    > If a person accesses my website from a search engine search, they reach the
    > content page, but they do not see the manu. This is bacause the index.htm is
    > the page containing the frame info.
    >
    > How can I solve this in HTML?


    Get rid of frames.

    --
    Top-posting.
    What's the most irritating thing on Usenet?
     
    Andreas Prilop, Mar 2, 2004
    #2
    1. Advertising

  3. Martin Johansen wrote:

    > I have a website which uses frames.


    Oh dear

    > The window is splitt in two, with a menu on lefthand side and a contents
    > page on the right.


    Sometimes frames are a good tool. Using them for navigation on a website is
    not one of those times.

    > If a person accesses my website from a search engine search, they reach
    > the content page, but they do not see the manu.


    Yes, this is because you have content on the content page. Search engines
    index content.

    > How can I solve this in HTML?


    Best solution - get rid of the frames.

    Poor solution - use robots.txt to keep search engines away from your content
    pages. Create a new frameset document for every combination of page views.
    Put good noframes content in every frameset document. Link (with
    target="_top") only to frameset documents.

    --
    David Dorward <http://dorward.me.uk/>
     
    David Dorward, Mar 2, 2004
    #3
  4. Martin Johansen

    Steve R. Guest

    Martin Johansen wrote in message ...
    > How can I solve this in HTML?


    It's easy to solve Martin. Just copy and paste (via notepad) the code
    below. Place it between </title> and </head> on your main page and also on
    your menu page, in case the menu page also gets picked up on its own by a
    search engine.

    <script language="JavaScript">
    if (parent.location.href == self.location.href){
    window.location.href = 'index.htm'
    }
    </script>
     
    Steve R., Mar 2, 2004
    #4
  5. Martin Johansen

    Steve Pugh Guest

    "Steve R." <stevie_ritchie(NOSPAM)@hotmail.com> wrote:

    >Martin Johansen wrote in message ...
    >> How can I solve this in HTML?

    >
    >It's easy to solve Martin. Just copy and paste (via notepad) the code
    >below. Place it between </title> and </head> on your main page and also on
    >your menu page, in case the menu page also gets picked up on its own by a
    >search engine.
    >
    ><script language="JavaScript">


    Quaint, HTML 3.2

    >if (parent.location.href == self.location.href){
    >window.location.href = 'index.htm'
    >}
    ></script>


    So that loads the index page, and not the page the user was searching
    for? (Assuming that the site actually consists of more than one page).
    Not very friendly. If you're going to suggest this sort of thing at
    least suggest that the frameset be dynamically generated with the
    correct pages loaded.

    Steve

    --
    "My theories appal you, my heresies outrage you,
    I never answer letters and you don't like my tie." - The Doctor

    Steve Pugh <> <http://steve.pugh.net/>
     
    Steve Pugh, Mar 2, 2004
    #5
  6. Martin Johansen

    Mark Parnell Guest

    On Tue, 02 Mar 2004 21:07:12 GMT, "Steve R."
    <stevie_ritchie(NOSPAM)@hotmail.com> declared in alt.html:

    > <script language="JavaScript">
    > if (parent.location.href == self.location.href){
    > window.location.href = 'index.htm'
    > }
    > </script>


    1) This won't work for those with Javascript disabled/unavailable.
    2) Even if it does work, they will be redirected to the home page, not
    the page they found in the search engine. Most will then just go back
    and try the next result.

    As others have said, getting rid of the frames is by far the best
    solution.

    http://html-faq.com/htmlframes/?framesareevil
    http://homepage.ntlworld.com/l_vajzovic/tom/web/frames.html
    http://dorward.me.uk/www/frames/
    http://www.google.com/webmasters/2.html (see under "Your page uses
    frames")

    --
    Mark Parnell
    http://www.clarkecomputers.com.au
     
    Mark Parnell, Mar 2, 2004
    #6
  7. Martin Johansen

    Eric Bohlman Guest

    "Martin Johansen" <> wrote in
    news:Vj61c.7929$:

    > Hello.
    >
    > I have a website which uses frames.
    >
    > The window is splitt in two, with a menu on lefthand side and a
    > contents page on the right.
    >
    > If a person accesses my website from a search engine search, they
    > reach the content page, but they do not see the manu. This is bacause
    > the index.htm is the page containing the frame info.
    >
    > How can I solve this in HTML?


    In HTML, you solve it by simply not using frames. This kind of two-column
    layout is very easily achieved in HTML with CSS, giving you a single
    document. If your menu is so heavy that including it in the source for
    each page causes bandwidth or storage problems, it's probably to big to be
    usable anyway. If you're main concern is that changes to the menu not have
    to be made in more than one place, use server-side includes, server-side
    scripting, or preprocessing.

    If, after all this, you really *must* (not just want to) use frames, then
    you'll need server-side scripting ability. What you'll need to do is write
    a little script (I'll assume PHP here and call it framegen.php) that spits
    out a frameset in which the src attribute of the right <frame> is set to
    the PATH_INFO passed to the script. Then in your menu page, you'd replace
    any link like <a href="mydomain.com/mypage.html" target="rightframe"> with
    <a href="mydomain.com/framegen.php/mydomain.com/mypage.html" target="_top">
    (you could have the script do the job of inserting the domain name into the
    generated content so you could write
    "mydomain.com/framegen.php/mypage.html" instead). Now all the links will
    point to new framesets that contain the menu frame and the appropriate
    content frame, and search engines will index based on the new urls.
     
    Eric Bohlman, Mar 2, 2004
    #7
  8. Martin Johansen

    Steve R. Guest

    Eric Bohlman wrote in message ...
    > If, after all this, you really *must* (not just want to) use frames, then
    > you'll need server-side scripting ability.


    If you are a relative newbie and don't understand what Eric means, you can
    simply use the <script> code I gave in my previous post. It does work :~)

    The number of people disabling javascript in *reality* is negligible. It's
    only the purists on the HTML groups who do things like that :~(

    There are so many websites using javascript nowadays it would be futile to
    disable it for any other reason than testing purposes.
     
    Steve R., Mar 3, 2004
    #8
  9. Martin Johansen

    Kris Guest

    In article <Tdh1c.7352$>,
    "Steve R." <stevie_ritchie(NOSPAM)@hotmail.com> wrote:

    > The number of people disabling javascript in *reality* is negligible. It's
    > only the purists on the HTML groups who do things like that :~(


    Lesson of today: Google is a purist.

    --
    Kris
    <> (nl)
    <http://www.cinnamon.nl/>
     
    Kris, Mar 3, 2004
    #9
  10. Martin Johansen

    Eric Bohlman Guest

    "Steve R." <stevie_ritchie(NOSPAM)@hotmail.com> wrote in
    news:Tdh1c.7352$:

    > Eric Bohlman wrote in message ...
    >> If, after all this, you really *must* (not just want to) use frames,
    >> then you'll need server-side scripting ability.

    >
    > If you are a relative newbie and don't understand what Eric means, you
    > can simply use the <script> code I gave in my previous post. It does
    > work :~)
    >
    > The number of people disabling javascript in *reality* is negligible.
    > It's only the purists on the HTML groups who do things like that :~(
    >
    > There are so many websites using javascript nowadays it would be
    > futile to disable it for any other reason than testing purposes.


    But for people *with* Javascript enabled, it simply sends them to the
    site's homepage (or the initial configuration of the frameset), *not* the
    page that contains the information that the user was searching for. The
    user now has to figure out where in the site the information he was looking
    for really is. Or he might conclude that your site was "spamdexing,"
    trying to make itself come up as the result of searches for information
    unrelated to the site itself. Or he might conclude that the page he found
    during the search was obsolete and had been removed. In all these cases,
    the user is likely to hit the back button and go to the next promising
    search result.

    It is simply a *major* usability gaffe for a site to redirect a link from a
    search engine results page to a page that doesn't contain what the user was
    searching for and doesn't match the excerpt displayed by the search engine.
    Users get *really* pissed off when that happens.
     
    Eric Bohlman, Mar 3, 2004
    #10
  11. Martin Johansen

    Whitecrest Guest

    In article <4all.nl>,
    erlands says...
    > Lesson of today: Google is a purist.


    Lesson 2. So what, it does not change the REALITY of javascript Steve
    mentioned.

    --
    Whitecrest Entertainment
    www.whitecrestent.com
     
    Whitecrest, Mar 3, 2004
    #11
  12. Martin Johansen

    Whitecrest Guest

    In article <Xns94A125402CC8Aebohlmanomsdevcom@130.133.1.4>,
    says...
    > It is simply a *major* usability gaffe for a site to redirect a link from a
    > search engine results page to a page that doesn't contain what the user was
    > searching for and doesn't match the excerpt displayed by the search engine.
    > Users get *really* pissed off when that happens.


    The OP needs to redirect to the correct page in the frameset. It is just
    as easy to direct to the appropriate page in the appropriate frame.

    Their mistake was not frames or the use of javascript, their mistake was
    where they end up redirecting you to.

    --
    Whitecrest Entertainment
    www.whitecrestent.com
     
    Whitecrest, Mar 3, 2004
    #12
  13. Martin Johansen

    Eric Bohlman Guest

    Whitecrest <> wrote in
    news::

    > In article <Xns94A125402CC8Aebohlmanomsdevcom@130.133.1.4>,
    > says...


    > The OP needs to redirect to the correct page in the frameset. It is
    > just as easy to direct to the appropriate page in the appropriate
    > frame.


    But that requires one frameset page for each content page. If they have to
    be generated statically, that means two files need to be maintained for
    each content page. If they're generated dynamically as I proposed, then
    you only need the files for the content pages and one script file that can
    generate all the framesets. And you can serve each request in one step
    rather than two since you don't need to do a redirect.
     
    Eric Bohlman, Mar 3, 2004
    #13
  14. Martin Johansen

    Kris Guest

    In article <>,
    Whitecrest <> wrote:

    > > Lesson of today: Google is a purist.

    >
    > Lesson 2. So what, it does not change the REALITY of javascript Steve
    > mentioned.


    It changes the usefulness; you can ignore a minority group of purists,
    but you cannot ignore Google.

    --
    Kris
    <> (nl)
    <http://www.cinnamon.nl/>
     
    Kris, Mar 3, 2004
    #14
  15. Martin Johansen

    Steve R. Guest

    Kris wrote in message ...
    > Google is a purist.


    Not *that* pure, as sites using javascript still come up well in search
    results. <grin>
     
    Steve R., Mar 3, 2004
    #15
  16. Thanks for the replies.

    I will solve the problem by programming a pregeneration program, which
    merges the frames onto a table.

    Thanks for that tip, someone which name i don't remember.

    - Martin
     
    Martin Johansen, Mar 4, 2004
    #16
  17. David Dorward, Mar 4, 2004
    #17
  18. Martin Johansen

    Whitecrest Guest

    In article <Xns94A13190B4E5ebohlmanomsdevcom@130.133.1.4>,
    says...
    > > The OP needs to redirect to the correct page in the frameset. It is
    > > just as easy to direct to the appropriate page in the appropriate
    > > frame.

    > But that requires one frameset page for each content page.....


    No, create a default.asp (php, what ever) that has the frame set. that
    looks for a page "id" (or url) in the query string. No ID or URL, then
    load the default page

    When the person book marks a content page, and returns to it later,
    there is some nasty javascript that says "if there is not a parent
    frame, then go to my default page, and pass this ID there. The parent
    then page loads the frameset with the correct content.

    It is done all the time to solve this issue.

    --
    Whitecrest Entertainment
    www.whitecrestent.com
     
    Whitecrest, Mar 4, 2004
    #18
  19. Martin Johansen

    Whitecrest Guest

    In article <4all.nl>,
    erlands says...
    > > > Lesson of today: Google is a purist.

    > > Lesson 2. So what, it does not change the REALITY of javascript Steve
    > > mentioned.

    > It changes the usefulness; you can ignore a minority group of purists,
    > but you cannot ignore Google.


    Again, so what. Do we all need to do what google does? Is Google the
    king of all that is right?

    No.

    --
    Whitecrest Entertainment
    www.whitecrestent.com
     
    Whitecrest, Mar 4, 2004
    #19
  20. Martin Johansen

    Mark Parnell Guest

    On Thu, 4 Mar 2004 05:31:25 -0500, Whitecrest <>
    declared in alt.html:

    > Again, so what. Do we all need to do what google does? Is Google the
    > king of all that is right?


    He is talking about Googlebot, not the web site.

    --
    Mark Parnell
    http://www.clarkecomputers.com.au
     
    Mark Parnell, Mar 4, 2004
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    0
    Views:
    417
  2. Daniel Vesma
    Replies:
    15
    Views:
    1,529
    Jacqui or (maybe) Pete
    Jul 2, 2003
  3. phl
    Replies:
    0
    Views:
    354
  4. Chris K.
    Replies:
    3
    Views:
    742
    Chris K.
    Jun 8, 2008
  5. SROSeaner

    Meta-Search the Search Engines

    SROSeaner, Sep 15, 2004, in forum: ASP General
    Replies:
    1
    Views:
    151
Loading...

Share This Page