Ort als Terms und zusätzlich Location in einer View zur Ausgabe bringen
am 24.08.2015 - 15:04 Uhr in
Hallo liebe Auskenner,
ich bin in den letzten Tagen immer wieder an folgendem Problem gescheitert.
Ich habe zwei Benutzergruppen und jeweils einen Inhaltstypen:
- Benutzer:
- Benutzer Plus
Beide Inhaltstypen haben fast die gleichen Inhalte, jedoch einer mit erweitertem Umfang. Beide sollen eine Adresse (Location) beinhalten und Ortsnamen (Taxonomy), wo der Nutzer eintragen kann, welche Orte in der Nähe sind.
Das ganze soll dazu dienen, Beiträge nicht nur thematisch zu finden sondern auf Übersichtsseiten auch vom Ort her zum Beitrag zu kommen.
Die Adresse sind auch noch 2 unterschiedliche fields, da unterschiedlich scharfe Angaben gemacht werden sollen, je nach Berechtigungsstufe.
Nun meine Fragen.
Wie kann ich die Taxonomy-View dazu bewegen, dass sie mir nicht nur die Beiträge mit dem Term anzeigt, sondern auch die Beiträge, wo der Ort als City im Location-Address-Field existiert.
Oder wie kann ich den Wert Ort, beispielsweise "Chemnitz" als Term verwenden, um weitere Beiträge mit der Location "Chemnitz" nachzuziehen?
Hab ich einen Klemmer und könnte so etwas anders lösen?
Später sollen entsprechende Suchmasken mit Expose-Filters erzeugt werden und auch Maps, ggf. thematisch.
Ich bin für jeden Hinweis dankbar.
Vielen Dank im voraus.
Thomas S.
- Anmelden oder Registrieren um Kommentare zu schreiben
Hallo Thomas,hat es einen
am 25.08.2015 - 12:42 Uhr
Hallo Thomas,
hat es einen Grund warum Du z.B: Chemnitz als Ort(Location) und Taxonomie Term hast?
So hast Du den selben Ort als Inhalt und Kategorie, also an 2 Stellen.
Du könntest den Taxonomie Term Chemnitz dem Inhaltstypen Ort/City(Chemnitz) per Hand zuweisen.
Oder einfach nur im View im Inhaltstyp Ort chmnitz suchen.
Ich sehe jedenfalls keinen Grund 2x den gleichen Ort (Location Feld und Taxonomie Term ) Chemnitz in Deiner Instanz zu haben.
Gruss
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Hallo Robert, vielen Dank für
am 25.08.2015 - 19:49 Uhr
Hallo Robert,
vielen Dank für deine Antwort.
Nein, ich speichere nicht den gleichen Ort in Location und Taxonomy. Das wäre Quatsch.
Im Artikel soll eine Adresse hinterlegt werden (Locationfield) und per Taxo eine Reihe von Orte, die "In der Nähe" sind. Diese habe ich per Feed-Import inkl. Reisegebiete und Bundesländer eingepflegt.
Als Beispiel steht also Chemnitz (Location) und "Limbach-Oberfrohna, Burgstädt, Frankenberg, Flöha (Taxo)"
Jetzt ist der Nutzer auf diesem Beitrag mit Chemnitz (Locationfield) und klickt auf "Limbach-Oberfrohna" (Taxo) .... gelangt auf eine Übersichtsseite, wo alle Beiträge angezeigt werden, die die Taxonomiebegriffe "Limbach-Oberfrohna" enthalten und ... und nun kommts.... auch alle Beiträge gefunden werden sollen, die im Locationfield "Limbach-Oberfrohna"enthalten. Die beiden bekomme ich in der View nicht zusammen.
Field im Beitrag:
Titel
Body
Adresse (Location)
"In der Nähe?" (Taxo)
Grüße
Thomas
Thomas-S. schrieb Hallo
am 26.08.2015 - 04:55 Uhr
Hallo Robert,
Adresse (Location)
"In der Nähe?" (Taxo)
Grüße
Thomas
also in der nähe von kann man ja am besten mit einem distancefilter machen! dafür mußt du natürlich nur vorher deinen vorgegeben orten eine plz verpassen
C.A.W. Webdesign
Distancefilter ist gut für
am 27.08.2015 - 15:27 Uhr
Distancefilter ist gut für die Umkreissuche. Das ist wieder eine ganz andere Seite.
Jedoch gehts mir vordergründig darum, eine Taxonomy Übersichtseite zu erstellen, wo der Wert nicht nur der Taxonomy-Begriff "Chemnitz" ist, sondern auch alle Beiträge, die tatsächlich in Chemnitz (Location-Field) sind. Ich denke mal, dass eben der Nutzer, wenn er den "Tag" Chemnitz anklickt, auch erwartet, dass alle Beitrage auch aus Chemnitz mit aufgelistet werden. Deshalb dieser Knoten
Die dringenste Frage ist für mich, was muss ich bei der View zur Standard Taxonomy Term View einstellen, dass auch alle Beitäge aufgelistet werden, die "Chemnitz"im Location-Field enthalten.
Im Anhang hab ich das mal grafisch aufbereitet.
Als SQL-Abfrage wird es
am 29.08.2015 - 10:47 Uhr
Als SQL-Abfrage wird es vielleicht deutlicher, was ich meine:
$var1 = "Chemnitz"
select locationtable.ort, beitragtable.* from
location as locationtable, beitrag as beitragtable, taxonomy as taxonomytable where
(taxonomytable.name like "%$var1%" AND taxonomytable.tid = beitragtable.tid)
OR
( locationtable.ort like "%$var1%" AND locationtable.loc_id = beitragtable.loc_id )
ORDER by ....
Zuordnungstabellen hab ich jetzt mal der Einfachheit weggelassen.
Ich denke, genau dafür sind Views da.
VG Thomas
Hallo Thomas, am besten weist
am 30.08.2015 - 18:04 Uhr
Hallo Thomas,
am besten weist Du dem Ort der in der Location steht "Chemnitz" hat auch
den Taxonomie Term "Chemnitz" zu.
Den Ort aus der Location kannst Du dann im ViewTemplate als Term ausblenden.
Allerdings passt das alles für mich nicht so richtig zusammen.
Das eine ist eine Umkreissuche(Lat,Long) das andere Textsuche(Term).
Ich frage mich wie Du das mit Terms und Orten löst, da Ortsnamen ja nicht
unbedingt eindeutig sind(ggf. Kirchberg).
Für mich passen Taxonomie und Orte nicht zusammen.
Du kannst Deinen Anwendungsfall auch mit SOLR und Facetted Search lösen.
Gruss
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
du mußt dann das modul
am 31.08.2015 - 04:33 Uhr
du mußt dann das modul loctaion taxonomize einsetzen. alle orte (geht nicht bei locationfields, das mußt du als node location umsetzen) dann mit einer (1) taxonomie , hier also ort und dann gehts
C.A.W. Webdesign
oder aber
am 31.08.2015 - 07:56 Uhr
du machst den ganzen Schritt zu entity_refences.
Verzichte auf Taxonoy und lege gleich eine referenz zwischen den entities an.
Wer darf, kann dann eine view bekommen, die die entity referenziert, der andere User sieht nur den Hauptknoten.
Da Taxonomies wie entity references arbeiten, sparst du dir eine zusätzliche Refernz über die Taxonomy.
Leider wurde die "Taming_the_beast" verlagert, so dass ich sie hier nicht verlinken kann.
Aber eines der letzten Kapitel beschreibt solche views.
Grüße
Ronald
Hier ist dann auch noch der
am 31.08.2015 - 09:08 Uhr
Hier ist dann auch noch der Link, den Ronald gesucht hat: Taming the Beast
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
caw schrieb du mußt dann das
am 31.08.2015 - 11:21 Uhr
du mußt dann das modul loctaion taxonomize einsetzen. alle orte (geht nicht bei locationfields, das mußt du als node location umsetzen) dann mit einer (1) taxonomie , hier also ort und dann gehts
Das heißt, ich bilde die locationfields, die ja eine Postaladdress bilden, einfach nach und dann gehts?
In meiner Term Tabelle habe ich neben den Ort auch die PLZ, Bundesland und Reisegebiet. Wäre da der Name per Autocomplete umzusetzen bzw. in Abhängigkeit dessen dann auch die PLZ?
VG aus Chemnitz
ronald schrieb du machst den
am 31.08.2015 - 11:28 Uhr
du machst den ganzen Schritt zu entity_refences.
Verzichte auf Taxonoy und lege gleich eine referenz zwischen den entities an.
Wer darf, kann dann eine view bekommen, die die entity referenziert, der andere User sieht nur den Hauptknoten.
Da Taxonomies wie entity references arbeiten, sparst du dir eine zusätzliche Refernz über die Taxonomy.
Leider wurde die "Taming_the_beast" verlagert, so dass ich sie hier nicht verlinken kann.
Aber eines der letzten Kapitel beschreibt solche views.
Vielen Dank für deinen Vorschlag. Ich frag nochmal nach.
Ich würde statt Referenz auf Taxonomiebegriffe ein Feld vom Typ entity references erstellen und dort auf "Location" referenzieren.
Ich hab aber gerade am Anfang nicht alle Orte in der DB. Würde dieses Feld dann auch in Location (Feld: Ort) schreiben, wenn der Ort nicht existiert? Ähnlich wie bei Taxonomy autocomplete?
Vielen Dank im voraus.
Thomas
ist auch machbar
am 31.08.2015 - 11:58 Uhr
schau mal entity_inline_form an
Grüße
Ronald
da geht nur land, bundesland,
am 31.08.2015 - 13:15 Uhr
da geht nur land, bundesland, ort (und strasse)
C.A.W. Webdesign
Von vorn: Map-View mit Location + Term und Termview
am 23.09.2015 - 22:16 Uhr
Ich muss nochmal von vorn anfangen.
Ich habe 2 Benutzer.
1. Benutzer
2. Benutzer-Plus
Jeder darf einen bestimmen Beitragstyp erstellen. Plus darf quasi einen Beitrag mit größerem Umfang erstellen, so auch bei der Adresse.
Benutzer (1.) darf nur bis zum Detail Ort den Beitrag lokalisieren während der Benutzer-Plus (2.) die Adresse komplett mit Straße und Hausnummer versehen kann.
Hier die erste Hürde. Da ich nicht wie bei anderen Feldern per Fieldpermissions auf die einzelnen Felder der Adresse genau einstellen kann, wer welche Felder BEFÜLLEN darf, muss ich JE 1 (unterschiedliches) Feld nehmen. Was dann für das Geocoder Field gild. Sprich hier hab ich auch 2 Felder (je ein in Beitrag und eins in Beitrag-Plus). Dieses sollen später in einer Map angezeigt werden.
Jetzt zum 2 Problem:
Beide Benutzer (1. und 2.) sollen selbst benennen können, welche Orte in der Nähe sind. Warum? Damit ich diese später in einer Liste (Übersichtseite als View wie Taxonomy-View) ausgeben lassen kann. Aber in dieser View wird eben nicht der Betrag angezeigt, der die Adresse in diesen Ort hat. DAS SOLL ber das HERZSTÜCK werden. Besucher können sich sodann mit diesen Übersichten einzelne Orte und Regionen anzeigen und per Bokkmarks zusammenstellen.
Wie schon gesagt, vielleicht liege ich ja mit dem Ansatz ganz falsch jedoch scheint es mir plausibel und für den, der den Beitrag erstellt auch einfach und nachvollziehbar.
WIr kann mir helfen?
Zitat: Hier die erste Hürde.
am 23.09.2015 - 23:13 Uhr
Hier die erste Hürde. Da ich nicht wie bei anderen Feldern per Fieldpermissions auf die einzelnen Felder der Adresse genau einstellen kann, wer welche Felder BEFÜLLEN darf, muss ich JE 1 (unterschiedliches) Feld nehmen. Was dann für das Geocoder Field gild. Sprich hier hab ich auch 2 Felder (je ein in Beitrag und eins in Beitrag-Plus). Dieses sollen später in einer Map angezeigt werden.
Mit einem Minimodul (hook_form_alter) und hide() bzw. unset() kannst Du je nach Rolle das Straßenfield in der Add-Form ausblenden! Somit kannst Du das selbe Geocoder-Feld in Content-Type 1 und 2 verwenden. Rolle 1 kann dann halt keine Straßeninformation hinterlegen da dieses Feld nicht angezeigt wird. (Zumindestens geht das beim Location-Modul - bei Geocoder wird das sicherlich ähnlich sein).
Jetzt zum 2 Problem:
Beide Benutzer (1. und 2.) sollen selbst benennen können, welche Orte in der Nähe sind. Warum? Damit ich diese später in einer Liste (Übersichtseite als View wie Taxonomy-View) ausgeben lassen kann. Aber in dieser View wird eben nicht der Betrag angezeigt, der die Adresse in diesen Ort hat. DAS SOLL ber das HERZSTÜCK werden. Besucher können sich sodann mit diesen Übersichten einzelne Orte und Regionen anzeigen und per Bokkmarks zusammenstellen.
Das verstehe ich leider nicht!
Drupal rockt!!!
Kann mir ein GMAP Distancefilter Ortsnamen zurückliefern?
am 25.09.2015 - 11:36 Uhr
Das verstehe ich leider nicht!
Mir ist wichtig, dass Besucher nicht nur das Ergebnis einer Umkreissuche geliefert bekommen, sondern auch schon mal einige Ortsnamen auf der Seite gelesen haben, die ganz in der Nähe sind. Ansonsten lassen sich Besucher zwar da und da hin führen, wissen aber zum gar nicht, wo das war. Ähnlich wie beim Navi. Man fährt eine Strecke mit Navi, kennt den Weg trotzdem nicht und muss immer wieder ein Navi nehmen.
Zudem spielt SEO eine große Rolle.
Also mir ist wichtig, dass dem Besucher die umliegenden Orte namentlich benannt werden. Daher diese umständliche "Krücke".
Kann mir ein Distancefilter die Namen von Ortschaften zurückgeben? Wenn ja, würde ich auf das manuelle zuweisen von Ortsnamen in der Nähe verzichten können.
Und, wenn ja, wie bekomme ich schöne SEO Pfade hin?
VG an alle, die bisher so geduldig geantwortet haben. Danke.