By cherrysmooth on
Hello All,
I am putting together a web site for restaurant reviews. These reviews will be based on the 5 star system (go figure) and location. Now I have used drupal and have some experience with it (developed simple modules). What exisiting modules can I use to get this done, I am not looking to redevelop the wheel here? I would also like to have the ability to allow registered users leave their own reviews and comments about restaurants. I have done some searching on this web site about the best path to go, and the book module was suggested, is this the best way to go?
Thanks in advance.
Smooth
Comments
there are quite a few
there are quite a few different ways to use voting, and the voting API. 5 star system is one of them. I'd also suggest the user review.module
i have done something similar
If you are interested in how I am doing mine you can see it (test phases) at http://chibabeat.com/test_site/restaurants which is just the list of all the restaurants i have added so far. But you can do some filtering in there too. For an individual restaurant like http://chibabeat.com/test_site/upper_float_mexican_bar_grill you can vote at the bottom. Also, once i have a lot of people voting i will show the average votes on that table at the restaurants table list page.
Is there are a good way to
Is there are a good way to integrate zip code search into a system like this? In other words, you can choose to search within x miles of zip code 29229 and it would pull up locations that fit those perameters.
not sure but...
not sure but it might be possible. You would need to use the location.module with CCK. Then you would need to create filters for your zipcode values in views. It might take some tinkering but i think it would be possible. Since my restaurants are in Japan (no zipcodes) I just created vocab. "city" and a term for each city and then integrated that into the "venue" content type.
I will do a project like yours.
Is it possible for you to elaborate how you got your restaurant listing done?
What modules did you use? how did you go about doing it?
Thanks in advance.
tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.
chibabeat
I am very impressed by your web site with the cool filtering options! Can I ask you which modules you've used to build it that way?
I would truely appreciate it.
Thanks.
Jan
chibabeat follow up
Yes I second that, what modules did you use, did you have to build any custom ones?
To create the restaurants I
To create the restaurants I am using a combination of CCK, Link, Tinymce, imce, Contemplates (Content Templates), Taxonomy, Taxonomy redirect, Panels, Voting, Voting API, and views.
I'm going to try to be as detailed as possible here.
First I went to administer-->content-->content types-->add content type
I named the Content type Venue but it could be named something like "Restaurants" or "Restaurant Reviews", I gave a description like "Write a review for any restaurant bar or club in the Chiba Area". After it was created I began adding fields.
For mine they were.
name Type Content Type
field_closest_station text Venue
field_phone_number number_integer Venue (making this an integer was a mistake b/c users cannot enter hyphens or parenthesis)
field_address text Venue
field_map_url link Venue
field_website_url link Venue
field_restaurant_description text Venue
field_holidays text Venue
field_average_cost text Venue
field_seats number_integer Venue
field_business_hours text Venue
field_teaser_image image Venue
field_access text Venue
Next I went to create the template for these. Basically I started by creating a plain vanilla html page (with tables...sorry but I know tables are sooo 1995 but 100% css all of the time takes time, can give a newbie headaches, and sometimes just isn't practical). I created the page how i wanted it to look and for all of the fields I wrote those out too because I didn't like the way that my theme put out field titles by default. To better see what I am talking about imagine a table with two columns. On the left column I have manually written things like "Address, Phone Number, Website Url, and all of those other things and on the right column I filled it in with the php for the answers for each. Now by default the template is going to give you values such as
for each field. I just copied the latter half (basically the answer) for each field and pasted it in the html template I made where it needed to go. So for the body I pasted
.
So finally I did this with all of the fields and now I had created the template for my venues. Also, contemplate doesn't generate the php for voting by default so you will need to insert on more template at the very top or bottom. That code is
. That will display the voting box at either the top or bottom of the node.
Later I realized that there were two more fields I wanted to filter restaurants by and since things get a bit weird if at this point you go back and add more fields I created taxonomy for them. These were city and venue type. For City I created the vocab "City" and added the terms. Same for "Venue type" except I allowed multiple ones to be selected and had parent terms for some terms. I made sure that I associated these vocabs with only "Venues". Next I went to create content-->Venue--> and added the info I had for a few restaurants, bars and clubs.
Now I hated the default way these were displayed so wanted to create views for them and this is where the real power of drupal can be realized. First I created a view called restaurants. I checked page view, gave it the url "restaurants", for "view type" I selected "table view", selected "use pager" and made it "20" nodes per page. Next went down to fields and added the fields I wanted to be shown in the table view. Note: I exposed one of my taxonomy terms "venue type" as a field with the option "as links".
Next I went down to filters. Important! The first filter, "node type" "is one of" "venue". Second filter, "Taxonomy: Terms for City" "is one of" and then I selected all of the terms for city. Third filter, "Taxonomy: Terms for Venue Type" "is one of" and selected all of the terms for venue type. Then I exposed both of the filters for taxonomy city and taxonomy venue type. On the exposed filters I gave them both labels "City" and "Venue Type" and clicked for both "Optional", "Force Single" and "Lock Operator". Ok so now I have a nice looking table in with nice filters at http://chibabeat.com/test_site/restaurants. Now I had one problem which was when I clicked on any of the taxonomy vocab it sent me to a page in which venues that fit the criteria for that vocab were listed in drupal default fashion. So next I used the taxonomy redirect module to create similar table views for those terms. I redirected my two taxonomy to pages "cities" and "venue_type" respectively. Now I needed to create two more views for each of these.
First the one for cities.
Click "provide page view", I gave it the same url as the taxonomy redirect "cities", selected "Provide Pager", view type-->table view and chose the number of nodes per page. Then I gave it all the same fields as the view for "restaurants". Next I went to arguments and added "Taxonomy: Term ID" "Summary, sorted as view" and left the rest of the fields blank. (note: that argument might not be needed but i haven't tested it without it so I'm keeping it for now). Next I added three filters and this is where it is important. First, Node Type-->is one of-->Venue. Second, Taxonomy terms for city--> is one of--> highlight all terms for city. Third, Node distinct-->is-->distinct. Since this is the view for the cities I only needed terms for city here. Note, I didn't expose any of these filters but you could if you wanted to. I saved this view and then created another with the url "venue_type" and the only difference was that in the second step I substituted "Taxonomy terms for city" with "taxonomy terms for venue_type" and then highlighted all of my venue types. Now you should get nice table views for every one of your terms too without having to create an individual view for each term.
Some other things about my pages.
-I'm using pathauto for all of my urls so that the title of the restaurant automatically goes into the url.
-I used Tinymce and imce for the restaurant descriptions. The imce lets you easily add images to the body but just make sure that when you are creating the field for something you want to use the tinymce on that you give it enough rows. The tinymce editor takes up a lot of room so you need to give yourself a nice 50 rows or so, so that you can see what you are doing. You don't have to use tinymce though. You could also use something like image_assist or image field.
-I added the image field "Teaser image" because I wanted to let users upload an image to represent the restaurant "maybe a logo or something" and use a thumbnail version in table list view. Currently I'm not doing it but it is possible. There are some bugs and workarounds/patch with it though. By the time you read this it might already be fixed. Make sure that you read the issues for views, imagefield, cck, and contemplates to be sure.
-In the table view I could also show the votes for the restaurants. Since my site is not yet live and nobody has really voted I don't see much of a need for this.
-The power is in the views module. Learn to use this module well because it is so powerful and can do so much. The developer of this module is a genius. I haven't even done much theming on the table views but you can also add nice headers and footers with html to make them look very attractive. These table views can be created for other uses such as classified ads. Currently I'm also creating more for classifieds.
-CCK, contemplates, and views can create just about anything you want and I'm using them for all of my content rather than the usual stuff.
-I'm using panels to create a nice frontpage with just a list view of restaurants. You can see it at http://chibabeat.com/test_site
Ok, I hope this helps. If you have any questions or problems let me contact me and I will try to help you out. Good luck!
I did read about CCK and
I did read about CCK and view a bit but never understood them. I guess i have to revisit the handbooks but you gave a good example of CCK and views here. Now i have a clear idea of what these modules can do. It wold be nice to see some tutorials with examples using CCK and views.
Thanks for the explanation, orionvortex!!
tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.
Just start using them
just start using those modules and if you have any questions let me know. I will try to help you out the best I can.
thanks
Great! nice of you to share, I will try to understand it better (I mean to study it) and if I get something out of it I'll let you know!
Ciao
Just added a new module for
Just added a new module for creation / validation of phone field via CCK
check it out at : http://drupal.org/project/phone
It 's a beginning, can still be improve
------------
Thierry Guégan
Paris + Vancouver
I am stuck, simple page.
So i created a content type of restaurants, simple. I am using, image and description as fields. Then i went to create page, chose Restaurants. I uploaded the image and entered the description.
Then i went to adming/views. I added a new view. I am stuck here. Dont know what do to. I chose page, and sved it. The code generated does not show nothing when i paste it in a page already created. I guess its not that simple.
All i want is create a restaurants list with image and description. Nothing else.
Can you help?
tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.
On that view you need to
On that view you need to scroll down to fields. Choose your image field and your description field. Give them labels if needed and then save the view and check and see how it looks. Btw, are you wanting to create a table list or teaser list? If you are just wanting to do the teaser list then you can do that in content templates.
I need to create a table
I need to create a table list, the image would appear on the left and the description on the right.
I need the code so i can insert it into a page(node) i created.
I followed your instructions.
The image and description fields are already added, and saved.
In the admin/views, i have restaurants_views.
I tried the Theme Wizard tab, it gives me some code, i paste it in a node, saved it, nothing is displayed.
Also, i tried, under the Actions options, i chose export, i get some code but then, when i paste it in a node nothing is displayed.
Do i nead to create a template for these restaurant list?
It works if i create a block. I dont need a block.
I think i am almost there...
Any help would be appreciated. Thanks.
tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.
Could you post the file that you get by exporting the view?
It would make it easier to find the problem...
Pete.
This is the code i get when
This is the code i get when exporting the restaurants_view.
I want to paste this code into a node, but nothing is displayed after i save and view the node. My node is http://example.com/?q=node/12
tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.
what about applying open resort
Hi guys
what about applying http://www.openresort.org/ to build a restaurant type website?
Restaurant Review Website
I am interested in paying someone to build me a restaurant review website. Please contact me via email if someone is interested in the job. scorchedorchestra@hotmail.com
_
You may have more luck posting to the http://drupal.org/paid-services forum-- be sure to read the 2 sticky posts regarding posting to this forum.
restaurant reviews
I found that using this restaurant review site is reliable, you should base yours to reliability rather than a lot of reviews. http://reviews.opentable.com/0938/allreviews.htm