Tovább a tartalomhoz

Értékelések a felhasználói profiloldalon

Egy felhasználó írt értékeléseinek, valamint a bejegyzéseire kapott értékelések átlagának és számának kiírása a JetEngine Profile Builder egyedi felhasználói oldalán.

Két gyakori feladat a felhasználói profiloldalon: kiírni az összes értékelést, amelyet a felhasználó írt, és kiírni a felhasználó bejegyzéseire kapott értékelések átlagát, számát és listáját. Mindkettő SQL-lekérdezéssel megy, a jet_reviews adatbázistáblából.

  • A JetEngine, az egyedi felhasználói oldallal (Profile Builder).
  • A JetReviews.
  • Az első feladathoz Elementor (ingyenes változat is elég) vagy a blokkszerkesztő.

A felhasználó által írt értékelések

Szekció neve “A felhasználó által írt értékelések”

1. Az egyedi felhasználói oldal beállítása

Szekció neve “1. Az egyedi felhasználói oldal beállítása”
  1. Hozz létre egy statikus oldalt az Oldalak menüben.
  2. Nyisd meg a JetEngine → Profile Builder oldalt, kapcsold be a Single user page kapcsolót, és a hasonló nevű mezőben válaszd ki az új oldalt.
  3. Készíts egy sablont, amely majd az értékeléseket mutatja, és rendeld hozzá a User Page rész egyik eleméhez.
  4. Kattints a Save gombra.
  1. Nyisd meg a JetEngine → Lekérdezéskészítő oldalt, és add hozzá az új lekérdezést.
  2. A Lekérdezés típusa legyen SQL/AI lekérdezés, a From table mezőben pedig jet_reviews.
  3. A Where feltételnél hasonlítsd össze az értékelés szerzőjét a lekérdezett felhasználóval: Column author, Compare Equal, Value a Queried user ID makró.
  4. Mentsd a lekérdezést (Add/Update Query).
  1. Nyisd meg a JetEngine → Listázások/komponensek oldalt, és kattints az Új elem hozzáadása gombra.
  2. A Listing source értéke legyen Query Builder, és válaszd ki az előbb létrehozott SQL-lekérdezést.
  3. Kattints a Create Listing Item gombra.
  4. A Dynamic Field widgettel írd ki az értékelés adatait: az Object Field listában minden elérhető mező megtalálható. Annyi widgetet tegyél a sablonra, amennyi mező kell.
  5. Mentsd a sablont (Publish/Update).
  1. Nyisd meg az Elementorban a profiloldalhoz rendelt sablont.
  2. Tedd rá a Listing Grid widgetet, válaszd ki a létrehozott listasablont, és mentsd.
  3. Nézd meg a profiloldalt: a felhasználó összes értékelése megjelenik.

A felhasználó bejegyzéseire kapott értékelések

Szekció neve “A felhasználó bejegyzéseire kapott értékelések”

Itt azokat az értékeléseket gyűjtöd össze, amelyeket mások a felhasználó bejegyzéseihez írtak, és kiírod az átlagukat, a darabszámukat és a listájukat.

  1. A JetEngine → Lekérdezéskészítő oldalon add hozzá az új lekérdezést, a Lekérdezés típusa legyen SQL/AI lekérdezés.
  2. Az Egyedi SQL-lekérdezés (Custom SQL Query) lapon a From table értéke jet_reviews, és kapcsold be a Use Join kapcsolót.
  3. Kapcsold hozzá a posts táblát. A Join Type legyen Inner Join; a When current table column értéke ID, az Is equal to other table column értéke post_id.
  4. Add meg a Where feltételeket:
    • Column posts.post_author, Compare Equal, Value Queried user ID, Type Numeric. Így a lekérdezett felhasználó bejegyzései jönnek.
    • Column posts.post_type, Compare Equal, Value a kívánt bejegyzéstípus slugja.
    • Egy harmadik feltétellel kizárhatod azokat az értékeléseket, amelyeket a szerző a saját bejegyzéséhez írt. Ha ezeket is be akarod számítani, hagyd ki.
  5. Kattints az Add Query gombra.
  1. Nyisd meg Elementorban a Profile Builderben beállított profilsablont.
  2. Tegyél rá egy Heading widgetet, és kattints a dinamikus címke ikonra.
  3. Válaszd a Dynamic Function címkét. A Function értéke legyen SQL Query Results, a Query Column a rating, az Additional Function pedig Average.
  4. Az Advanced lapon a Before és After mezővel szöveget írhatsz a szám elé és mögé.
  5. Egy második Heading widgetbe a darabszám kerül: válaszd a Query Results Count makrót és a létrehozott lekérdezést; a Returned Count maradjon az alapértéken. Itt is használhatod a Before és After mezőt.
  6. Mentsd a sablont, és nézd meg a profiloldalt: az átlag és az értékelések száma megjelenik.
  1. A JetEngine → Listázások/komponensek oldalon add hozzá az új elemet. A Listing source értéke legyen Query Builder, válaszd ki az SQL-lekérdezést, és adj nevet a sablonnak.
  2. A szerkesztőben Dynamic Field widgetekkel írd ki a lekérdezés mezőit. Az adatot a Query objektum alatti mezőkből kell választani, különben nem jelenik meg semmi.
  3. A szerzőhöz egy Dynamic Field widgetben az author forrást használd. Ez a felhasználó azonosítóját tárolja; megjelenítendő névvé alakításához olyan visszahívás kell, mint a „Get user data by ID”. Ez alapból nincs a Callback listában, ezért külön kell hozzáadni a webhelyhez egy kis kóddal (a JetEngine visszahívásokat egyéni kóddal lehet bővíteni).
  4. A dátumhoz egy másik Dynamic Field widgetben használd a Format date visszahívást a kívánt dátumformával.
  5. Mentsd a sablont, majd a profiloldal sablonjába tedd be a Listing Grid widgetet ezzel a listasablonnal.

Az eredmény: a felhasználó profiloldalán megjelenik a bejegyzéseire kapott értékelések átlaga, száma és listája.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások