Skip Navigation

[Resolved] A-Z Filter

This thread is resolved. Here is a description of the problem and solution.

Problem:
Ich will ein Alphabetischer Filter bauen der buchstaben von A-Z
anzeigt, welche wenn interagiert (geklickt) resultate laden wo der titel mit dem gewählten Buchstabe anfangen

Solution:
Es braucht 2 Views dazu und eine Taxonomie (Alphabet, mit terms von A-Z).
Die erste View listet alle Terms, und produziert ein Link (a href) welcher die gegenwärtige URL um ein suchparamter ergänzt, welchen wir später in der Zweiten post view brauchen werden um die Posts nach Taxonomie "Alphabet" zu filtern.
Die zweite View wird ausserhalb des loops aber innerhalb des layouts der ersten View eingebaut, und die erste View wird dann in eine page eingebaut.
Wenn man nun auf den Buchstabe (der a href link der Taxonomie view) clickt, lädt die seite neu mit dem URL Such paramater ergänzt, welches dann die resultate nach buchstabe (taxonomie) filtert.

This support ticket is created 5 years, 7 months ago. There's a good chance that you are reading advice that it now obsolete.

This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.

Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.

Sun Mon Tue Wed Thu Fri Sat
- - 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00
- - - - - - -

Supporter timezone: Asia/Ho_Chi_Minh (GMT+07:00)

This topic contains 49 replies, has 2 voices.

Last updated by marcelB-4 5 years, 7 months ago.

Assisted by: Beda.

Author
Posts
#1239432

Eine Frage haben wir noch nicht beantwortet:

Ich habe nun in der Suche über 100 Spielerinnen und Spieler.
Könnte man da ev. ein Code einbauen, der das Ganze wie ein A-Z macht?

Also ein Index erstellen?

A B C D .... und je nach Buchstabe werden dann die Spieler angezeigt.

#1240311

Welche Suche meinst Du?
Diese hier ist ja schon Alphabetisch geordnet aber nach namen direkt, nicht erst nach buchstabe und dann als name
hidden link

Eine suche wie Du meinst (A-Z zeigen dann deren Spieler die mit A-Z anfangen) ist nicht möglich in Toolset "nativen" fetures.
Es ist aber mit einem trick möglich:

- erstelle eine Taxonomie (so wie Kategorien) und neen jeden Term einen Buchstaben (also eine taxonomy "alphabet" wo die einzelnen buschtaben die terms sind)
- dann markiere jeden post mit dem richtigen buchtsaben (also Andrea ist A, Bernard B und Urs U, etc)
- nun erstelle eine View die die posts nach term zeigt mit einem filter nach dem term

Nun kannst Du im front end auf A clicken und nur spieler die mit A beginnen werden erscheinen.

Die frage ist, ob Du nicht einfacher die "ordnen nach" settings der View brauchen willst, wo Du von anfang an nach post title (alphabetisch) ordnest, und somit alle spieler in alphabetischer ordnung siehst?

#1240323

Ja, im Moment sind die schon nach A-Z geordnet.
Aber da kommen täglich neue Spieler hinzu. Deshalb dachte ich (wegen der Übersicht), ein A - Z würde das etwas komfortabler machen.

#1240336

Dann müsstest Du so vorgehen wie hier erklärt:
https://toolset.com/forums/topic/a-z/#post-1240311

Erstmals müssten alle posts ein Term (A-Z) der Taxonomie erhalten.
Dann müssten die views gemacht werden und in der seite eingesetzt werden.

Taxonomien können in Toolset > Taxonomy eingerichtet werden, dies ist die DOC:
https://toolset.com/documentation/user-guides/create-custom-taxonomies/#how-to-create

Bitte lass mich wissen ob Du damit hilfe brauchst.

#1240340

Ich versuche das einmal

#1240342

Wo oder wie erstelle ich Therms?
Ich habe jetzt eine Taxonomie erstellt (A-Z)
Aber da kann ich nicht mehr machen.

#1240343

Also taxonomien müssen ja einem post typ zugewiesen werden - so wie kategorien oder tags.
Das währe in Deinem falle "spieler".
Dann, in Spieler > Taxonomy Name > Neu kannst Du einzelne Terms ( so wie einzelne kategorien) erstellen.

#1240360

Sehe unterhalb von Spieler A-Z
Da erstelle ich jetzt für jeden Buchstaben ein Eintrag.
Dann weise ich jeden Spieler den Buchstaben zu. (hab ich schon mit einem gemacht)

#1240410

Gut. Nun muss man jeden Spieler zum korrekten Term anfügen.
Also Spieler Ursic-Knecht Iwan muss mit "I" vermerkt werden (falls Du nach nachname gehen willst) oder mit "U" Falls es nach vornanem geht.

Wenn das fertig ist musst Du eine View machen.
Die View muss "Taxonomien" und zwar die A-Z abfragen.
In der View, machst Du erstmal nichts ausser ein link in dem Loop einbauen der den Term Slug in der URL (link) weitergibt:

<a href="site.com/page-mit-view/?url_param_we_use=[wpv-post-taxonomy type="die_a-z_taxonomy" format="slug"]">[wpv-post-taxonomy type="die_a-z_taxonomy" format="name"]</a>

Du machst nun eine ZWEITE View wo die posts nach Taxonomie abgefragt werden.
Dies abfrage muss genau auf den URL parameter hören den wir oben setzten:
"url_param_we_use"

Dann, komplettiere den Loop mit daten über den Spieler die Du zeigen willst, und inseriere auch die erste View, gerade ausserhalb des Loop von der zweiten View.
Nun, setze diese zweite View in eine seite ein (page-mit-view) und wenn Du ein buchstabe klickst, wird die seite neu geladen mit dem richtigen A-Z filter gesetzt.
Die resultate werden nun demenstrprechend aktualiesert

#1240492

Das übersteigt mein Können.

#1240755

Nein, nur keine angst - schritt für schritt wird das gehen.

Fange mal damit an, die erste View zu erstellen:

1. In Toolset > Views (Ansichten) erstelle eine neue View (Ansicht)
2. Wähle "Komplett benutzerdefinierter Anzeigemodus" und gib der View ein name
3. Dann wähle "Taxonomie" im Inhaltsauswahl, dann wähle die Taxonomie aus die Du erstellt hast (A-Z)
4. Nun baue ein HREF link in the Loop ein so wie "[wpv-post-taxonomy type="die_a-z_taxonomy" format="name"]"
Hierbei musst du "site.com/page-mit-view/" anpassem nähmlich die site.com mit deiner Seiten URL (es gibt ein ShortCode dafür) ersetzen und "page-mit-view" mit der slug der seite wo Du die View später einsetzen willst.

Du kannst auch "url_param_we_use" abändern, damit es deine suchparameter besser darstellt, zum beispiel "anfangsbuchstabe"

Wenn das getan ist können wir dann mit dem zweiten schritt fortfahren. Bitte sende mir den link zu der View damit ich's davor kurz kontrollieren kann 🙂

#1240760

Hui...
Also:
View 1:
hidden link

View 2:
hidden link

#1240783

Gut, Ich habe die zweite view editiert, bitte sehe hier:
hidden link

Dann habe ich diese View in der ersten eingesetzt (im loop)
hidden link

Nun kannst Du eine seite mit slug spielersuche erstellen und die erste View (hidden link) da einbauen:

Dann, sollte man im front end eine liste (A-Z) sehen und wenn geclickt, sollte man nur die spieler mit der gewählten buchstabe als anfang sehen.

#1240784

Da funktioniert noch etwas nicht:
hidden link

Und kann ich A - Z von links nach rechts anzeigen lassen?

#1240859

1. Um die buchstaben von links nach rechts anzuzeigen müsstest Du custom HTML/CSS anwenden, in dieser View Loop.
hidden link

2. Ich habe auch den inhalt in der zweiten view noch angepasst (hidden link) um den titel des posts (also der spieler name) anzuzeigen.
Wenn Du nun zbsp nach "N" suchst, dann siehst Du die 3 posts (spieler) die mit N gekennt wurden:
hidden link
(siehe posts hidden link)