There was some discussion about how to limit geographically based tags to cities, etc. You might want to check out the geonames.org service, and consider exporting a hierarchical list of geographic names and making vocabularies out of them (eg states, cities). This would be a good way to ensure correct spellings, etc, and reduce the problems associated with free tagging. The downside is that it may need some performance tuning.
Joe
-----Original Message----- From: support-bounces@drupal.org [mailto:support-bounces@drupal.org] On Behalf Of support-request@drupal.org Sent: March 16, 2008 4:25 AM To: support@drupal.org Subject: support Digest, Vol 63, Issue 33
Send support mailing list submissions to support@drupal.org
To subscribe or unsubscribe via the World Wide Web, visit http://lists.drupal.org/listinfo/support or, via email, send a message with subject or body 'help' to support-request@drupal.org
You can reach the person managing the list at support-owner@drupal.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of support digest..."
Today's Topics:
- Re: Is this achievable using drupal alone? (Michael Prasuhn)
- Re: Is this achievable using drupal alone? (Neil: esl-lounge.com)
- Re: Is this achievable using drupal alone? (Michael Prasuhn)
- Re: Is this achievable using drupal alone? (Neil: esl-lounge.com)
Message: 1 Date: Sat, 15 Mar 2008 14:30:56 -0700 From: Michael Prasuhn mike@mikeyp.net Subject: Re: [support] Is this achievable using drupal alone? To: support@drupal.org Message-ID: 464611A4-FC53-40A3-A09F-BDEBDAA8867A@mikeyp.net Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
What I typically do when presented with this type of project, with multiple views per page, is to embed the views via the theme layer, and pass the selected argument, such as the node title into the view as an argument. Here's a semi-detailed break down:
Create a view that filters for images based on node type, published and then an argument as city name. (do the same for blogs, writings, and any other separate views you want on the page)
In your theme, in template.php, in phptemplate_variable, under the page, or node switch, add something along these lines:
if ($vars['node']->type == 'citypage') { $view = views_get_view('images_by_city'); $vars['embeded_images_view'] = views_build_view('embed', $view, array($vars['node']->title), false, false); }
Repeat as necessary for each view that you want on the page.
Then, in your page.tpl.php or node.tpl.php (depending on which switch you but the above code under) you can add the following to your tempalte:
<?php if ($embeded_images_view): ?>
<div id="embeded-images-view"> <?php print $embeded_images_view; ?> </div> <!-- embeded-images-view --><?php endif; ?>
And repeat as necessary for each view that you want to embed.
A little code in a helper module that implements hook_nodeapi could handle creating a term for each new node of this type that is made. This can be a very elegant solution, although it can produce some odd results with node edit pages if you embed the view in the page template.
Hope this helps out.
-Mike
On Mar 15, 2008, at 12:45 PM, Neil: esl-lounge.com wrote:
Thanks for the responses so far...this has certainly kept my brain busy for the last couple of days and there are still a lot of uncertainties in my mind. I'm not sure I understand how I would use Views to present each "page" for each city with the tagged entries underneath. As I understand Views, I could present a list (table, full nodes or teasers) with, for example, all content tagged with "Dallas, TX", but how would I alter what comes at the top of each page (using, presumably the page/header text box)? I would ideally like to present some type of Info box at the top of each city's page (founded, population, long/lat, country/state, etc). I wouldn't be able to do this with views, would I? This is also why I was toying with the idea of just having a group for each city.
Using CCK, I could have member enter all the Info Box fields when they create each new one. Then, using my exisiting node- group.tpl.php, the group page could be laid out with the info box at the top of the page, the mission statement, etc, to one side and all the relevant content (forum posts, blog entries, images, pagers, etc) showing below. So I might have something like this:
http://i29.tinypic.com/9bazyf.png
Does this sound workable? What problems are there in having potentially 10,000 groups? Or 100,000? How would I get them all to link together (as the [category:Texas] function would allow me to do in MediaWiki, for example.)? Is there any way I could use a special CCK field to introduce the idea of hierarchy (United States >> Texas
Dallas >> Plano) into the group content type? Or would I need to
get busy with a Location taxonomy and tag each new group as it's created??
Again, I really appreciate any input on this from anyone, if only to point me in the right direction.
Neil
Michael Prasuhn mike@mikeyp.net http://mikeyp.net 949.200.7595 714.356.0168 cell 949.200.7670 fax
Message: 2 Date: Sat, 15 Mar 2008 23:40:42 +0100 From: "Neil: esl-lounge.com" neil@esl-lounge.com Subject: Re: [support] Is this achievable using drupal alone? To: support@drupal.org Message-ID: 006401c886ed$9ab42ed0$02b90a3e@Neil Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original
Sander,
Thanks. I have a couple of questions relating to your idea:
- would your solution allow for each city's InfoBox as shown in my
page mockup image? How would this info be entered? As this info would be unique to each city, I thought the only way of doing it would be to have the city page itself as a content type (or "group", which is a content type anyway, I suppose) and use CCK fields to get that info into each city's page. How would Views allow me to do it?
- How would I have a tight policy of tags across the different content
types to ensure all dallas content did indeed end up in the right View? Would I have to set up a "Location" vocabulary (with 100,000 potential terms??) and not allow free tagging or multiple tagging. I'm just trying to get my head around a few of the more mundane queries running through my head.
Finally, would you not suggest doing this via OG as I mentioned in an earlier mail?
Neil
----- Original Message ----- From: "sander-martijn" lists@severeddreams.com To: support@drupal.org Sent: Saturday, March 15, 2008 9:14 PM Subject: Re: [support] Is this achievable using drupal alone?
Check out views arguments. With this you could have a cities view that lists all the cities out, and cities/dallas to show dallas tx with it's own header and listings etc, or a lot of things like that. Also take a look at some of the other views modules, like the views bonus pack.
.sander
Neil: esl-lounge.com wrote:
Thanks for the responses so far...this has certainly kept my brain
busy
for the last couple of days and there are still a lot of
uncertainties
in my mind. I'm not sure I understand how I would use Views to
present
each "page" for each city with the tagged entries underneath. As I understand Views, I could present a list (table, full nodes or
teasers)
with, for example, all content tagged with "Dallas, TX", but how
would I
alter what comes at the top of each page (using, presumably the page/header text box)? I would ideally like to present some type of
Info
box at the top of each city's page (founded, population, long/lat, country/state, etc). I wouldn't be able to do this with views, would
I?
This is also why I was toying with the idea of just having a group
for
each city.
Using CCK, I could have member enter all the Info Box fields when
they
create each new one. Then, using my exisiting node-group.tpl.php, the group page could be laid out with the info box at the top of the
page,
the mission statement, etc, to one side and all the relevant content (forum posts, blog entries, images, pagers, etc) showing below. So I might have something like this:
http://i29.tinypic.com/9bazyf.png
Does this sound workable? What problems are there in having
potentially
10,000 groups? Or 100,000? How would I get them all to link together
(as
the [category:Texas] function would allow me to do in MediaWiki, for example.)? Is there any way I could use a special CCK field to
introduce
the idea of hierarchy (United States >> Texas >> Dallas >> Plano)
into
the group content type? Or would I need to get busy with a Location taxonomy and tag each new group as it's created??
Again, I really appreciate any input on this from anyone, if only to point me in the right direction.
Neil
----- Original Message ----- *From:* Metzler, David <mailto:metzlerd@evergreen.edu> *To:* support@drupal.org <mailto:support@drupal.org> *Sent:* Thursday, March 13, 2008 5:42 PM *Subject:* Re: [support] Is this achievable using drupal alone? If it were mine, I?d make the cities be required taxonomy termsfor
the content type. Then people create individual entries and tag them as Dallas, Texas or Clairborne or whatever. Use views witha
term as an argument to pull lists of content for a city. Peoplecan
comment or make their own entries for the city. Dave -----------------------------------------------------------------
*From:* support-bounces@drupal.org [mailto:support-bounces@drupal.org] *On Behalf Of *Neil:esl-lounge.com *Sent:* Thursday, March 13, 2008 9:27 AM *To:* support@drupal.org *Subject:* [support] Is this achievable using drupal alone?
I have quite a specific content-type requirement for my site and have been pulling my hair out thinking about how I could achieveit
with drupal - so I turn to this support list, if not for asolution,
then for at least a pointer or two to push me nearer an answer. I have a site where I want members to be able to enterinformation
about hundreds or even thousands of cities. It's not relevant exactly what type of information they are writing. For example, a member creates a new X content type (this is thebig
question) and puts the title Dallas, Texas and writes a paragraphor
two about it. Other members can rate that entry or attachcomments
to it...or, very importantly, add their own entry, which wouldhave
equal weight to the first entry. Ultimately, tags could beattached
to each entry to allow some type of sorting. Look here at a screenshot mock-up I've made to give some idea of what I'm talking about. http://i31.tinypic.com/2lo0qkw.png The original idea called for a wiki where each city would be awiki
page, but we're now veering more towards having seperate entries (not editable by other users) by each member, to which commentscan
be added. So these are almost nodes within nodes. We consideredsome
type of views/og solution but is it feasible to have 10,000 viewsor
groups? Would views allow me to gather together, dynamically, all "entries" on "Dallas, Texas" and seamlessly switch (using an auto-complete text box perhaps) to Houston, Texas or to any of 10,000 other towns? Would $arg help me there?? Is there anything that already exists on drupal that can help me towards a solution? I've already thought about book pages, forum pages, groups for each city and a few other possibilitiesbesides,
but nothing seems to fit. There could well be some useful modules out there I am unaware of. Thanks in advance for any guidance you can offer. Neil -----------------------------------------------------------------
-- [ Drupal support list | http://lists.drupal.org/ ]-- [ Drupal support list | http://lists.drupal.org/ ]
Message: 3 Date: Sat, 15 Mar 2008 19:01:06 -0700 From: Michael Prasuhn mike@mikeyp.net Subject: Re: [support] Is this achievable using drupal alone? To: support@drupal.org Message-ID: A3120518-74A4-4CFB-99F1-26BFDD1AE9D0@mikeyp.net Content-Type: text/plain; charset=WINDOWS-1252; format=flowed; delsp=yes
With the method I outlined, each city, is a node, of whatever content type you set up for cities. You can configure your fields however you want. One benefit of doing it this way, is that then city nodes can be indexed by search, (even though the views content inside of them will not be indexed) so that when someone searches for 'Dallas' the node for Dallas is in the search results instead of only other posts tagged with Dallas.
As far as vocab control.... I am not sure what the best method is here, if you want users to be able to create them, and limit them at the same time. You could set it up with a fixed vocabulary, or maybe even as a multiple value node reference field for tagging other posts. If you go that route, just point the node reference to only return nodes of the content type for cities that you create. Other than that I would say, maybe disallow free tagging, and allow multiple selects, and programatically create the terms when each new city page is created.
Not sure if that fits with your workflow or not. I suppose you could even go the opposite way and create nodes programmatically based on the creation of new terms in your chosen vocab.
I don't know that Organic Groups is or isn't the right solution for you, generally I tend to lean towards organic groups for things like access control for groups of people or anything that manages subsets of membership. If neither of those is an issue for you, I'd still say you could use it, but it isn't the first tool I'd reach for if doing the type of project you're working on.
-Mike
On Mar 15, 2008, at 3:40 PM, Neil: esl-lounge.com wrote:
Sander,
Thanks. I have a couple of questions relating to your idea:
- would your solution allow for each city's InfoBox as shown in my
page mockup image? How would this info be entered? As this info would be unique to each city, I thought the only way of doing it would be to have the city page itself as a content type (or "group", which is a content type anyway, I suppose) and use CCK fields to get that info into each city's page. How would Views allow me to do it?
- How would I have a tight policy of tags across the different
content types to ensure all dallas content did indeed end up in the right View? Would I have to set up a "Location" vocabulary (with 100,000
potential
terms??) and not allow free tagging or multiple tagging. I'm just trying to get my head around a few of the more mundane queries running through my head.
Finally, would you not suggest doing this via OG as I mentioned in an earlier mail?
Neil
----- Original Message ----- From: "sander-martijn" lists@severeddreams.com To: support@drupal.org Sent: Saturday, March 15, 2008 9:14 PM Subject: Re: [support] Is this achievable using drupal alone?
Check out views arguments. With this you could have a cities view that lists all the cities out, and cities/dallas to show dallas tx with it's own header and listings etc, or a lot of things like that. Also take a look at some of the other views modules, like the views bonus pack.
.sander
Neil: esl-lounge.com wrote:
Thanks for the responses so far...this has certainly kept my brain busy for the last couple of days and there are still a lot of uncertainties in my mind. I'm not sure I understand how I would use Views to present each "page" for each city with the tagged entries underneath. As I understand Views, I could present a list (table, full nodes or teasers) with, for example, all content tagged with "Dallas, TX", but how would I alter what comes at the top of each page (using, presumably the page/header text box)? I would ideally like to present some type of Info box at the top of each city's page (founded, population, long/lat, country/state, etc). I wouldn't be able to do this with views, would I? This is also why I was toying with the idea of just having a group for each city.
Using CCK, I could have member enter all the Info Box fields when they create each new one. Then, using my exisiting node-group.tpl.php,
the
group page could be laid out with the info box at the top of the page, the mission statement, etc, to one side and all the relevant content (forum posts, blog entries, images, pagers, etc) showing below. So I might have something like this:
http://i29.tinypic.com/9bazyf.png
Does this sound workable? What problems are there in having potentially 10,000 groups? Or 100,000? How would I get them all to link together (as the [category:Texas] function would allow me to do in MediaWiki, for example.)? Is there any way I could use a special CCK field to introduce the idea of hierarchy (United States >> Texas >> Dallas >> Plano) into the group content type? Or would I need to get busy with a Location taxonomy and tag each new group as it's created??
Again, I really appreciate any input on this from anyone, if only to point me in the right direction.
Neil
----- Original Message ----- *From:* Metzler, David mailto:metzlerd@evergreen.edu *To:* support@drupal.org mailto:support@drupal.org *Sent:* Thursday, March 13, 2008 5:42 PM *Subject:* Re: [support] Is this achievable using drupal alone?
If it were mine, I?d make the cities be required taxonomy terms for the content type. Then people create individual entries and tag them as Dallas, Texas or Clairborne or whatever. Use views with
a
term as an argument to pull lists of content for a city. People can comment or make their own entries for the city.
Dave
*From:* support-bounces@drupal.org [mailto:support-bounces@drupal.org] *On Behalf Of *Neil: esl-lounge.com *Sent:* Thursday, March 13, 2008 9:27 AM *To:* support@drupal.org *Subject:* [support] Is this achievable using drupal alone?
I have quite a specific content-type requirement for my site and have been pulling my hair out thinking about how I could achieve it with drupal - so I turn to this support list, if not for a solution, then for at least a pointer or two to push me nearer an answer.
I have a site where I want members to be able to enter
information
about hundreds or even thousands of cities. It's not relevant exactly what type of information they are writing.
For example, a member creates a new X content type (this is the big question) and puts the title Dallas, Texas and writes a paragraph or two about it. Other members can rate that entry or attach
comments
to it...or, very importantly, add their own entry, which would have equal weight to the first entry. Ultimately, tags could be attached to each entry to allow some type of sorting.
Look here at a screenshot mock-up I've made to give some idea of what I'm talking about.
http://i31.tinypic.com/2lo0qkw.png
The original idea called for a wiki where each city would be a wiki page, but we're now veering more towards having seperate entries (not editable by other users) by each member, to which comments can be added. So these are almost nodes within nodes. We considered some type of views/og solution but is it feasible to have 10,000 views or groups? Would views allow me to gather together, dynamically, all "entries" on "Dallas, Texas" and seamlessly switch (using an auto-complete text box perhaps) to Houston, Texas or to any of 10,000 other towns? Would $arg help me there??
Is there anything that already exists on drupal that can help me towards a solution? I've already thought about book pages, forum pages, groups for each city and a few other possibilities
besides,
but nothing seems to fit. There could well be some useful modules out there I am unaware of.
Thanks in advance for any guidance you can offer.
Neil
-- [ Drupal support list | http://lists.drupal.org/ ]
-- [ Drupal support list | http://lists.drupal.org/ ]
-- [ Drupal support list | http://lists.drupal.org/ ]
Michael Prasuhn mike@mikeyp.net http://mikeyp.net 949.200.7595 714.356.0168 cell 949.200.7670 fax
Message: 4 Date: Sun, 16 Mar 2008 09:24:48 +0100 From: "Neil: esl-lounge.com" neil@esl-lounge.com Subject: Re: [support] Is this achievable using drupal alone? To: support@drupal.org Message-ID: 001f01c8873f$33cdbdb0$65c80a3e@Neil Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original
I just wanted to say, I hadn't ignored your response Michael - just that it's one level above my current understanding of Drupal, so it was my intention to look through your original post again in the next day or so and possibly set up an example few pages to see it in operation.
Just to clarify, the first thing I'd have to do is set up a "City Name" vocabulary and tag a few nodes (video, image, blog entry) with "Dallas" and then begin to set up the views as you explained?
Neil
----- Original Message ----- From: "Michael Prasuhn" mike@mikeyp.net To: support@drupal.org Sent: Sunday, March 16, 2008 3:01 AM Subject: Re: [support] Is this achievable using drupal alone?
With the method I outlined, each city, is a node, of whatever content type you set up for cities. You can configure your fields however you want. One benefit of doing it this way, is that then city nodes can be indexed by search, (even though the views content inside of them will not be indexed) so that when someone searches for 'Dallas' the node for Dallas is in the search results instead of only other posts tagged with Dallas.
As far as vocab control.... I am not sure what the best method is here, if you want users to be able to create them, and limit them at the same time. You could set it up with a fixed vocabulary, or maybe even as a multiple value node reference field for tagging other posts. If you go that route, just point the node reference to only return nodes of the content type for cities that you create. Other than that I would say, maybe disallow free tagging, and allow multiple selects, and programatically create the terms when each new city page is created.
Not sure if that fits with your workflow or not. I suppose you could even go the opposite way and create nodes programmatically based on the creation of new terms in your chosen vocab.
I don't know that Organic Groups is or isn't the right solution for you, generally I tend to lean towards organic groups for things like access control for groups of people or anything that manages subsets of membership. If neither of those is an issue for you, I'd still say you could use it, but it isn't the first tool I'd reach for if doing the type of project you're working on.
-Mike
On Mar 15, 2008, at 3:40 PM, Neil: esl-lounge.com wrote:
Sander,
Thanks. I have a couple of questions relating to your idea:
- would your solution allow for each city's InfoBox as shown in my
page mockup image? How would this info be entered? As this info would be unique to each city, I thought the only way of doing it would be to have the city page itself as a content type (or "group", which is a content type anyway, I suppose) and use CCK fields to get that info into each city's page. How would Views allow me to do it?
- How would I have a tight policy of tags across the different
content types to ensure all dallas content did indeed end up in the right View? Would I have to set up a "Location" vocabulary (with 100,000
potential
terms??) and not allow free tagging or multiple tagging. I'm just trying to get my head around a few of the more mundane queries running through my head.
Finally, would you not suggest doing this via OG as I mentioned in an earlier mail?
Neil
----- Original Message ----- From: "sander-martijn" lists@severeddreams.com To: support@drupal.org Sent: Saturday, March 15, 2008 9:14 PM Subject: Re: [support] Is this achievable using drupal alone?
Check out views arguments. With this you could have a cities view that lists all the cities out, and cities/dallas to show dallas tx with it's own header and listings etc, or a lot of things like that. Also take a look at some of the other views modules, like the views bonus pack.
.sander
Neil: esl-lounge.com wrote:
Thanks for the responses so far...this has certainly kept my brain busy for the last couple of days and there are still a lot of uncertainties in my mind. I'm not sure I understand how I would use Views to present each "page" for each city with the tagged entries underneath. As I understand Views, I could present a list (table, full nodes or teasers) with, for example, all content tagged with "Dallas, TX", but how would I alter what comes at the top of each page (using, presumably the page/header text box)? I would ideally like to present some type of Info box at the top of each city's page (founded, population, long/lat, country/state, etc). I wouldn't be able to do this with views, would I? This is also why I was toying with the idea of just having a group for each city.
Using CCK, I could have member enter all the Info Box fields when they create each new one. Then, using my exisiting node-group.tpl.php,
the
group page could be laid out with the info box at the top of the page, the mission statement, etc, to one side and all the relevant content (forum posts, blog entries, images, pagers, etc) showing below. So I might have something like this:
http://i29.tinypic.com/9bazyf.png
Does this sound workable? What problems are there in having potentially 10,000 groups? Or 100,000? How would I get them all to link together (as the [category:Texas] function would allow me to do in MediaWiki, for example.)? Is there any way I could use a special CCK field to introduce the idea of hierarchy (United States >> Texas >> Dallas >> Plano) into the group content type? Or would I need to get busy with a Location taxonomy and tag each new group as it's created??
Again, I really appreciate any input on this from anyone, if only to point me in the right direction.
Neil
----- Original Message ----- *From:* Metzler, David mailto:metzlerd@evergreen.edu *To:* support@drupal.org mailto:support@drupal.org *Sent:* Thursday, March 13, 2008 5:42 PM *Subject:* Re: [support] Is this achievable using drupal alone?
If it were mine, I?d make the cities be required taxonomy terms for the content type. Then people create individual entries and tag them as Dallas, Texas or Clairborne or whatever. Use views with
a
term as an argument to pull lists of content for a city. People can comment or make their own entries for the city.
Dave
*From:* support-bounces@drupal.org [mailto:support-bounces@drupal.org] *On Behalf Of *Neil: esl-lounge.com *Sent:* Thursday, March 13, 2008 9:27 AM *To:* support@drupal.org *Subject:* [support] Is this achievable using drupal alone?
I have quite a specific content-type requirement for my site and have been pulling my hair out thinking about how I could achieve it with drupal - so I turn to this support list, if not for a solution, then for at least a pointer or two to push me nearer an answer.
I have a site where I want members to be able to enter
information
about hundreds or even thousands of cities. It's not relevant exactly what type of information they are writing.
For example, a member creates a new X content type (this is the big question) and puts the title Dallas, Texas and writes a paragraph or two about it. Other members can rate that entry or attach
comments
to it...or, very importantly, add their own entry, which would have equal weight to the first entry. Ultimately, tags could be attached to each entry to allow some type of sorting.
Look here at a screenshot mock-up I've made to give some idea of what I'm talking about.
http://i31.tinypic.com/2lo0qkw.png
The original idea called for a wiki where each city would be a wiki page, but we're now veering more towards having seperate entries (not editable by other users) by each member, to which comments can be added. So these are almost nodes within nodes. We considered some type of views/og solution but is it feasible to have 10,000 views or groups? Would views allow me to gather together, dynamically, all "entries" on "Dallas, Texas" and seamlessly switch (using an auto-complete text box perhaps) to Houston, Texas or to any of 10,000 other towns? Would $arg help me there??
Is there anything that already exists on drupal that can help me towards a solution? I've already thought about book pages, forum pages, groups for each city and a few other possibilities
besides,
but nothing seems to fit. There could well be some useful modules out there I am unaware of.
Thanks in advance for any guidance you can offer.
Neil
-- [ Drupal support list | http://lists.drupal.org/ ]
-- [ Drupal support list | http://lists.drupal.org/ ]
-- [ Drupal support list | http://lists.drupal.org/ ]
Michael Prasuhn mike@mikeyp.net http://mikeyp.net 949.200.7595 714.356.0168 cell 949.200.7670 fax
-- [ Drupal support list | http://lists.drupal.org/ ]
-- [ Drupal support list | http://list.drupal.org/ ]
End of support Digest, Vol 63, Issue 33