{"id":2462,"date":"2008-01-02T16:15:56","date_gmt":"2008-01-02T23:15:56","guid":{"rendered":"http:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/?p=2462"},"modified":"2008-01-04T23:22:46","modified_gmt":"2008-01-05T06:22:46","slug":"speaking-in-tongues-just-for-cheryl-johnson-building-content-rich-custom-web-sites-in-php","status":"publish","type":"post","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/2462\/speaking-in-tongues-just-for-cheryl-johnson-building-content-rich-custom-web-sites-in-php\/","title":{"rendered":"Speaking in tongues just for Cheryl Johnson: Building content-rich custom web sites in PHP"},"content":{"rendered":"<p>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&#8217;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.<\/p>\n<p>So: I think this might be of interest to <a href=\"http:\/\/www.nelalive.net\/\" target=\"_blank\">Cheryl Johnson<\/a> only.<\/p>\n<p>Take a look, Cheryl:<\/p>\n<pre>&lt;!--index.php--&gt;\r\n\r\n&lt;?PHP $thepath=$_SERVER['SERVER_NAME']; ?&gt;\r\n&lt;?PHP include (\"http:\/\/$thepath\/pageCap.php\");?&gt;\r\n\r\n&lt;title&gt;A Street&lt;\/title&gt;\r\n\r\n&lt;?PHP include (\"http:\/\/$thepath\/pageTop.php\");?&gt;\r\n\r\n&lt;?PHP include(\"links.php\"); ?&gt;\r\n\r\n\r\n&lt;iframe src=\"main.php\" frameborder=\"0\" width=\"650\"\r\nheight=\"650\" name=\"main.php\" scrolling=\"no\"&gt;\r\n&lt;\/iframe&gt;\r\n\r\n&lt;?PHP include (\"http:\/\/$thepath\/pageBot.php\");?&gt;\r\n\r\n\r\n&lt;!--&lt;p class=\"h1\"&gt;A Street&lt;\/p&gt;--&gt;<\/pre>\n<p>This is the index page for a top level page in a BloodhoundRealty.com slide show. Almost a year ago, <a href=\"http:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/?p=941\" target=\"_blank\">I talked about how we do these<\/a>, and <a href=\"http:\/\/bloodhoundrealty.com\/Pawlenko\/index.php\" target=\"_blank\">I linked to a demonstration at the time<\/a> &#8212; although all of our single-property web sites and most of our previewing and staging web sites and <a href=\"http:\/\/bloodhoundrealty.com\/StagingOregon\/index.php\" target=\"_blank\">other photographic demonstrations<\/a> are based on the Slide Show Marge technology.<\/p>\n<p>Note that this is entirely modular. The &#8220;included&#8221; 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.<\/p>\n<p>The index.php file and the other two &#8220;included&#8221; files are generated by the software at run-time and are stored together at that particular level of the hierarchy:<\/p>\n<pre>&lt;!--main.php--&gt;\r\n\r\n&lt;p class=\"h1\"&gt;A Street&lt;\/p&gt;<\/pre>\n<p>That&#8217;s the top level of the slide show. There can be a photo and descriptive text here, too.<\/p>\n<p>And these are the subfolders linked below this level in the hierarchy:<\/p>\n<pre>&lt;!--links.php--&gt;\r\n\r\n&lt;?PHP $thepath=$_SERVER['SERVER_NAME']; ?&gt;\r\n\r\n&lt;?PHP include(\"http:\/\/$thepath\/pageLink.php\"); ?&gt;\r\n\r\n&lt;p class=\"body\" style=\"width: 600px\"&gt;\r\n&lt;a href=\"2 A St\/index2.php\"\r\n\ttarget=\"main.php\"&gt;2 A St&lt;\/a&gt;&amp;nbsp;| \r\n&lt;a href=\"4 A St\/index2.php\"\r\n\ttarget=\"main.php\"&gt;4 A St&lt;\/a&gt;&amp;nbsp;| \r\n&lt;a href=\"8 A St\/index2.php\"\r\n\ttarget=\"main.php\"&gt;8 A St&lt;\/a&gt;&amp;nbsp;| \r\n&lt;a href=\"main.php\"\r\n\ttarget=\"main.php\"&gt;Return&amp;nbsp;to\r\n\tHome&amp;nbsp;Page&lt;\/a&gt;\r\n&lt;\/p&gt;<\/pre>\n<p>Because we&#8217;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.<\/p>\n<p><a href=\"http:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/?p=174\" target=\"_blank\">I first wrote about this style of building web pages in August of 2006<\/a>. At the time, <a href=\"http:\/\/4realz.net\/2006\/08\/04\/131\/\" target=\"_blank\">a still-encloaked 4Realz wondered why I didn&#8217;t use the WordPress &#8220;Pages&#8221; technology instead<\/a>. A WordPress &#8220;Page&#8221; is an excellent way to build a static page that anyone on <a href=\"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/2462\/speaking-in-tongues-just-for-cheryl-johnson-building-content-rich-custom-web-sites-in-php\/#more-2462\" class=\"more-link\">Read more<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>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&#8217;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 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[6,5,19],"tags":[],"class_list":{"0":"post-2462","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"hentry","6":"category-marketing","7":"category-real-estate","8":"category-technology","10":"no-featured-image"},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":5409,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/5409\/prequel-to-speaking-in-tongues-displaying-author-images-in-wordpress\/","url_meta":{"origin":2462,"position":0},"title":"Prequel to Speaking in Tongues:  Displaying Author Images in WordPress","author":"Cheryl Johnson","date":"November 3, 2008","format":false,"excerpt":"Several months ago, Greg described this process in Project Bloodhound speaking in tongues: To whom am I speaking? At the time, I had no\u00a0need to implement author images in a WordPress multi-author blog, (and I already knew the technique for TypePad), so I didn't work with the process until just\u2026","rel":"","context":"In &quot;Blogging&quot;","block_context":{"text":"Blogging","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/blogging\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2433,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/2433\/speaking-in-tongues-presentable-php-in-wordpress\/","url_meta":{"origin":2462,"position":1},"title":"Speaking in tongues: Presentable PHP in WordPress","author":"Greg Swann","date":"December 27, 2007","format":false,"excerpt":"In the coming days, I plan to take up the idea of PHP for non-programmers, helping you tap the power of PHP's dynamic text processing without learning (much) actual coding. The problem is that illustrating HTML or PHP in WordPress is always a problem. Why? Because WordPress eats code for\u2026","rel":"","context":"In &quot;Blogging&quot;","block_context":{"text":"Blogging","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/blogging\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1224,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/1224\/how-to-make-google-your-weblogs-best-friend\/","url_meta":{"origin":2462,"position":2},"title":"Project Bloodhound: How to make Google your weblog&#8217;s best friend","author":"Greg Swann","date":"June 27, 2008","format":false,"excerpt":"[This is one of the all-time most popular posts on BloodhoundBlog. I'm reprising it for Project Bloodhound, first because it's a nice leveraged SEO solution, and second because it's a painless introduction to customizing the PHP in WordPress. --GSS] \u00a0Who can probe all the mysteries of Google? Not me, and\u2026","rel":"","context":"In &quot;Blogging&quot;","block_context":{"text":"Blogging","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/blogging\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":5456,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/5456\/appendix-a-linking-to-authors-profile-in-multi-author-wordpress-blog\/","url_meta":{"origin":2462,"position":3},"title":"Appendix A: Linking to Author&#8217;s Profile in Multi-Author WordPress Blog","author":"Cheryl Johnson","date":"November 7, 2008","format":false,"excerpt":"After setting up the author image code, I decided my next step in creating our new multi-author company blog would be linking the author name to the author's profile page.\u00a0 I decided on a\u00a0 profile page rather than an email link to a). initially keep the reader drilling deeper into\u2026","rel":"","context":"In &quot;Real Estate&quot;","block_context":{"text":"Real Estate","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/real-estate\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-content\/uploads\/2008\/11\/author-url.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2438,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/2438\/speaking-in-tongues-dynamically-updated-lists-of-links-in-php\/","url_meta":{"origin":2462,"position":4},"title":"Speaking in tongues: Dynamically updated lists of links in PHP","author":"Greg Swann","date":"December 28, 2007","format":false,"excerpt":"Let's get dynamic, shall we? There are a lot of things you can say about PHP -- and some of them are even safe for work. But, at bottom, PHP is a working stiff's programming language for producing dynamic web pages. What's a dynamic web page? It's a page that\u2026","rel":"","context":"In &quot;Blogging&quot;","block_context":{"text":"Blogging","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/blogging\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2465,"url":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/2465\/speaking-in-tongues-for-morgan-brown-a-quick-and-dirty-contributors-blogroll\/","url_meta":{"origin":2462,"position":5},"title":"Speaking in tongues for Morgan Brown: A quick and dirty contributors&#8217; blogroll","author":"Greg Swann","date":"January 3, 2008","format":false,"excerpt":"I know I promised to do nothing but \"includes,\" and we'll come back to those soon, but here is a real PHP routine, doing an actual real world job. What does it do? For a multi-author weblog like BloodhoundBlog, it produces a blogroll of the contributors' weblogs or web sites.\u2026","rel":"","context":"In &quot;Blogging&quot;","block_context":{"text":"Blogging","link":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/category\/blogging\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/posts\/2462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/comments?post=2462"}],"version-history":[{"count":0,"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/posts\/2462\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/media?parent=2462"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/categories?post=2462"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bloodhoundrealty.com\/BloodhoundBlog\/wp-json\/wp\/v2\/tags?post=2462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}