The deafening clamor in my mailbox suggests that almost nobody is interested in what I have to say about using PHP to automate weblog and web site content creation. That’s actually a good sign, in the sense that automated web site creation is one of the key tools we use against our competition in the Phoenix real estate market.
So: I think this might be of interest to Cheryl Johnson only.
Take a look, Cheryl:
<!--index.php--> <?PHP $thepath=$_SERVER['SERVER_NAME']; ?> <?PHP include ("http://$thepath/pageCap.php");?> <title>A Street</title> <?PHP include ("http://$thepath/pageTop.php");?> <?PHP include("links.php"); ?> <iframe src="main.php" frameborder="0" width="650" height="650" name="main.php" scrolling="no"> </iframe> <?PHP include ("http://$thepath/pageBot.php");?> <!--<p class="h1">A Street</p>-->
This is the index page for a top level page in a BloodhoundRealty.com slide show. Almost a year ago, I talked about how we do these, and I linked to a demonstration at the time — although all of our single-property web sites and most of our previewing and staging web sites and other photographic demonstrations are based on the Slide Show Marge technology.
Note that this is entirely modular. The “included” files named pageXxx.php are all standing components at the top level of the file server. They consist simply of the plain vanilla HTML needed to make that part of the page.
The index.php file and the other two “included” files are generated by the software at run-time and are stored together at that particular level of the hierarchy:
<!--main.php--> <p class="h1">A Street</p>
That’s the top level of the slide show. There can be a photo and descriptive text here, too.
And these are the subfolders linked below this level in the hierarchy:
<!--links.php--> <?PHP $thepath=$_SERVER['SERVER_NAME']; ?> <?PHP include("http://$thepath/pageLink.php"); ?> <p class="body" style="width: 600px"> <a href="2 A St/index2.php" target="main.php">2 A St</a> | <a href="4 A St/index2.php" target="main.php">4 A St</a> | <a href="8 A St/index2.php" target="main.php">8 A St</a> | <a href="main.php" target="main.php">Return to Home Page</a> </p>
Because we’re built out of an iframe, each one of these subfolders opens up as a slide show within the iframe. Each of those subfolders has its own variations of the files shown here.
I first wrote about this style of building web pages in August of 2006. At the time, a still-encloaked 4Realz wondered why I didn’t use the WordPress “Pages” technology instead. A WordPress “Page” is an excellent way to build a static page that anyone on your team can edit. We were playing with the idea of a blogsite at that time (and still are, in our dilatory way, while Jimmy Tomatoes has built an empire out of the idea). WordPress “Pages” are the perfect way to build a blogsite, and a blogsite is the perfect solution to the problem of how to build a Realtor’s client-focused, lead-seeking web site.
So what’s the point of building modular, static web pages like this instead?
To build them with software. A static web page is build manually. A WordPress “Page” is built manually. These pages are built at incredible speed by Slide Show Marge.
Our slide show sites are built from (folders of) folders of photos. Working from the bottom up, Slide Show Marge creates a web page of each folder of photos, then creates an index of each folder of folders. We have to manually write headlines, body text and photo captions (although even some of that is automated), but the rest of the work is done by the software. We end up with fully-formed, fully-armed web sites that are lean, mean, error-free, completely modular — and therefore appearance- and file-server-independent — eminently search-engine-friendly and fast and easy for anyone in our (three-person) organization to make.
In fact, for a single-property web site, we always go in and manually tweak the top-level page, adding links that Marge can’t see and customizing the fit and finish. But this is a fraction of the labor it would take to build the whole site by hand.
And, in fact, it would be just as easy to build a site dynamically, generating the pages on the fly rather than building from static files. We do it this way because it’s easier for anyone (meaning not me) to make manual edits to any one of the static pages, where revising the software behind truly dynamic pages usually requires an actual coder (meaning me or, especially, my son Cameron). In other words, we choose to front-load the complexity with an application to make any back-end work simpler. It’s a trade-off. The potentially-canonical list of real estate weblogs, by contrast, is built dynamically, on the fly, from a standing database.
We’re actually rebuilding Slide Show Marge right now, to Cameron’s dismay. We’re revising it to work better with the look and feel of both BloodhoundRealty.com and DistinctivePhoenix.com — and to run from a leaner, CSS-based style of HTML. When we’re done, our sites will look as if they were WordPress “Pages,” and we will gain some dynamic features, particularly page-specific SEO optimization and some flexibility in the sidebar portion of the new pages.
Here’s the payoff for our efforts. We can produce a simple web site — say a summary of previewed homes or staging advice — in maybe ten minutes. A full-blown single-property web site takes me around two hours, including the copy-writing and the manual finessing. We can do a web site so easily that it’s much easier, much more likely to communicate successfully and boundlessly more impressive to clients than trying to do the same work by email. And if no one but Cheryl Johnson is interested — so much the better for us…
Getting in touch with your inner geek:
- Apprehending Realtor 2.0: Seven essential skills of the 21st century real estate agent…
- How to make fast, flexible web pages…
- Catch your kid doing something right: Our son Cameron and the upgrade path of SlideShowMarge
- How to make Google your weblog’s best friend…
- Speaking in tongues: Presentable PHP in WordPress
- Speaking in tongues: Dynamically updated lists of links in PHP
- Speaking in tongues just for Cheryl Johnson: Building content-rich custom web sites in PHP
- Speaking in tongues for Morgan Brown: A quick and dirty contributors’ blogroll
- Speaking in tongues: A step-by-step guide to speaking in web sites
Want more? Real Estate Weblogging 101 will speak to your inner geek. And if you want even more than that, be sure to join us for BloodhoundBlog Unchained.
Technorati Tags: real estate, real estate marketing, technology
Morgan Brown says:
Hey! I’ve literally been drooling over these posts and the thought of more to come – add me to the list PLEASE!!!!
And keep them coming…
January 2, 2008 — 5:08 pm
Brian Brady says:
“And if no one but Cheryl Johnson is interested — so much the better for us”
Few UNDERSTAND it but these tutorials help. Definitely keep them coming.
January 2, 2008 — 6:07 pm
Derek says:
Brian’s right. I have not a freaking clue what you’re trying to say Greg.
But while you’re at it, how about telling me how I might could go about creating a feed reader on my site. Sort of one where like a little box that will grab the titles and name of the author of the post and show it on my website. That way I can go to one site, use the scroll bar and read whatever I might be interested in. I just want the titles and the author’s name, no text. If the article is interesting, I’ll click the link it grabbed and go directly to the blog article.
January 2, 2008 — 7:02 pm
Thomas Johnson says:
On the Trail of the Bloodhound!
Demonstrable, superior performance while the rest of us just figured out how to post to our blogs.
By the way, unless you’re the lead dog, the view is always the same. I don’t even know whose butt I’m watching.
January 2, 2008 — 8:19 pm
Derek says:
Mr. Johnson, if you think learning to post to a blog is hard, you should try posting something in Drupal. I’ve been playing around with that program for about a month now, and I can’t even figure how how to get a single page up!
By the way, I love the last name. I am writing a book and in one of the chapters, I’ve got a scene that takes place at a small country store. Two of my character’s in that section are Abe and Lorainne “Ma” Greenwood. They are names I put together from some old blues figures from around Greenwood, Mississippi. You know the old crossroads where the legendary blues singer Robert Johnson traded his soul to the devil at the crossroads!
January 2, 2008 — 8:37 pm
Todd says:
Doesn’t hosting the photographs of houses that appear in each “single property web site” on your server chew up a lot of bandwidth?
Have you ever used Flickr or Amazon S3 to host images, then just call them by their URL?
Just wondering.
January 3, 2008 — 8:03 am
Kris Berg says:
When Brian said few understand this, he was talking about me. All I see is a lot of code that could get me in a lot of trouble. I am so out of my league on this one.
I like Derek’s idea about a feed widget. Now that’s something I might risk blowing up my website to incorporate!
January 3, 2008 — 9:23 am
Jay Thompson says:
I’m absorbing. Keep them coming. Please.
As for a reader widget, there are a bunch available through Google Gadgets. If you use Google Reader, try this.
For many more options, go here.
January 3, 2008 — 12:26 pm
CJ, Broker in NELA, CA says:
Hey thanks!!! If no one sees me for a while, it’s because I’m holed up working on this stuff.
January 3, 2008 — 1:52 pm
CJ, Broker in NELA, CA says:
Derek and Kris, this little tool might be the sort of thing you’re thinking about http://www.rss-to-javascript.com/
January 3, 2008 — 5:21 pm
Rob says:
So I signed up with bluehost, got a domain name and installed wordpress. Now, I want to get er done with making a blogsite. I don’t have time to learn the codes and start from scratch. Are you saying that this will help a guy like me or not? If not, what should I do know with getting my site up and running? Thanks!
June 20, 2008 — 12:54 pm
Greg Swann says:
Rob: Worry about WordPress for now. We’ll be doing finesse jobs for months, and the stuff I’m talking about here is of interest to almost no one.
June 20, 2008 — 1:06 pm