1. Dashboard
  2. Articles
  3. Forum
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • More Options
  1. webEdition Forum
  2. Forum
  3. Deutschsprachiges Support Forum
  4. webEdition Templates erstellen (we:tags)

we:listview type object

  • s.rudolph
  • February 26, 2025 at 2:52 PM
1st Official Post
  • s.rudolph
    Beginner
    Posts
    13
    • February 26, 2025 at 2:52 PM
    • #1

    Hallo Zusammen,

    ich sitze gerade an einem kleinen Problemchen. Undzwar möchte ich ein Feld aus einem geparkten Objekt auslesen bzw. dieses bearbeiten/verändern.

    Über we:listview type="object" und <we:object> kriege ich keine Werte aus den Feldern zurück.
    Gibt es hier eine Möglichkeit oder ein bestpractice wie ich an die Daten komme?

    In älteren webEdition versionsn haben wir das teilweise über $DB_WE abgefragt, aber da wurden kürzlich in webEdition methoden privatisiert.

    Grüße aus Köln,
    Sebastian

    e-nitio mediasign

    Web: https://www.e-nitio.com

    Mail: info@e-nitio.com

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • February 26, 2025 at 4:32 PM
    • Official Post
    • #2

    Hallo Sebastian,

    folgendes sollte bei geparkten Objekten möglich sein:

    Das getElementS bezieht sich auf einen String, Int wäre getElementI

    PHP
    <?php
    /**
    * ab webEdition 9.0.0
    */// Neues Objekt für ein webEdition-Objekt erzeugen und mit der Dokument-ID initialisieren
    $object = new we_contents_objectFile();
    $object->initByID(5);
    $text = $object->getElementS('Titel');
    echo $text;
    ?>

    Ändern kannst du die Inhalte mit setElementS etc. darf dann nur kein we_publish sein, sondern we_save.

    https://documentation.webedition.org/entwickler-und-agenturen/tipps-und-rezepte/php/php-change-object-data.php

    Wieso sind die Objekte überhaupt geparkt? Gibts da einen Grund mit geparkten Objekten zu arbeiten?

    https://www.wg-werbeagentur.de

    • Next Official Post
  • Revilo
    Beginner
    Reactions Received
    1
    Posts
    23
    • March 10, 2025 at 10:56 AM
    • #3

    Hallo zusammen, ich steige hier mal ein.

    In unserem Fall können Nutzer Objekte einreichen, die dann geprüft und veröffentlicht werden sollen. Der Nutzer soll aber immer die Möglichkeit haben seine eingereichten Objekte nachträglich zu bearbeiten - auch wenn sie geparkt sind.

    Eine Möglichkeit eine Listview über geparkte Objekte zu machen gibt es nicht oder?

    Der Nutzer (Kunde) wird im Objekt verknüpft. Ich könnte anhand der UserID also alle verknüpften Objekte auslesen und bearbeitbar machen, sofern diese nicht geparkt wären.

    Hat jemand eine Idee?


    Wie s.rudolph schon angemerkt hat, sind die $DB_WE Methoden um z.B. einen Select auszuführen privatisiert worden.


    Viele Grüße
    Oliver

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • March 10, 2025 at 11:27 AM
    • #4

    Moin Oliver,
    LV über geparkte geht nicht. Aber eventuell kannst du mit dem "durchsuchbar" arbeiten?

    LG
    Finn

    https://www.wg-werbeagentur.de

  • Revilo
    Beginner
    Reactions Received
    1
    Posts
    23
    • March 10, 2025 at 11:54 AM
    • #5

    Hey Finn,

    die "durchsuchbar"-Flag hat leider auch keinen Effekt bei geparkten Objekten.

    Viele Grüße
    Oliver

  • Revilo
    Beginner
    Reactions Received
    1
    Posts
    23
    • March 10, 2025 at 11:57 AM
    • #6

    Achso, du meintest wahrscheinlich, dass wir die Objekte veröffentlichen aber durchsuchbar = false ist und nach der Prüfung die Flag auf true gestellt wird.

    Das wäre in der Tat eine Möglichkeit.


    Viele Grüße
    Oliver

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • March 10, 2025 at 12:02 PM
    • Official Post
    • #7
    Quote from Revilo

    Achso, du meintest wahrscheinlich, dass wir die Objekte veröffentlichen aber durchsuchbar = false ist und nach der Prüfung die Flag auf true gestellt wird.

    Das wäre in der Tat eine Möglichkeit.


    Viele Grüße
    Oliver

    Ja genau, so könnt ihr diese ja in Listviews ausblenden mit visible="false", was ja einem Parken bei Objekten nahekommt. Vorausgesetzt, alle Templates berücksichtigen den Status entsprechend.

    https://www.wg-werbeagentur.de

    • Previous Official Post
  • Revilo
    Beginner
    Reactions Received
    1
    Posts
    23
    • March 10, 2025 at 12:13 PM
    • #8

    Gute Idee, aber diese Möglichkeit können wir leider nicht nutzen, weil unsere Objekte durch SEO-URLs aufrufbar sind wie ich gerade sehe.

    Deshalb benötigen wir den Park-Zustand.

  • WBTMagnum
    Student
    Reactions Received
    14
    Posts
    163
    • March 10, 2025 at 12:21 PM
    • #9

    Hallo,

    Zusätzlich zur Durchsuchbarkeit kannst du auch mit unterschiedlichen Verzeichnissen (z.B. /objects/draft, /objects/public) und dem Workspace arbeiten um die Objekte im Backend besser nach Zustand zu trennen.

    Alternativ könnt ihr noch direkt mit SQL arbeiten um an die geparkten Objekte heranzukommen. Entweder via PHP oder über <we:listview type="sql"/>. Nachteil: Damit bist du nicht updatesicher.

    Last but not least: Du kannst natürlich einen Feature Request für die Berücksichtigung geparkter Objekte in der Listview in der Bugbase einbringen.

    Liebe Grüße,
    Sascha

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • March 10, 2025 at 12:22 PM
    • #10
    Quote from Revilo

    Gute Idee, aber diese Möglichkeit können wir leider nicht nutzen, weil unsere Objekte durch SEO-URLs aufrufbar sind wie ich gerade sehe.

    Deshalb benötigen wir den Park-Zustand.

    Das sollte trotzdem funktionieren, ihr könnt ja basierend auf dem Status einen 404 Header setzen und ein stellvertretendes Template ausgeben.

    https://www.wg-werbeagentur.de

  • Revilo
    Beginner
    Reactions Received
    1
    Posts
    23
    • March 10, 2025 at 2:07 PM
    • #11
    Quote from WBTMagnum

    Hallo,

    Zusätzlich zur Durchsuchbarkeit kannst du auch mit unterschiedlichen Verzeichnissen (z.B. /objects/draft, /objects/public) und dem Workspace arbeiten um die Objekte im Backend besser nach Zustand zu trennen.

    Alternativ könnt ihr noch direkt mit SQL arbeiten um an die geparkten Objekte heranzukommen. Entweder via PHP oder über <we:listview type="sql"/>. Nachteil: Damit bist du nicht updatesicher.

    Last but not least: Du kannst natürlich einen Feature Request für die Berücksichtigung geparkter Objekte in der Listview in der Bugbase einbringen.

    Liebe Grüße,
    Sascha

    Verrückt, die listview type="sql" kannte ich nicht. Leider ist dort aktuell ein Bug drin, daher fällt diese Möglichkeit auch weg. Via PHP kann ich aber nicht mit $DB_WE arbeiten, sondern muss mir das ganze selbst zusammenbauen, oder?

    Den Feature-Request reiche ich gleich mal ein.


    Quote from Finn

    Das sollte trotzdem funktionieren, ihr könnt ja basierend auf dem Status einen 404 Header setzen und ein stellvertretendes Template ausgeben.

    Das wird dann wohl der Workaround sein, den wir einsetzen müssen..


    Danke euch!

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login

Donations

200.00 EUR

Donate now

Users Viewing This Thread

  • 1 Guest
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™