Dynamic database-driven sites have become very popular, and relatively easy to set up and administer, through the use of Content Management Systems (CMS) and PHP server-side scripting. It's also possible to create a fancy-looking site with little actual content, or automatically generated code that can harm your SEO, such as multiple URLs that display identical content.
Search engines are constantly evolving and adapting in response to changes in the way information is presented on the web. Strategies that were once necessary to ensure inclusion of PHP pages are no longer required.
It was once helpful to generate a static HTML version of a PHP page so that all the "includes" could be indexed. Now search spiders "see" all the content on a PHP page, the same way it is viewed in a browser.
It used to be prudent to avoid dynamic URLs containing "? & =" - now, the search engines list URLs with the dynamic variables. However, it is best to compose them with no more than three variables. Some variable-laden URLs may be listed, but without any accompanying content/description, in the search results... Stay tuned for further developments as the search engines refine their methods.
With many hosts running the popular Apache server, developers are expanding the use of PHP by modifying the .htaccess file to allow PHP code processing within HTML documents, and enabling shorter URLs with fewer variables by configuring httpd.conf. Your web hosting provider's support team should be able to tell you if these features are available for your site.
Implementing a common-sense approach to SEO for your PHP site requires cooperation and coordination among the developer, webmaster, and web host. Beware of "SEO Experts" with "secret methods" and "guaranteed results" - gimmicks that kludge the search spider today might hurt your ranking tomorrow.
A descriptive and catchy page title is one of the key elements of SEO - whether or not your site uses PHP - since it becomes the linked title of your search engine listing. Use the name of your site in the title to encourage branding, along with a brief capsule about the specific page. Remember that the title displays at the top of the browser window and in the menu bar, so keep it brief, less than 160 characters. Avoid using identical titles on multiple pages (this can easily happen with dynamically generated titles) because they may not be listed individually, and if they are listed separately, it's confusing. Meta tags for description and keywords have become less crucial to SEO - but that doesn't mean you should forget about them.
The basic principles of SEO that apply to static HTML sites also apply to dynamic PHP sites:
- Provide engaging and valuable content presented in an attractive design.
- Code should be error-free and standards-compliant.
- Use keywords appropriate to your subject matter - don't be tempted to use "tricks" that might end up hurting your search engine listing.
- Encourage repeat visits with frequent updates, interactive features, membership sign-up, opt-in newsletters and, if appropriate, "freebies" - contests, giveaways, downloads and other resources.
- Encourage linking to your site with copy & paste code. Reciprocal links build partnerships and enhance page rank, but avoid hosting bulky "link farms" and other venues for worthless web site spam.
- Make use of tools provided by the search engines, such as creating a sitemap.
- Educate yourself by reading the search engine faqs, as well as by perusing some independent forums for SEO tips and methods.
Here are a few resources for further information:
Optimizing Dynamic Content
Building Dynamic Pages With Search Engines in Mind
High Rankings(r) Search Engine Optimization Forum > Technobabble > Dynamically Generated Site Issues
Digital Point Forums > Marketing > Search Engine Optimization > PHP, HTML does it matter?
Parsing PHP in .html Files