Support » Allgemeine Fragen » Alternative Seiten Anzeigen

  • DarkClown

    (@darkclown)


    Ich habe folgende Situation: Möchte eine Seite innerhalb von WP nur „bedingt“ anzeigen. Konkret: Ich biete Jobs an (Subseite „Job“) – wenn aber keine Jobs verfügbar sind, soll stattdessen über den gleichen Menüeintrag eine Seite „Keine Jobs verfügbar“ angezeigt werden. Alternativ würde es auch ausreichen mit einem klick sowohl die Seite „Job“ als auch den Menüeintrag auf privat zu stellen. Ich kann zwar dike Seite privat stellen, muss aber zusätzlich noch den Eintrag aus dem Menü entfernen … Gibt es da elegantere Lösungen?

    Danke schon mal
    Timo

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)
  • Moderator Bego Mario Garde

    (@pixolin)

    Du könntest für Jobangebote eine eigene Inhaltart anlegen, einen so genannten Custom Post Type. Die Einrichtung ist mit einem Plugin wie z.B. Custom Post Type UI vergleichsweise einfach und du kannst in einem eigenen Menü eine Übersichtsseite einfügen, die alle veröffentlichten Jobs aufführt – oder eben mitteilt, dass es aktuell keine veröffentlichten Jobs gibt. Und das war dann ja, was du erreichen wolltest?

    Wenn du ein wenig programmieren kannst, könntest du die Jobangebote auch noch mit Metadaten ergänzen, z.B. wenn Jobs befristet sind und du dafür bei der Eingabe nur ein Kontrollkästchen anklicken möchtest, das im Frontend „befristete Anstellung“ oder ähnliches ausgibt. Auch die Erstellung von Eingabeformularen mit vordefinierten Feldern wären möglich. Das geht prima mit Advanced Custom Fields.

    Hmm, Dank Dir erst mal für Deinen Tip. Wollte es eigentlich über eine eigene Seite realisiere und nicht über Posts. Ich schau es mir mal an.

    Thx, Timo

    Moderator Bego Mario Garde

    (@pixolin)

    Die Beiträge werden dann ja auf einer eigenen Seite zusammengefasst.

    Oder habe ich dich falsch verstanden?

    Stimmt, dort befindet sich aber auch ein Online Bewerbungsformular für die Jobs.

    Moderator Bego Mario Garde

    (@pixolin)

    Du wirst mir nachsehen, dass ich das nicht ganz nachvollziehen kann: Was ist „dort“?

    Wenn du selber programmieren kannst, lässt sich auch recht einfach ein Template erstellen, dass ein Bewerbungsformular auf einer Übersichtsseite der angebotenen Jobs unterbringt. Nur ist der Austausch bisher eben recht theoretisch, da ich nicht nachvollziehen kann, welches Theme du verwendest und wie die Seite aussehen soll (von einem Bewerbungsformular war ja bisher keine Rede).

    Da du aber mit meinem Vorschlag unzufrieden bist: wie hattest du dir das denn sonst vorgestellt? Aus Programm-Sicht läuft das auf ein if-Statement hinaus: Sind Jobangebote vorhanden, zeige die Bewerbungen, sonst zeige einen Hinweis, das es keine Angebote gibt. Wenn mehrere Bewerbungen aufgelistet werden sollen, müssen sie unabhängig voneinander eingegeben worden sein, sind also zwangsläufig Beiträge (Posts).

    „Dort“ … ist die Seite mit den Job-Angeboten … 🙂
    http://mezebar.pizzazza.de/jobs (solltest Du einen Blick werfen wollen) – Theme Sydney Pro von Athemes.

    Und ja, wenn ich sowas wie das von Dir erwähnte „If“-Statement irgendwie realisieren könnte wäre das meine Wunschlösung (ggf. per PlugIn?)

    Mehrere Jobangebote wären bei mir einfach ein duplizierter Content Block mit anderem Inhalt. Vermutlich ist Dein Post Ansatz sogar der elegantere – liegt mir aber irgendwie nicht so Nahe.

    Danke Dir auf jeden Fall für Deine Mühe und ausführliche Antworten!

    Moderator Bego Mario Garde

    (@pixolin)

    Mehrere Jobangebote wären bei mir einfach ein duplizierter Content Block mit anderem Inhalt.

    Du könntest dafür sogar einen eigenen Block mir vordefinierten Feldern erzeugen (das Plugin Block Lab ist da sehr hilfreich, erfordert aber auch ein wenig Programmierung), aber dann fehlt genau das, wonach du ursprünglich gefragt hattest: die Automatisierung, einen Hinweis „Keine Jobs verfügbar“ auszugeben, wenn kein Block eingefügt wurde.

    Viel Erfolg, wofür auch immer du dich nun entscheidest.

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)