OpenRealty Duplicate Content and 404 URL Tip
Posted on September 30, 2009
Filed Under Open Realty Tips, Real Estate Websites | Leave a Comment
How to avoid a mishap in your design by forgetting a pair of simple steps.
First I’d like to say that these are NOT Errors in OpenRealty and they are not bugs. So its important to keep that in mind. These tips are really about how to avoid it happening in the event you don’t pay special attention to a few key features.
After working on an MLS project in the SOCAL market (Southern California) for a guy many many months ago we were pleased at how well the Joomla / OpenRealty site came together in terms of presentation and ease of user interaction with the clean interface. After many months however there was this persistent issue of duplicate content and literally thousands of 404’s. These things can present a nasty little problem with your efforts to actually rank well for “Long Tail” terms with those listings. What was happening and how could we fix it?
First lets deal with the 404s in your OpenRealty site.
The 404’s are sometimes a reality of MLS empowered sites for good logical reason. Listings that get populated by MLS data tend to change with frequency and unless the market is completely dead, properties do in fact sell. When they sell they get either removed from the project website or they get marked as sold. Now, depending on the MLS rules, some will not allow you to show properties that do not have the status of active or pending. This would then automatically rule out the option of leaving the listing and showing it as simply “Sold”. In our case this was true and we can only show what SOCAL allows to be shown so we had to deal with the absence of listings that were indexed and then no longer available.
The way to handle isn’t really that complex because OpenRealty makes it possible in the way the site can be structured. It involves the creation of a 404 page in your OpenRealty content editor that you simply title and provide a nice SEF URL name to, lets say we simply call it notfound.html which if your sef settings are set to “Search Engine Friendly” should net you page-notfound.html. Keep this in mind because you can do this for all your error pages as you will see how this comes together in a moment.
Next you will want to edit your htaccess file that comes with OpenRealty to include the following;
ErrorDocument 400 /page-badrequest.html ErrorDocument 401 /page-authorization-required.html ErrorDocument 403 /page-forbidden.html ErrorDocument 404 /page-notfound.html ErrorDocument 500 /page-servererror.html
Again, keep in mind that the names of those files are actually OpenRealty pages. This serves you well by structuring the the site with a few important feature requirements. First, it makes your error pages consistent with your design, and second it allows you to add custom content relevant to some action that the user / visitor can take.
The next step follows a nifty little feature that OpenRealty has and that is custom main.html templates which you can rename followed by the page ID. It works like this; IF your 404 page is page ID 7 then you create a duplicate copy of your main.html and rename it page7_main.htm then in the header area of the new page you want to put in the meta tags for the no follow no index like so;
<meta http-equiv="cache-control" content="no-cache" /> <meta name="robots" content="noindex,follow" /> <meta name="googlebot" content="noarchive" />
When a bot encounters the 404 page, it is told to not index, not follow and to not archive. So if you end up at say http://www.openrealty-website.com/this-cool-page-is-missing.html for instance the URL should remain even though the 404 page is actually displayed.
Now we deal with a potential issue of duplicate content.
We noticed that in some OpenRealty themes on the market, the link for adding listings to your favorites, in either the search results or the listing details has a URL is NOT set to rel=”nofollow”. This is however NOT an issue if you remember to use the correct {check_member} tags OpenRealty demonstrates by default. Now the fact that this escaped my attention for so long annoys me greatly because I normally check every link to verify how its being used and what it actually leads to before calling a project done. Taking for granted that I was using an OpenRealty tag like {link_add_favorites} without the much needed {check_member} just embarrassed me. It didn’t register that I should examine those links because they were for internal features not pages or content per se. But I was wrong in letting it escape my attention because this tag for adding listings to favorites does little more than set the feature for your bookmarking and simply reloads the same page. See why it was a problem? I’ll show you by example with the report generated by our SEO tools, what you will see is ;
Pages with duplicate meta descriptions,Pages with duplicate content This Orange County Residential property is located in San Clemente California 2205 Via Iris and is l, http://www.thedomain.com/realestate/index.php?action=addtofavorites&listingID=96280796 | http://www.thedomain.com/realestate/listing-san-clemente-california-2205-via-iris-96280796.html
Both the URL to the listing and the URL to the “index.php?action=addtofavorites” is showing duplicate content and duplicate meta data. This fix is exceptionally easy however. OpenRealty provides an alternative tag that can be used where I could correct this which is {link_add_favorites_url} and its use would look something like;
<a href="{link_add_favorites_url}" title="Add To Favorites" rel="nofollow">Add To Favorites</a>
It quite literally should look like this but not in our situation. I’ll explain in the special note below.
{check_member}
{link_add_favorites}
{/check_member}
Important Note About This Post
Because of the {check_member} tags google should not even be able to see the add to favorites but we setup a provision in this particular site for google to bypass the registration process in part because we have the site set to allow for three searches prior to requiring you to register. We allow google to get right past that. But how? A small moded addon and the use of sessions to control the functionality. In your situation you are NOT likely to encounter this unless you leave your option open as we did.
OpenRealty Project Snippets
Posted on September 30, 2009
Filed Under Code Snippets, Open Realty, Open Realty Tips | 2 Comments
Have you heard the saying “you are so ugly, you have to hang a pork chop around your neck to get the dog to play with you”. Well, I don’t know that I’m ugly and I’m pretty sure I don’t want the dog to play with me but I do have the pork chop necklace and in this case it represents all the years of code snippets development for WordPress and OpenRealty. Hanging the pork chop around the neck in my case is motivated by link bait, plain and simple. I spent hours upon hours cleaning up the development of dozens of code elements in my OpenRealty demo in the past week as a result of our efforts for WP Realty 2.0 and I’ve decided to publish this inventory of code snippets as a contribution to OpenRealty users.
As you may have noticed I’ve published a handful that have had recent uses in projects but I’ll extend this a great deal by publishing all of my code snippets. Also, for those that follow the blog, before someone concludes that I’m no longer pursuing OpenRealty in lieu of WP Realty, know this. I’ve always wanted to contribute and take part in advancing OpenRealty but I’m not cool enough to be a member of the “OpenRealty Good ole boys club” So, I’ll simply say that my motive isn’t abandonment, its contribution to OpenRealty users. Oh yeah, and link bait is a second motive. So if you blog, link back to the posts, I’ll extend the favor of doing the same and I’ve added the DO FOLLOW snippet to my existing theme for comments. Link bait is important and so is contribution to the OpenRealty users abroad.
My blog sucks, the design stinks, the typography is retarded and no one can find any of the files I distribute or share including the 32 (+1 potential) Plugins and Addons we publish. So after this work week is done I’ll be applying my theme in its raw format which will be a design in process. It will change as I add features and design changes. This could be dangerous some say in search engine rankings because the changes could overtly affect the way data is navigated to. This is true to some point. The URL’s wont change but the structure most certainly will. After applying the new design, the publishing of all those code snippets begins. Enjoy!
US Government Uses WP Guides
Posted on September 30, 2009
Filed Under Announcements, Products | 3 Comments
I’ll admit, part of doing the things we do in design and publishing of plugins and addons has a little to do with ego. Sometimes it has a lot to do with ego and when people use your plugins, or even redistribute them in their themes and templates it confirms that you did something important enough that others found value in even if it is just utility value. But when a government agency uses your plugins, to me, its worth boasting about and making a big deal of even though its not likely anything truly unique. I’m certain that given all the fine plugins and themes produced by WordPress professionals the world over that their works are also found valuable enough to be taken serious by agencies and even companies to use.
In the email I received from this .gov agency, there was a single question along with a suggestion of sorts and a kind request for help. It seems that WP Guides serves its purpose ideally for distributing documents to the writing staff of this federal office in charge of antiquities and monuments. The suggestion they sent was to have Guides provide an easy way to upload documents or other materials in order to make using it easier. They ask if WP Guides would ever have this feature and if not could it? In short I answered, yes!
I take feedback serious and It has been part of the plan from the beginning to extend this a great deal but as with all plugin and addon development time is money given the workload we manage. Planning the updates for WP Guides does fit into the schedule as its second on the list right after WP Realty 2.0 and prior to WP Realty 3.0 with the following planned tasks I’ll list below. Before however I’ll reiterate the purpose behind the development of this small simple plugin.
Why Did I Create WP Guides?
In many previous posts and forum discussions I have explained that the reason we produced WP Guides initially was two particular types of projects. The first was for a redesign of a school district website and the other was to provide affordable means of distributing documentation to real estate clients in order to teach them how to blog. Support can be expensive and WP Guides is perfect for distributing guides and tutorials to those who have access. Next, I really wanted guides to be used by web developers, blog masters, theme developers and other professionals who want to distribute documentation with their projects. So here is the list of what is in store in the next release.
WP Guides Features in Next Release.
After wrapping up the WP Realty 2.0 and getting the coders started on the WP Realty 3.0 we will add several new features to WP Guides. As it stands this day, September 29th, 2009 we are only about one or two days from completing WP Realty 2.0 and will begin the update changes to Guides. Here is what we have planned.
- WP Guides will feature a one click opt in for remotely hosted guides and video tutorials on a tutorial website being built.
- Folder creation and upload features restricted to the current array of media formats. This will allow admins to upload files from the admin panel.
- Provide user level access settings for members, administrators, authors. Necessary for WP MU enhancements.
- Provide user level inclusion of RSS feeds in the guides panel. This is being added because of my own use of Guides. I like to follow various sources on the web for news and other things of interest when working in my WordPress blogs. This feature will allow users to have their own inventory of RSS feeds in their admin panel.
- It will most certainly have a new interface which will mimic the one we did for WP Realty 2.0.
- It will likely have more support for private branding in this next release but may not make it until the subsequent release shortly there after. From the beginning its always been my goal to make sure that guides could be easily included into blog projects for webmasters to distribute and provide their own documentation, style guides and support files.
- Some additional basic admin configuration settings. Nothing fancy but things that will make it better for use in WP MU projects.
Recovering or Creating Joomla Administrator Account Password
Posted on September 29, 2009
Filed Under Code Snippets, Joomla CMS | Leave a Comment
I wrote a post about recovering your OpenRealty admin access permissions after having encountered a unique situation in trying to recover admin access to a project demo site. With a little foresight after scripting the version for OpenRealty, I thought that maybe a similar script to help people in the event of a Joomla password mishap would be worthy of creating to. So, I figured I’d put together this little snippet you can add to your snippet inventory just in case. Why would you need something like this? I’ll explain.
If you didn’t read the post regarding the similar OpenRealty script then this will help explain why something like this may be necessary. There are times people may install Joomla and then not use it for a period of time. Over time memory can fade and recovering your password using the normal process isn’t really an option because the email assigned to the account is no longer accessible. To make matters worse, there are actually hosting accounts that specialize in bulk hosting of Joomla or WordPress type sites that really don’t grant access to things like phpMyAdmin. What do you do? You use the script below to generate a temporary Super Administrators Account in order for you to reset or change your former account then you delete the file along with the temporary Super Administrators Account. Simply upload the script to your Joomla directory, navigate to it, and your done. It will create a super admin account called THEADMIN with the password of “password”. Its important to note that I set the number in the 9000 range because if you are not sure how many members you have this number is big enough to ensure you wont likely encounter an error. However, this number is so high that each and every new account created will follow this number so its something to consider changing if you want to keep the user ID lower.
But you might ask, why bother with creating a new account when we could simply reset the account to password? Well the very small script at the very bottom of this post will do just that providing the admin account hasn’t been renamed. Upload and access it the same way you would if you were creating the new account. Enjoy!
This one resets the existing super administrators account password to “password”
[snippet missing]
This one creates a new account and password.
<?php
/*
@ Copyright: (c)2007 - 2009 Jared Ritchey Design, All Rights Reserved.
@ Author URL: http://www.jaredritchey.com
@ Author Email: jared@jaredritchey.com
@ License: GNU/GPL Extended.
@ Config Notes: not knowing how many members are in your DB this has been set to create the account in the 9000 range.
*/
//////////////////////////////////////////////////////////////////////////////////////
// THIS SCRIPT IS USED TO CREATE AN ACCOUNT FOR THEADMIN WITH THE PASSWORD OF password
//////////////////////////////////////////////////////////////////////////////////////
require_once('configuration.php');
$link = mysql_connect($mosConfig_host, $mosConfig_user, $mosConfig_password) or die("Could not connect : " . mysql_error());
mysql_select_db($mosConfig_db) or die("Could not select database");
echo "Database Host: " .$mosConfig_host."<br />";
echo "Database User: " .$mosConfig_user."<br />";
echo "Database Password: " .$mosConfig_password."<br />";
echo "Database: " .$mosConfig_db."<br />";
$sql= "INSERT INTO jos_core_acl_aro VALUES(9001, 'users', '9491', 0, 'THEADMIN', 0)";
mysql_query($sql);
$sql= "INSERT INTO jos_core_acl_groups_aro_map VALUES(25, '', 9001)";
mysql_query($sql);
$sql= "INSERT INTO jos_users VALUES(9491, 'THEADMIN', 'THEADMIN', 'someone@somewhere.com', '7d83778ac1e89412de7bad3e3470dc21', 'Super Administrator', 0, 0, 25, '2007-03-06 11:55:23', '2009-08-11 15:32:15', '', 'editor=fckeditor\nexpired=\nexpired_time=')";
mysql_query($sql);
//echo "<br /><br />";
die("Your SUPER ADMINISTRATOR Account was added - be sure to make modifications prior to continuing and delete this file.");
?>
Recovering OpenRealty Admin Access
Posted on September 29, 2009
Filed Under Code Snippets, Open Realty, Open Realty Tips | 6 Comments
Recovering or Creating The OpenRealty Password When All Else Fails.
OpenRealty like many applications has a built in feature for recovering your password in the event that you forget it. Recovering your OpenRealty password is little more than just typing in your email address and clicking submit. Naturally this all works fine and dandy if you still have access to the required email account you used in the OpenRealty configuration for your admin account. But what happens when you don’t have access to the email account and you simply can’t log into OpenRealty? Here is a case in point.
Many months ago, I built a 5 pack theme set for an OpenRealty client of mine and after he had spent a great deal of time on his demonstration install he had no real reason to log in now that it was completed so after months passed by, the password slipped his mind. Making matters worse the email account used during the configuration wasn’t accessible either. My initial thought was to use phpMyAdmin and simply paste in the encrypted password for “password” and be done with it. Go figure there was no such thing as phpMyAdmin on his hosting account. It happens, not often but it happens. This guy really didn’t want to lose the sample data and other things necessary for his demos. Here is what I did.
I created the php file, uploaded to the root of his OpenRealty install via FTP and navigated to the script to generate the account. That was it. Here is the script! It will create an account “ADMINISTRATOR” with the password of “password” each of which is case sensitive. Once created, be sure to make modifications to your account prior to continuing and then DELETE the file to save yourself from headaches down the road later.
But you might ask, why bother with creating a new account when we could simply reset the account to password? Well the very small script at the very bottom of this post will do just that. Upload and access it the same way you would if you were creating the new account.
This one resets the existing admin account password to “password”.
[snippet missing]
This one generates a new account.
<?php
/*
@ Copyright: (c)2008 - 2009 Jared Ritchey Design, All Rights Reserved.
@ Author URL: http://www.jaredritchey.com
@ Author Email: jared@jaredritchey.com
@ Usage: Used to create an admin account in OpenRealty
@ License: GNU/GPL
*/
//////////////////////////////////////////////////////////////////////////////////////////
// THIS SCRIPT WILL CREATE the account with ADMINISTRATOR / password
//////////////////////////////////////////////////////////////////////////////////////////
require_once('include/common.php');
require_once('include/misc.inc.php');
global $config;
$tablepref=$config["lang_table_prefix"];
$link = mysql_connect($db_server, $db_user, $db_password) or die("Could not connect : " . mysql_error());
mysql_select_db($db_database) or die("Could not select database");
// This password is "password"
//5f4dcc3b5aa765d61d8327deb882cf99
$sql= "INSERT INTO " . $config['table_prefix'] . "userdb VALUES
('1000',
'ADMINISTRATOR',
'admin@yourdomain.com',
'Jared',
'Ritchey',
'',
'5f4dcc3b5aa765d61d8327deb882cf99',
'yes',
'yes',
'yes',
'yes',
'yes',
'2009-09-26',
'yes',
'yes',
'2009-09-26 8:20:49',
1,
'yes',
'yes',
'yes',
'no',
'yes',
-1,
'yes',
'yes',
'yes',
'yes',
'yes',
'yes',
'yes'
)";
mysql_query($sql);
die("Your admin account was added - be sure to make modifications to your account prior to continuing and DELETE this file.");
?>
Hide Null or Empty Value Fields
Posted on September 29, 2009
Filed Under Code Snippets | 1 Comment
Hiding Search Forms Fields with Null Values from the Search String.
Have you ever wanted to reduce that long confusing looking and un-necessary search string in your “GET” type forms? In our line of work we may opt to use one of three primary tools in our projects; OpenRealty, UltimateIDX, or our home grown product we use on high end projects. Regardless of product, in each instance the search forms for the MLS Quick Search uses the form action type of “GET” and in doing so it passes the form value to the URL string for the query. But what happens when you have a null value or a field with NO value? Why bother to pass fields to your search string that have no value? Over time we noted that lengthy search strings regardless of empty values or not would reduce the response time for the results substantially when compared to shorter search strings.
This script was written to help in the reduction of processing burdens placed on servers for large search forms that use the GET method for form processing. It was designed in part to reduce the SQL search timeout issue common in Real Estate MLS Search forms that rely on the “GET” method to reduce the number of fields passed in the query string. If a search form field contains a NULL or no value it will not be passed on to the GET string.
With help from coder / blogger Greg Burghardt of Fundamental Disaster we hashed out this little snippet to achieve what we were after. The code has since been modified and has about 4 different variants in use but this one is the most true to the original.
You can download the snippet in a zip file from right here; SearchForms.zip
To use this script you should add a little php to display a variable in the body tag or you can simply permanently alter the body tag as follows;
EXAMPLE:
<body onload=”enableEmptyFields(document.something);”>
You must also add an onSubmit event handler (property) belonging to a Form object as follows:
EXAMPLE:
<form action=”the-name-of-your-script.php” method=”get” onsubmit=”disableEmptyFields(this);” name=”something”>
/* ############################### COPYRIGHT NOTICE BEGINS #############################
@ Copyright 2008 - 2009: WP Realty Team - Chad Broussard and Jared Ritchey
@ Copyright 2008: Greg Burghardt
@ Copyright URL: http://www.wprealty.org and http://fundamentaldisaster.blogspot.com/
@ Published by: Chad Broussard and Jared Ritchey
@ Scripting: In part by http://fundamentaldisaster.blogspot.com/ and Jared Ritchey Design
@ License: GNU / GPL
@ File Name: searchforms.js
############################### COPYRIGHT NOTICE ENDS ############################# */
/*
@ DISCLAIMER AND USAGE AND LICENSE:
You are free to use this script for whatever reason you so desire providing you leave the copyright details above in
tact as required and you do not redistribute this code rebranded as your own work. You are free to include this
code in any commercial or non-commercial application without further permission or obligation from WPRealty or
Chad Broussard. You may NOT republish this code absent of this copyright notice. LICENSED AS GNU/GPL Open Source
with provisions.
*/
function enableEmptyFields(form) {
var i = 0;
var field;
var j = 0;
var opt;
while (field = form.elements[i++]) {
switch (field.nodeName) {
case "input":
switch (field.type) {
case "checkbox":
case "radio":
field.disabled = !field.checked;
break;
default:
field.disabled = false;
break;
}
break;
case "select":
if (field.multiple) {
j = 0;
while (opt = field.options[j++]) {
opt.disabled = !opt.selected;
}
} else {
field.disabled = false;
}
break;
default:
field.disabled = false;
break;
}
}
}
function disableEmptyFields(form) {
var i = 0;
var field;
var j = 0;
var opt;
while (field = form.elements[i++]) {
switch (field.nodeName) {
case "input":
switch (field.type) {
case "checkbox":
case "radio":
field.disabled = !field.checked;
break;
default:
field.disabled = (field.value.length > 0) ? false : true;
break;
}
break;
case "select":
if (field.multiple) {
j = 0;
while (opt = field.options[j++]) {
opt.disabled = !opt.selected;
}
} else {
field.disabled = (field.value.length > 0) ? false : true;
}
break;
default:
field.disabled = (field.value.length > 0) ? false : true;
break;
}
}
}
OpenRealty Database Code Snippet
Posted on September 29, 2009
Filed Under Code Snippets | Leave a Comment
Cleaning up empty rows in OpenRealty databases.
Having added many dozens of MLS solutions to OpenRealty over the past 3 years we have long since discovered that many times the database would become so bloated that the database would barely function efficiently. Even though server configuration and resources do play a significant role, a good majority of the problem was the actual saving of empty rows in the data itself.
Over time we have employed many different steps and tools to increase performance in addition to reducing the size of the DB by as much as 15% in some instances. One such trick in the mix was to setup a CRON to run a few times after each MLS update to clear out and remove all empty rows in the database.
Until recently I hadn’t really considered making it available for general use because its not often that a casual user of OpenRealty would need such a thing. Today however I had a person send me a tech support request from a hosting company that outsources their DB work to me and discovered that even though their OpenRealty hosting client didn’t have MLS listings plugged in they still had a ton of empty rows. So this was the solution.
<?php
/*
@ Copyright: (c)2007 - 2009 Jared Ritchey Design, All Rights Reserved.
@ Author URL: http://www.jaredritchey.com
@ Author Email: jared@jaredritchey.com
@ Usage: Simply drop this into a folder relative to your includes directory, change the path accordingly and point a cron to it.
@ Note: sleep(); is used in this instance to pause the script processing long enough to let other processing complete.
@ License: GNU/GPL Extended.
*/
// I usually put this in my admin folder or some other sub folder for instance.
require_once('../include/common.php');
require_once('../include/misc.inc.php');
////////////////////////////////////////////////////////////////
// USE THIS TO DELETE NULL VALUE FIELDS
////////////////////////////////////////////////////////////////
// MLS script above this line
// sleep(8);
global $config;
$tablepref=$config["lang_table_prefix"];
$tablepref2=$config["table_prefix_no_lang"];
$link = mysql_connect($db_server, $db_user, $db_password) or die("Could not connect : " . mysql_error());
mysql_select_db($db_database) or die("Could not select database");
$sql="DELETE FROM " .$tablepref. "listingsdbelements" . " WHERE listingsdbelements_field_value=''";
mysql_query($sql);
//sleep(3);
?>
A few more OpenRealty Optimization Tips.
Here are a few more little tips that can substantially improve performance of your database when dealing with large data sets in your OpenRealty installation. Even though this list isn’t really that extensive or detailed, the ideas are simple enough to follow and understand. Naturally if you have questions or need clarification you can submit a comment with your question and I’ll gladly reply with more information.
- Concatenate your fields: By joining field data from several different yet related fields into a single field in OpenRealty you can substantially reduce the number of rows generated with your MLS Import. This means if you have Unit1 Beds, Unit1 Baths, Unit1 Laundry they could go into one field for Unit Features.
- Flush empty rows: The above script does just that. Put it on a CRON job or add it to your MLS import script and it should always do the job. You can.
- Field to Class Assignment: You should take time and correctly assign your fields to the appropriate property classes because it does matter.
- Field Sharing: Almost every MLS I’ve ever imported into OpenRealty had duplicate field names. comm_beds, resi_beds, multifam_beds are all bed fields in different classes from the MLS, so each can be put into the same OpenRealty field “Beds” for instance rather than creating three separate fields. Depending on how you script your MLS tools, most of the time its a simple change in your field array for the MLS data.
- Images Are BIG, HOTLINK Em: One of the nicest thing about seeing MLS providers update and modernize is that they are finally catching on to the idea of providing a media server for images and other files. By doing so they substantially reduce the download time it takes to get images and therefore updates are much faster. By hot-linking the images you use a script methods to link the photos for better performance and results. This requires some more explanation on so I’ll do that below.
- Disable thumbnails in your admin config panel: Thumbnails are a waste of space for the most part and if you really don’t need them don’t generate them. OpenRealty has enough features built in to allow you to size images within your HTML. Providing you are not uploading images above and beyond the common ratio size of 640×480 or 480×360 you should be just fine in resizing them via your markup as opposed to using the GD Lib or ImageMagic.
- Remove the search all listings: Studies show that people who search “all” listings almost always go back and refine their search for specific property classes. Its not even science either, its common sense, why would a person search all properties only to be given results that may include commercial, land, rentals, multi-family, residential and so on. It should not be assumed that your visitors are that indecisive about what they are seeking.
- Pass only actual values to your search string: If you have a search form that has for instance 15 or maybe 30 fields. In OpenRealty a null value fields still ends up in the query string and still gets processed, by eliminating this you increase search results speed. I have a script we developed that can be easily included to help with this. You can see it in action this persons site located at Connestee Falls Homes, Try and make a “Quick Search” and watch what happens to the search form, the fields that don’t pass values are grayed out and they do not end up as part of the search string. You can use this script free of charge in your own projects. You can read about it here in my post about Hiding Search Form Fields with Null Values.
Expanding on the image hot linking a bit I’ll simply articulate it like this; If you have 100 visitors to your site per day and each views 3 listings and each listing has an average of 7 photos you end up with 2100 image impressions. (excluding search engines) If you download IDX or RETS MLS listings to your server for processing daily updates, you could end up downloading hundreds of megabytes even gigabytes of images with each update. MLS providers have caught onto this and most now provide media servers or at least URL encoding to the image locations with the data. Handling this in OpenRealty while
OR Guides Gets Facelift
Posted on September 29, 2009
Filed Under General | Leave a Comment
Banging out code for the pending release of WP Realty 2.0, we may now opt to put a version of Guides in the mix. Although we no longer require you to install OpenRealty to use WP Realty, the Guides project was developed for Joomla, OpenRealty and WordPress as a convenient way for site administrators and developers to distribute documentation to their clients in an Un-Branded, un-intrusive manor.
Supporting your work and your clients can be a challenge especially if you have a lot to teach them. So, after long discussions with our programmer and the people behind WP Realty, it became obvious that in order to make the plugin, addon and component more user friendly and attractive to developers for distribution in themes and templates we are giving it a face lift. Additional features, a few bugs, and a new RSS library is also being worked into the next release. As with all of our plugins and addons, you are free to package and distribute them free of charge in your commercial or non-commercial themes and templates. Standard rules apply, just leave the copyright and URL in the source code.
WP Menu Creator for Theme Developers
Posted on September 27, 2009
Filed Under General | 2 Comments
The number one problem WordPress themes suffer from. Poor Menu Management!
A true CMS solution would not require you to manipulate the structure of your content in order to alter the structure of your menu or other navigation elements. Yet, nearly all modern themes on the market today require that you alter the position or assignment of your content in order to change the structure of your navigation. WordPress codex outlines the methods and techniques on how to achieve this relatively easily so many theme developers usually employ the codex examples in order to give their theme the appearance of having rich menu management features. Having done this myself many dozens of times its difficult for some to conceive of a simpler way without writing custom functions specific to the theme as an alternative. For this reason and those I’ll cover below were motive in our creation of the fully open source free Menu Creator for WordPress.
After having built almost a hundred themes for WordPress clients and template resellers, the number one of the big challenges we had often faced was turning WordPress into a CMS to replace a system they were migrating (or escaping) from. A good CMS requires good menu management. Publishing a free WordPress menu management tool turned out to be more of a challenge in terms of informing people of its potential than we had expected. After all, the design and styling possibilities of the WP Menu Creator are nearly endless. Since we did not include any example menus with the distribution of the Menu Creator, it ended up hurting us in terms of perception that the Menu Creator was in some way incomplete. So, I’ll first explain our motive in keeping examples out of the distribution then move onto how to make menu management a part of your themes.
When we set out to build all of our free plugins, we knew in advance that in order to get WordPress to behave much like popular CMS solutions we needed to have a few important plugins. The need for menu management was obvious. Then came form generation, member grouping tools, news feeds, lead management, post planning, and in the case of Real Estate CMS sites, important feeds to things like Zillow or Dwellicious. What those CMS requirements gave us was a road map to the ideal WordPress CMS solution powered by for the most part with all of our current FREE GNU/GPL plugins. When I say “our” I’m referring to myself and The UltimateIDX whom of which pretty much finances all of these projects. When it came to our motive in keeping these tools very basic yet open for design possibilities we kept theme developers in mind since we are theme developers and knew what was needed, requested and expected in terms of ease of integration.
How to add Menu Management Support to your WordPress Themes
After having published so many plugins and addons it was planned from the start that we would not only extend the offer to theme developers of every classification but also take the time to assist with the inclusion of our plugins by providing code for the clean and easy implementation. Naturally we keep our tools and plugins as unbranded as can be realistically expected, but do require that the license information remain in the source code unchanged.
To revisit what I started above about the lack of any CSS in our plugins, it was important for us to make sure all theme developers could easily distribute the plugins and faithfully know that the rendered output would adopt their CSS. If the theme developer creates the navigation elements styled as expected, we knew they would want a reliable way of ensuring that our plugins would play along nicely. So, we included NO CSS menu examples within any of our plugins and opted instead to publish examples of code on The UltimateIDX, this blog and our others including some at Pro Real Estate Network.
This has been a pain, so after careful planning and organizing, we decided to setup a repository of sorts that would allow us to publish all code in one convenient place and beginning this weekend (September, 24th 2009) we are doing just that. If you are a theme developer in need of good menu management in your free or commercial efforts, don’t bother writing functions into your theme when you can easily distribute the WordPress Menu Creator. We will even give you the code to make it possible, FREE.
WordPress IDX RETS
Posted on September 26, 2009
Filed Under General | 20 Comments
Adding MLS Listings to a WordPress Site from IDX or RETS sources.
Today we finally got the 2.0 version back for our latest WordPress plugin that ties in full listings management to your WordPress site without the need to install OpenRealty and a bridge. Although we have built several bridging and integration plugins capable of working with OpenRealty, the process for managing those solutions can become challenging to most website owners. What was needed was a full blown solution that didn’t require you to trick, modify or substantially alter the method by which you blog in order to achieve a truly clean MLS IDX or RETS integration solution. Our brand spanking new plug-in does just that. It fully integrates not only standard listing editor features but provides a way for bloggers to add IDX RETS listings to their sites.
The new plugin allows for you to turn your WordPress Real Estate site into a full blown MLS empowered solution unlike anything ever produced before. But its not just for IDX or RETS empowered sites either. Part of our plan in building this new version was to make sure it would work with a few types of sites we have built in the past in particular those not associated with Real Estate. Automotive sites, Virtual Magazines, Online Classifieds, even a sports and gun shop site have been successfully built using the beta version of this new application. Although a precursor to the much more advanced version scheduled for release March of 2010. There is no shortage of features in this release however; A super clean listing integration and unique characteristics guaranteed to make your WordPress site a powerful listings manager.
In the past versions we attempted to provide a rather complex bridging and integration tool for use with your install of OpenRealty. Problems mounted however as each successive update of OpenRealty usually breaks all previous versions to some degree. One bug fix in OpenRealty would present additional bugs that could break the sites structure. We have moved past that in our new plugin.
Free GNU/GPL Real Estate Listings Manager Plugin
Here is a quick summary of the features for your review pending the release this Tuesday.
- Works fine with or without the All In One SEO Plugin, which was a requirement from the start.
- Works with almost any modern WordPress theme including those from StudioPress and iThemes.
- No need to bother with the installation of OpenRealty.
- A more advanced user registration widget is included.
- Powerful featured listings options allowing for you to put featured listings directly in posts throughout your site.
- Designed to work with the WordPress Menu Creator.
- Automatically generates title, meta and meta keywords based on user defined listings fields.
- Full inline documentation
- Contact / Client Tracking
- CSV Export / Import
- Export to Trulia, Google, Yahoo and other XML feeds.
- Easily create contact forms that integrate well with the listings management features of the plugin.
- The ONLY fully CSS/XHTML compliant output for listings data.
- Google maps on search results.
- Google maps on listing details pages.
- Ajax integrated contact forms.
- All features are template driven allowing for endless possibilities in design.
- More to come….
With this plugin and your favorite theme, you will have the only true fully featured easy to manage listings manager available for WordPress. Although there are many real estate WordPress themes that have listings features in them, NONE of them have the potential to integrate IDX or RETS data effectively. Framing is an absolute waste of the effort and alternative methods using modified versions of the NextGen gallery are not only counter productive, but impossible to manage for any number of listings beyond a few dozen. Contact me today for more details!
keep looking »Recently
- WPRealty Features Short Code
- WordPress Approves ORPRESS
- I am taking a break from freelance
- OpenRealty Paid Support
- XML Feed Templates Download
- OpenRealty Data Icon Tutorial
- OpenRealty 2.5.8 Is Serious Competition
- OpenRealty Theme Options Addon
- WPRealty Sites Out Rank Competition
- Download WP Realty
Categories
- Adobe Dreamweaver
- Announcements
- Code Snippets
- Design
- General
- Joomla CMS
- Open Realty
- Open Realty Tips
- Portfolio
- Products
- Products in Review
- Professionals In Review
- Real Estate News
- Real Estate Websites
- Technical Resources
- Template Design Kit
- Week in Review
- WordPress Wisdom
Archives
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007