Solved

Wordpress Theme design: How to create special purpose theme with pictures and custom parameters?

Posted on 2015-02-10
9
107 Views
Last Modified: 2015-02-16
Hi there!

I want to create a wordpress theme for a real estate agent. The real estate data is not typed in by a user; instead it should be loaded by a program. What I need is some best practice advice on how to set this up in terms of what to prepare in wordpress.

To make it simple we suppose a real estate is made up of the following properties:
title, city, type, size, price and a set of pictures.

I suppose I register a custom post type "RealEstate" and some taxonomies for the properties. If there is a preferred way, let me know.

How do I handle the set of pictures? There should be a gallery to click through. I know that there are some plugins but how do I define which pictures belong to which real estate?

And finally, how would you load the real estate data into wordpress? Is there a stable API with which a could populate my real estate posts including the pictures for the gallery?

I don't need precise instructions; I basically need advice from an experienced wordpress theme developer which wordpress components I should use for my special web site.

Regards,
Dirk.
0
Comment
Question by:dirkil2
  • 5
  • 4
9 Comments
 
LVL 70

Expert Comment

by:Jason C. Levine
ID: 40602248
Dirk,

This is a hardly a unique application.  There are tons of themes already developed for real estate that can integrate with MLS listings.

https://www.google.com/search?q=wordpress+real+estate+theme+mls+integration

as well as plugins and tutorials that help with the IDX integration:

http://www.elegantthemes.com/blog/tips-tricks/how-to-integrate-mls-listings-into-a-wordpress-website

If you want to run something smaller, then pretty much any theme that looks good can be altered to suit your needs with either custom post types and/or custom fields and an ability to create a post template.

So the issue is less which components to use, as there a bunch, and more "what are you proposing to do that isn't covered by the community already?"
0
 

Author Comment

by:dirkil2
ID: 40605284
Jason,

thank you for your comment. This is actually not what I was after. I am aware that there are wordpress real estate templates out there. We are in a complete different real estate market (no MLS or the like). We definitely need to develop our own theme and must be able to populate that through a web service.

Regards,
Dirk.
0
 
LVL 70

Expert Comment

by:Jason C. Levine
ID: 40605805
If you want to run something smaller, then pretty much any theme that looks good can be altered to suit your needs with either custom post types and/or custom fields and an ability to create a post template.
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 

Author Comment

by:dirkil2
ID: 40605836
Sorry to say that but this is not useful.  

I am more interested in the 'how to do it' and what APIs, components, hooks get the job done. Your answer is just saying: "Yes, it can be done".

For example: how do I get a new post in programmatically? You wouldn't want to write to the database tables directly, would you? So, how else can this be done?

Would you define a category or tags? Would you do it hierarchically or not?

The problem is that there are so many possibilities and I need an experienced wordpress developer that points me in the right direction.
0
 
LVL 70

Accepted Solution

by:
Jason C. Levine earned 500 total points
ID: 40605917
I'm having trouble understanding your specific question because you are asking for general advice, which I'm trying to provide but without more specificity of the generalities, I keep missing the mark.  It's a little frustrating on this end, too.

For example, you seem familiar enough with WordPress but are asking about which API to use.  Aside from the WordPress API, what else do you need?  You don't really say, it becomes a chicken and egg question.

For example: how do I get a new post in programmatically? You wouldn't want to write to the database tables directly, would you? So, how else can this be done?

Why not? It's the easiest way...write to the wp_posts table, get the ID back from the initial write, set your postmeta with that ID.  At the end of the day, there are only a few ways aside from the normal admin backend to get the content in: process your external source and write it to the database, create an import XML file and use the import function/consume an RSS feed and replicate it as posts, or use a form on the front end for someone else to create content. In all of these cases, the functions you need are built into WordPress, so it just becomes a matter of writing a series of custom functions to process the source data. What matters more is the flexibility of th source data...how do you get it, can it be altered, how often do you need to process it, etc.

Would you define a category or tags? Would you do it hierarchically or not?

I wouldn't use normal posts so no categories/tags in that sense. I would use custom post types and define as many taxonomies as make sense.  This is usually the critical step of a project like this because once you start publishing, changing taxonomy is painful and affects your SERPS.  So I typically spend extra time with the team/client to make sure all bases are covered.

As far as hierarchy goes, only use it if it makes sense to do so. I'm not a huge fan of deep hierarchy, but real estate listings might have one or more areas where it would be useful.  Again, I don't have specifics so the advice waffles.

One thing to consider is how people will use the hierarchy to navigate.  I'm not a fan of letting users click down through two or more levels of hierarchy to see listings, so if you do use a hierarchy consider using a faceted-type search (WP-Facet plugin or write your own) to handle that pain point.
0
 

Author Comment

by:dirkil2
ID: 40612436
Writing to the database directly seems strange to me. I could imagine that this is asking for trouble in terms of future wordpress updates. Therefore I was asking about the API. I know a lot of systems that officially have an API but hardly anyone uses it because it's slow or buggy or difficult to use. If you recommend writing to the database directly I might give that a go.

Categories/Tags:
You said you would use custom post types. But that doesn't mean that I can't use categories. So, I don't get what you are advising me.

I think I will use a custom post type "RealEstate" and for some of its fields I would like to use categories. For example, the house type could be one of:
SEMI_DETACHED_HOUSE, ONE_FAMILY_HOUSE, FAMILY_HOUSE_WITH_LODGER_FLAT, TUDOR_HOUSE, WOODEN_HOUSE, ...

If you have experience with that, maybe you could also comment on my other question.
0
 

Author Closing Comment

by:dirkil2
ID: 40612439
My question was probably hard to answer since it was rather general.
0
 

Author Comment

by:dirkil2
ID: 40612443
@Jason

Forgot to say Thank you for your answer.
0
 
LVL 70

Expert Comment

by:Jason C. Levine
ID: 40612526
Writing to the database directly seems strange to me.

If WordPress provides functions to allow you to do the writes, what's the difference between that and "writing directly?"

I could imagine that this is asking for trouble in terms of future wordpress updates.

I could imagine lots of things that don't have much bearing on reality too :)

If you recommend writing to the database directly I might give that a go.

Remember, all we are dealing with is a MySQL table that has to have certain values set certain ways.  Writing to the DB directly is do-able assuming you are aware of the little idiosyncracies (e.g. how to create a slug dynamically).  If you want to use the WordPress import functions or API, you can do that too.  It all depends on the specific nature of your process and without that, it's very hard to give you a concrete recommendation.

But that doesn't mean that I can't use categories.

No, of course not.  What I'm trying to convey is that using "categories" and "tags" for something that should have more specific taxonomy is a rookie mistake.  The mechanisms of taxonomy is WordPress is identical whether it's the default of "category" and "tag" or if you take the extra time to customize it properly and use taxonomy like:

Construction Materials:
Wood, Concrete, Steel, Adobe, Reeds

House Style:
Semi-Detached, Log Cabin, Underground Lair

and so on.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

WordPress has made it easy to create scalable sites based on their powerful CMS, but as great as WordPress is, there are some SEO issues that haven’t been addressed out of the box.  Fortunately these problems can be solved with a few plugins.  The f…
If you are looking for plug-ins to add functions to your WordPress small business web site, take some time to read though this comprehensive list.  These are all the plugins I use for my customers WordPress web sites, as well as my own.  Be sure to …
This video teaches viewers how to create their own website using cPanel and Wordpress. Tutorial walks users through how to set up their own domain name from tools like Domain Registrar, Hosting Account, and Wordpress. More specifically, the order in…
The purpose of this video is to demonstrate how to set up an RSS Feed on a WordPress Website. This will be demonstrated using a Windows 8 PC. Feedburner will be used for this demonstration. Go to your WordPress login page. This will look like the…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question