Jump to content
TNG Community

Drop in # of Indexed Pages


sjwinslow

Recommended Posts

Steve,

I am attempting to implement your fix. Is it only the URL which must be altered? I am having no luck with changing only the URL to go to my website and then noticed that there is a tree name in your code.

You use "tree" for your tree. I use, for example, "XXXX" for my tree and made the change below. Still no luck.

$HTTP_SESSION_VARS[tng_search_tree] = $XXXX;

//$HTTP_SESSION_VARS[tng_search_tree] = $tree;

Link to comment
Share on other sites

  • Replies 97
  • Created
  • Last Reply

Top Posters In This Topic

  • sjwinslow

    47

  • Ed Barnard

    16

  • arnold

    11

  • theKiwi

    6

arnold,

You should not change the $tree value. That has to with the core TNG not any mods I made. The only thing you should have to do to get the find.php script to work on your site is search for:

$find_url = "http://www.winslowtree.com/tree/find.php?";

and replace it with

$find_url = "http://XXXXXX/YYYYYYY/find.php?";

where XXXXXX is your full domain name and YYYYYYY is the directory you have the find.php file located on you site (if it is in the root directory then don't include this)

In your case specifically you should save the find.php file in http://www.sprague-database.org/genealogy/

And the replacement line should look like this:

$find_url = "http://www.sprague-database.org/genealogy/find.php?";

Once you have made the changes to the find.php file and stored it in the correct directory on your server you should be able to test it by clicking on this:

http://www.sprague-database.org/genealogy/find.php

You should see 1 page of 600 names starting with your first surname.

Link to comment
Share on other sites

Thank you. I checked carefully what I had entered and noticed that I had failed to include the first quote, as immediatley below. Sorry to bother you.

$find_url = http://XXXXXX/YYYYYYY/find.php?";

Below is what I entered in my index.php file. It seemed to work and I assumed that everything between the Form tags was needed.

<form action="/tree/find.php" method="GET">

<input type="hidden" name="mybool" value="AND">

<table border="1" cellspacing="3" cellpadding="0" width="120">

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><b><font size="2">Search for Names</font></b></td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><span class="normal">Last Name: </span><br><input type="text" name="mylastname" size="14"></p>

</td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><span class="normal">First Name:</span><br><input type="text" name="myfirstname" size="14"></p>

</td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><input type="submit" name="search" value="Search"> </p>

</td></tr>

</table>

</form>

I want to thank you for your long and detailed explanation as to what you did. It was very informative and helpful.

Link to comment
Share on other sites

arnold,

What site did you place this code on? I don't believe it will obtain the results you desire. Remember we are primarily doing this for the search engines. Search engines can't fill out forms.

Steve

P.S. Take a look a Gail's site. You can see how she has placed all of her surnames on the home page and each of the surnames links to the appropriate find.php page. This way the search engines can follow the links.

http://www.roots2buds.net

Link to comment
Share on other sites

Steve,

I have two TNG licenses. I am experimenting with a second website. I cannot give out the URL as the website still has personal information.

I entered the find.php link as *I think* you have it on your web page:

<form action="/tree/find.php" method="GET">

<input type="hidden" name="mybool" value="AND">

<table border="1" cellspacing="3" cellpadding="0" width="120">

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><b><font size="2">Search for Names</font></b></td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><span class="normal">Last Name: </span><br><input type="text" name="mylastname" size="14"></p>

</td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><span class="normal">First Name:</span><br><input type="text" name="myfirstname" size="14"></p>

</td></tr>

<tr><td align="center" width="120">

<p style="margin-top: 0; margin-bottom: 2"><input type="submit" name="search" value="Search"> </p>

</td></tr>

</table>

</form>

I went to Gail's website and found the following find.php link on her main page:

<ul class="normal"><li>Show surnames starting with:<br/>

<a href="find.php?mylastname=%5Bno+surname%5D&lnqualify=equals&mybool=AND&showspouse=yes">[no surname]</a> | <a href="#char1">A</a> | <a href="#char2">B</a> | <a href="#char3">C</a> | <a href="#char4">D</a> | <a href="#char5">E</a> | <a href="#char6">F</a> | <a href="#char7">G</a> | <a href="#char8">H</a> | <a href="#char9">I</a> | <a href="#char10">J</a> | <a href="#char11">K</a> | <a href="#char12">L</a> | <a href="#char13">M</a> | <a href="#char14">N</a> | <a href="#char15">O</a> | <a href="#char16">P</a> | <a href="#char17">Q</a> | <a href="#char18">R</a> | <a href="#char19">S</a> | <a href="#char20">T</a> | <a href="#char21">U</a> | <a href="#char22">V</a> | <a href="#char23">W</a> | <a href="#char24">Y</a> | <a href="#char25">Z</a> | <a href="#char26">[</a></li></ul>

Obviously, I am not understanding something. :shock:

What line of code do I enter in my main page so that the Google robots will find it?

Duh and thank you.

Link to comment
Share on other sites

arnold,

There is a lot more code that you will need to add to your home page. You must have every one of your surnames listed (you can see all the surnames listed out on my site and Gail's) and you must have a hyperlink from each surname to a find.php script.

eg.

Winslow

Note: this is just one surname from my site. It also has a hyperlink from it to find.php (for the surname Winslow) below the contents of the link

http://www.winslowtree.com/tree/find.php?mylastname=WINSLOW&lnqualify=equals&mybool=AND&showspouse=yes

You must have a surname and a link like this for each of the surnames on your site.

An easy way to see the type of code and how much code will be needed, try doing a surname-all.php on your site. Then use your browser to look at the source. You will need almost the same amount of html code on your home page. In fact I took that exact output and changed the links from search.php to find.php and added it to my home page.

Steve

Link to comment
Share on other sites

I was looking at Gail's and your main pages. The links that you both added in regard to find.php are all at the bottom of the main page. Since I have 20,474 surnames, that will make for a big and long web page.

Is it possible to have those hyper links hidden from view by placing them on a separate web page in the root directory and adding the name of that page to robots.txt?

Link to comment
Share on other sites

I don't think that is the best answer. One option might be to create a separate page that contains all of your surnames that is linked to from the home page. This is not the optimum answer as this will place the find.php on the third level instead of the second level. This will mean it will take more Page Rank and more time for them to be indexed.

Take a look at the stats I posted earlier where I listed the total pages, getperson.php pages and the find.php pages. You will note that the find.php pages are on my second level and the getperson pages are on the third level. Just two weeks after making this modification all of the find.php pages (second level) are indexed. But only a small increase in the third level getperson pages have been indexed.

Since some surnames contain a lot of individuals and some very few you might reconsider just using generic links from your homepage. Remember we talked about using links like page1, page2, page3, etc.? This would be a more efficient use of the links. If you have say for example 200,000 individuals on a site. If each link linked to a find.php page that displayed 600 individuals then you would need only 333 links on your home page. That's less than the number of links I have on my home page using surnames.

These generic links wouldn't be very useful for people but if it gets all you ancestors indexed it might be worth having these in a small font at the bottom of the page.

Steve

Link to comment
Share on other sites

Without getting everyone into an uproar, it is the esthetics of having so many surnames/hyperlinks at the bottom of the main web page. I do not want that long list sitting there. That is why I am asking if something in robots.txt, with a link to a web page "hidden" in the root level (at the same level the main page is in) which contains the same list of surnames/hyperlinks as you have on the bottom of your main web page, would not serve the same purpose.

I did not mention page1, page2, page 3., etc., because I am pushing for a separate page which would be included in robots.txt. I had not forgotten talking about them. And I may well end up using them.

I do not know enough to understand why my suggested "hidden" web page in the root directory, at the same level as your main web page, would not suffice. I apologize for being thick headed on this and greatly appreciate your continuing patience.

Link to comment
Share on other sites

On my site it is static. That is the reason I continually caution people to think about the ramifications before they implement this solution.

However, if someone would take the surnames-all.php script and make a few modifications and create a new file, this new file could be made to work with the find.php instead of the search.php. This new file could be added to a php home page with an include statement and you would have a total dynamic solution.

OK I believe I've figured it out...

Make a copy of surnames-all.php and call it something else - eg surnamesIndex.php. Then open that up and find line 137 which says

        $name = $surname[lastname] ? "<a href=\"$search_url" . "mylastname=$surname2&lnqualify=equals&mybool=AND$treestr\">$surname[lowername]</a>" : "<a href=\"search.php?mylastname=$nosurname&lnqualify=equals&mybool=AND$treestr\">$text[nosurname]</a>";
change that to
        $name = $surname[lastname] ? "<a href=\"find.php?" . "mylastname=$surname2&lnqualify=equals&mybool=AND&showspouse=yes\">$surname[lowername]</a>" : "<a href=\"search.php?mylastname=$nosurname&lnqualify=equals&mybool=AND$treestr\">$text[nosurname]</a>";
and it will return a URL of the type that Steve is using for find.php. I've also removed some other code from surnames-all.php to remove header, footer and a couple of other things, and changed one of the includes at the top to include_once (I have no idea why this was necessary, but it wouldn't work until I did that). You can see the result here http://roger.lisaandroger.com/ and below is the whole code of the file I called surnamesIndex.php which is pulled into my index.php page by an include
<?php
include("surnamesIndex.php");
?>
<?php
include("begin.php");
include_once($cms[tngpath] . "genlib.php");
$textpart = "surnames";
include($cms[tngpath] . "getlang.php");
include($cms[tngpath] . "$mylanguage/text.php");
@set_time_limit(0);
tng_db_connect($database_host,$database_name,$database_username,$database_password) or exit;
include($cms[tngpath] . "checklogin.php");

//$search_url = getURL( "search", 1 );
$surnames_noargs_url = getURL( "surnames", 0 );

$query = "SELECT gedcom, treename FROM $trees_table ORDER BY treename";
$treeresult = mysql_query($query) or die ("$admtext[cannotexecutequery]: $query");
$numtrees = mysql_num_rows($treeresult);

//tng_header( "$text[surnamelist] — $text[allsurnames]", $flags );
?>

<p class="header"><?php echo $text[surnamelist]; ?></p>

<?php
if( $tree ) {
    $wherestr = "WHERE gedcom = \"$tree\"";
    $wherestr2 = "AND gedcom = \"$tree\"";
    $treestr = "&tree=$tree";
}
else {
    $wherestr = "";
    $wherestr2 = "";
    $treestr = "";
}

if( $livedefault < 2 && ( !$allow_living_db || $assignedtree ) && $nonames == 1 ) {
    $allwhere = "";
    if( $allow_living_db ) {
        if( $assignedbranch )
            $allwhere = "($people_table.living != 1 OR ($people_table.gedcom = \"$assignedtree\" AND $people_table.branch LIKE \"%$assignedbranch%\") )";
        else
            $allwhere = "($people_table.living != 1 OR $people_table.gedcom = \"$assignedtree\")";
    }
    else
        $allwhere = "$people_table.living != 1";
    if( $allwhere ) {
        $wherestr .= $wherestr ? " AND $allwhere" : "WHERE $allwhere";
        $wherestr2 .= " AND $allwhere";
    }
}

$linkstr = "";
$nosurname = urlencode($text[nosurname]);
$query = "SELECT ucase(left(lastname,1)) as firstchar, ucase( $binary left(lastname,1) ) as binfirstchar FROM $people_table $wherestr GROUP BY binfirstchar ORDER by binfirstchar";
$result = mysql_query($query) or die ("$text[cannotexecutequery]: $query");
if( $result ) {
    $initialchar = 1;
    
    while( $surname = mysql_fetch_assoc( $result ) ) {
        if( $initialchar != 1 ) {
            $linkstr .= " | ";
        }
        if( $surname[firstchar] == "" ) {
            $surname[firstchar] = $text[nosurname];
            $linkstr .= "<a href=\"find.php?" . "mylastname=$nosurname&lnqualify=equals&mybool=AND&showspouse=yes\">$text[nosurname]</a> | ";
        }
        else {
            $linkstr .= "<a href=\"#char$initialchar\">$surname[firstchar]</a>";
            $firstchars[$initialchar] = $surname[firstchar];
            $initialchar++;
        }
    }
    mysql_free_result($result);
}
?>
<br />
<ul class="normal"><li><?php echo $text[surnamesstarting]; ?>:<br/>
<?php
    echo $linkstr;
?>
</li></ul>
<p><b><?php echo $text[showmatchingsurnames]; ?></b></p>

<?php
for( $scount = 1; $scount < $initialchar; $scount++ ) {
    echo "<a name=\"char$scount\"></a>\n";
    $urlfirstchar = addslashes($firstchars[$scount]);
?>
<span class="header"><?php echo $firstchars[$scount]; ?></span>
<table border="0" cellspacing="0" cellpadding="0">
    <tr><td valign="top"><span class="normal">
<?php
$query = "SELECT ucase( $binary TRIM(CONCAT_WS(' ',lnprefix,lastname) ) ) as lastname, TRIM(CONCAT_WS(' ',lnprefix,lastname) ) as lowername, ucase($binary lastname) as binlast, count( ucase($binary lastname) ) as lncount FROM $people_table WHERE ucase($binary TRIM(lastname)) LIKE \"$urlfirstchar%\" $wherestr2 GROUP BY lastname ORDER by binlast";
$result = mysql_query($query) or die ("$text[cannotexecutequery]: $query");
if( $result ) {
    $snnum = 1;
    $num_in_col = 20;
    $numrows = mysql_num_rows($result);
    $numcols = floor($numrows / $num_in_col);
    if( $numcols > 4 ) {
        $numcols = 4;
        $num_in_col = ceil($numrows / 4 );
    }
    
    $num_in_col_ctr = 0;
    while( $surname = mysql_fetch_assoc( $result ) ) {
        $surname2 = urlencode( $surname[lastname] );
        $name = $surname[lastname] ? "<a href=\"find.php?" . "mylastname=$surname2&lnqualify=equals&mybool=AND&showspouse=yes\">$surname[lowername]</a>" : "<a href=\"find.php?mylastname=$nosurname&lnqualify=equals&mybool=AND$&showspouse=yes\">$text[nosurname]</a>";
        echo "$snnum. $name ($surname[lncount])<br/>\n";
        $snnum++;
        $num_in_col_ctr++;
        if( $num_in_col_ctr == $num_in_col ) {
            echo "</span></td>\n<td>  </td>\n<td valign=\"top\"><span class=\"normal\">";
            $num_in_col_ctr = 0;
        }
    }
    mysql_free_result($result);
}
?>
    </span></td></tr>
</table><br/><p><a href="#top"><?php echo $text[backtotop]; ?></a></p><br/>
<?php
}
//tng_footer( "" );
?>

Cheers

Roger

And earlier today I found that my Google page count had jumped from 17,300 to 178,000!!!!! - before I messed around with this!!

And the addition of this to my index page means that the index.php page now weighs in at 270KB - the source code downloaded from the browser is 271,524 characters. That isn't going to load very quickly over dialup I guess!!

Roger

Link to comment
Share on other sites

arnold,

The robots.txt can not be used to direct search engines to a site's pages for indexing. It can only restrict bot from crawling pages. There is even no evidence that a sitemap.xml can do that. You must have links for the bots to follow.

Roger,

Way to go!! That looks like a good implementation. By the way, with all thousands of pages indexed I couldn't find a single getperson.php in the index for you site. I think these new pages will help with people being able to find individules on your site.

Steve

Link to comment
Share on other sites

  • 2 weeks later...

Steve,

Thanks for providing the code. I chose to only implement the top 100 surnames in my database as an experiment to see if this generates any google entries for any of my getperson pages. Currently, if I google inurl:royandboucher/genealogy/getperson.php Google indicates no pages found.

Do I also need to make changes to the tngrobot.php as well as create a robot.txt file? I have not done either.

Ken

http://www.royandboucher.com

Link to comment
Share on other sites

Do I also need to make changes to the tngrobot.php as well as create a robot.txt file? I have not done either.

Ken

http://www.royandboucher.com

Ken,

I made both my robots.txt and the tngrobots.php very restrictive because I was concerned that since my site has a low Page Rank and Google might have a limit on the total number of pages it will index for a low Page Rank site. However, after being gone for a week on vacation I now see that Google has about 130,000 pages indexed for my site. This would seem to indicate that if there is a limit it is a very large one. On the other hand, I've not seen much value in having most of the other pages indexed. I think it 's best to decide which pages for your particular site add value when people are looking for information using the search engines.

Steve

Link to comment
Share on other sites

  • 2 weeks later...

I have identified one more item that is causing problems with getting our TNG pages indexed.

Since the first part of June my site has had full indexing of the getperson.php pages. However, I have notice 2 things that didn't add up. First, the number of pages indexed was higher than it should be and second most of the getperson.php pages in the Google index for my site are marked as supplemental.

I believe I have found the cause of both problems. Google's new indexing algorithm reduces the value of any page it determines is a duplicate (or has a high percent of duplicate content) as another page and is less likely to index a duplicate page or it may mark it as a supplemental page.

I have both the robots.txt and the tngrobots.php files set to restrict access to all of my TNG pages except for the find.php and getperson.php pages. I currently have about 10,500 individuals in my TNG database and a couple of hundred forum and html pages on my site. I would expect to find about 12,000 pages indexed on my site if it was fully indexed. At the time of writing, Google shows 19,300 pages indexed for my site.

After an extensive review of the pages that are in Google's index from my site, I found that a number of getperson.php pages had a duplicate page indexed as well. This duplicate was caused by the print link that can be reached from each getperson.php page. This link will produce an exact duplicate of each getperson page, minus the header and footer.

The way the print function is implemented, the robots.txt or the tngrobots.php files can not be used to block bots from indexing the print page if you want the getperson.php page indexed. A modification must be made to the genlib.php. Here is the modification that must be made.

genlib.php

Replace the following 2 lines (in this order)
if( isset( $flags[norobots] ) )
echo $flags[norobots];

With these 4 lines
if( !$tngprint && isset( $flags[norobots] ) )
        echo $flags[norobots];
    if( $tngprint )
        echo "<meta name=\"robots\" content=\"noindex,nofollow\">\n";

This modification will prevent the bots from indexing the pages that are created by the print function not only for the getperson.php page but it works for all print pages. This should prevent any duplicate penality the search engines might place on your site for having print pages the same as the original page.

Steve

P.S. If you want to determine if you have duplicate pages due to the print function try this search on Google

site:yourdomain.com inurl:tngprint

Link to comment
Share on other sites

Ed Barnard

I have identified one more item that is causing problems with getting our TNG pages indexed.

Steve,

I've been thinking about creating a template which places all, or nearly all, navigation html at the bottom of the page - or, at least, at the end of the html page as retrieved. Get it off the top of the page to reduce the duplicity. (I know, duplicity is the wrong word, but seems appropriate here!) Thoughts?

I'm also thinking about taking my own shot at se-friendly urls, since my experience with WordPress blog installs is telling me that the wordpress pages are visible in google the same day. Of course the WordPress blog is fewer than 200 total pages, so this might not be a fair comparison. I've been watching this discussion closely (in its various locations!) and appreciate everyone's efforts here :)

Ed Barnard

Link to comment
Share on other sites

Steve,

I've been thinking about creating a template which places all, or nearly all, navigation html at the bottom of the page - or, at least, at the end of the html page as retrieved. Get it off the top of the page to reduce the duplicity. (I know, duplicity is the wrong word, but seems appropriate here!) Thoughts?

Ed Barnard

Ed,

I don't know if that will help. I have all the menus on the pages of my site and they seem to get indexed. Right now they also seem to be carrying a high penalty (maybe for duplicate content because of the print problem). I plan on seeing how this plays out over the next few weeks before I make any more changes.

I have found so many things that either improves the bots ability to find and index a page, to moving pages closer to the homepage (at least in the number of clicks to get to them), to working on duplicate content problems. Each of these has seemed to help a little. I don't think there is just one problem here that will fix the indexing problem. I think it is a number of things that all need to be fixed.

Steve

P.S. Here is a link to a tool that will help you determine how much similarity there is between two pages.

http://www.webconfs.com/similar-page-checker.php

Link to comment
Share on other sites

Darrin Lythgoe

This code might be better:

if( $tngprint )

echo "<meta name=\"robots\" content=\"noindex,nofollow\">\n";

elseif( isset( $flags[norobots] ) )

echo $flags[norobots];

It's just a little tighter.

Darrin

Link to comment
Share on other sites

Ed Barnard

Hmmm... thinking some more...

When Ed and Susan are married to each other, and have children together, wouldn't Ed's page have pretty much the same content as Susan's page?

When I hand build a page, I have a single page for Ed and Susan. All the extra text etc. appears on the one single page - there is no second page with much-duplicated content. We could, in theory, do the same in TNG.

The difficulty (well, one of several difficulties perhaps) is when widow with young children married widower with young children. Do we want to slap all families on the same page? When hand built, the choice is clear - I name the additional marriages, but focus only on the family unit which is my direct ancestors, or connects to my direct ancestry.

With TNG, the choice is also clear. Susan's page focuses on her and all families of which she is a part. Ed's page focuses on Ed's page and all families of which he is a part. With Legacy it's also clear... you can mark the "preferred spouse" and thus the focus is on that preferred family unit.

But, still, with one page for him, and one page for her, we do have duplicate material. Not sure what to do with this observation as yet, but it's form of duplication I don't have in the hand-built pages.

Link to comment
Share on other sites

Hmmm... thinking some more...

But, still, with one page for him, and one page for her, we do have duplicate material. Not sure what to do with this observation as yet, but it's form of duplication I don't have in the hand-built pages.

Ed,

I agree. You can actually check how similar two pages are using this tool Similar Page Checker You will see that what you are assuming is true... the husband and wife pages are very similar.

If you are having a lot of trouble getting pages indexed on Google it might be a good idea to take a step back and use your robots.txt file to block all TNG pages. Then add the Surnames to your homepage and implement the find.php page. When a site has low page ranking, Google will not show many of the site's pages in its index. I have recently read that it take a page rank of 4 to get 1000 pages indexed and 5 to get 10,000 indexed. So you want to get the biggest bang for however many pages your page rank will support. It's been my experience that if you let the bots crawl 10,000 pages and you only have a page rank of 2 then you may only get you homepage in the search listings.

I found on my site that it can support no more than 20,000 pages being indexed. Also Google won't index any deeper than the third level on my site. That is enough that I can get all of my find.php and all of the getperson.php pages indexed (once I get all the blatant duplicate removed). All other pages are currently blocked from the bots on my site.

Steve

Link to comment
Share on other sites

  • 3 weeks later...

Hmmm. Steve, I'm working on implementing your suggestions here:

http://www.ewbarnard.com/ancestry/

and I notice your getperson.php meta tags include noindex,nofollow, whereas mine do not. Did I miss something somewhere?

I'll be adding the surname list to the domain root in a bit; still working on making room for it. The dynamic list works great - thanks everyone!

Link to comment
Share on other sites

Ed,

Google has been changing so much lately I don't know if I would recommend much of any changes right now.

Since I've made the changes I had some very good results. However, in the last couple of days Google has thrown my site under the bus. Yes, if you do a site command you may see that I have 19,000 pages listed. But if you look closely you'll see almost all of them are supplemental. I'm still doing analysis as to what is going on.

As you mentioned I did place a noindex, nofollow on the getperson.php pages. I had been on a long search as to why Google continually moved almost all of everyone's getperson pages to supplemental lately. It seems that Google has been upgraded recently to have a very bad dislike of what it feels are duplicate pages.

As you probably know I made a recommendation recently on code modification that prevents Google from indexing the print friendly page. This was causing a duplicate page for almost every page in TNG. This was one obvious problem and the fix was relative simple. However, when you compare the getperson.php page of one individual to their spouse, the similarity is very high. It is so high that if you look at most TNG sites that still have anything in the main Google index you will most likely be able to find a person but not their spouse listed.

Spouse duplication was something I could not fix and still use the getperson.php page because of the way it is structured. Since I had implemented the find.php pages that produces a list of all individuals under a surname, this seemed like a reasonable replacement for the getperson.php page. When I first implemented blocking the getperson pages and allowing Google full access to the find.php pages, Google seemed very happy to index them. During that time the traffic on my site increased significantly and I felt like I had found the answer to our problems. That was until a couple of days ago when Google removed all of the find.php pages from their listings. They were not moved to supplemental like most pages, they are just gone!

I'm still doing research to determine what happened, but until I do determine what went wrong (if there is any thing wrong or did Google just have one of its hiccups) I would be careful about making changes to your site based on the recommendations I've given.

Steve

Link to comment
Share on other sites

Steve,

Thanks for the detailed reply!

I'm doing some experimenting with absolute positioning. I'm pretty weak on CSS, but I'm finding I can put the stuff that goes at the top of the page in footer.html. That gets the unvarying text at the bottom of the page. It's working for my logo and such. I'll take a look at getperson and see if I can get the nav links/tabs to display correctly, with their text actually written after the person info. If that works, that should bring the unique text as close to the front of the page as possible.

Link to comment
Share on other sites

Remodeling is more or less complete at:

http://www.ewbarnard.com/

I need some photos to spice the place up, but that's a project for later in the summer!

I'm using Steve's robots.txt except for allowing getperson.php. I'm using the dynamic verson of the surname list on my (blog) front page. (I added the full url to find.php in the code.)

And, I moved material around on the page, focusing on getperson.php because that is what Google sees (maybe). In topmenu.html I have a

<div id="page">

and in footer.html I have the closing </div>. Then, in getperson.php, the navigation bar text gets put in $flags[more], which I then print in footer.php AFTER footer.html, and therefore after the closing </div>. The "more" text gets put inside div tags which I define with absolute positioning. For example:


#byline {
    position: absolute;
        width: 800px;
    top: 195px;
    left: 200px;
    margin-top: 1px;
    margin-left: 2px;
    color: #7a6028;
    font-size: 10pt;
    font-style: italic;
}

#page {
  position: absolute;
  top: 224px;
  left: 0px;
  margin-left: 2px;
  margin-right: 2px;
  width: 796px;
}

#tngicons {
  position: absolute;
  top: 224px;
  left: 0px;
  margin-left: 2px;
  margin-right: 2px;
  width: 796px;
}

My note to Darrin got rejected, so I'll mention it here: relationship.php has a missing </div> at the end. Looks like $pedigree[enddiv] is supposed to take care of that, but said variable is empty in my case. I added </div> at the end and it looks fine.

Link to comment
Share on other sites

Ed,

The site is looking good. I wanted to mention something that I have change on my copy of the find.php file. I removed the "Search Results for" out of the title and the description. I have been reading that Google is penalizing dynamic pages that the titles and descriptions look similar to other pages. The only thing I'm displaying now is the surname on each page.

Also can you give a brief description on how you used the <div> on your page to get the search engines to focus on the text portions. I would like to do some work in that area but have little knowledge in that area. I have menus on the top and on the side I would like to exclude. How would I go about doing that?

Thanks,

Steve

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...