Tags eines Artikels ausgeben

Alles rund um Module und Plugins in CONTENIDO 4.10.
Antworten
snixzz
Beiträge: 18
Registriert: Mi 15. Jul 2020, 16:18
Wohnort: Schweiz
Kontaktdaten:

Tags eines Artikels ausgeben

Beitrag von snixzz » Mo 27. Jul 2020, 14:34

Liebe Contenido-Community,

Ich verwende für's Tagging zum ersten mal das Plugin "Content Allocation". Mit diesen Tags sollte später eine Übersichtsseite frontend-seitig gefiltert werden können.

Aktuell scheitere ich daran, den ausgewählten Tag eines Artikels auszugeben.

content-team_output.php

Code: Alles auswählen


// get team members
$sql = "SELECT idartlang FROM con_art_lang
INNER JOIN con_cat_art ON con_art_lang.idart = con_cat_art.idart
INNER JOIN con_cat_lang ON con_cat_art.idcat = con_cat_lang.idcat
WHERE con_cat_art.idcat = 19
AND con_art_lang.online = 1
ORDER BY con_art_lang.artsort DESC";

$db->query($sql); 

$teamMembers = [];

while ($db->nextRecord()) {
    $eIdartLang = $db->f('idartlang');
    $art = new cApiArticleLanguage($db->f('idartlang'));
    $entry = new stdClass();

    // get content
    $entry->name =  $art->getContent('text', 1);
    $entry->text =  $art->getContent('html', 2);
    $entry->tel =  $art->getContent('text', 2);
    $entry->email =  $art->getContent('text', 3);
    
    // wie erhalte ich die ausgewählten Tags?
    
    array_push($teamMembers, $entry);
}

Den Inhalt des Artikels kann ich auslesen. Wie kann ich auf die ausgewählten Tags innerhalb der Abfrage zugreifen?

Liebe Grüsse,
Marco

Oldperl
Beiträge: 4161
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Tags eines Artikels ausgeben

Beitrag von Oldperl » Mo 27. Jul 2020, 17:55

Servus,

Du kannst dafür die Methode loadAllocations($idartlang) der Klasse pApiContentAllocation des Plugins nutzen.
Hier der Link zum API-Eintrag :arrow: https://api.contenido.org/latest/class- ... ation.html

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

snixzz
Beiträge: 18
Registriert: Mi 15. Jul 2020, 16:18
Wohnort: Schweiz
Kontaktdaten:

Re: Tags eines Artikels ausgeben

Beitrag von snixzz » Di 28. Jul 2020, 08:26

Oldperl hat geschrieben:
Mo 27. Jul 2020, 17:55
Servus,

Du kannst dafür die Methode loadAllocations($idartlang) der Klasse pApiContentAllocation des Plugins nutzen.
Hier der Link zum API-Eintrag :arrow: https://api.contenido.org/latest/class- ... ation.html

Gruß aus Franken

Ortwin
Vielen Dank Ortwin für deine rasche Antwort.

Funktioniert einwandfrei.

Hier noch der Code für alle mit dem selben Problem:

Code: Alles auswählen


plugin_include('content_allocation', 'classes/class.content_allocation.php');
$tagHelper = new pApiContentAllocation();

// get team members
$sql = "SELECT idartlang FROM con_art_lang
INNER JOIN con_cat_art ON con_art_lang.idart = con_cat_art.idart
INNER JOIN con_cat_lang ON con_cat_art.idcat = con_cat_lang.idcat
WHERE con_cat_art.idcat = 19
AND con_art_lang.online = 1
ORDER BY con_art_lang.artsort DESC";

$db->query($sql); 

$teamMembers = [];

while ($db->nextRecord()) {
    $eIdartLang = $db->f('idartlang');
    $art = new cApiArticleLanguage($eIdartLang);
    $entry = new stdClass();

    // get content
    $entry->name =  $art->getContent('text', 1);
    $entry->text =  $art->getContent('html', 2);
    $entry->tel =  $art->getContent('text', 2);
    $entry->email =  $art->getContent('text', 3);
    
    // get tags
    $entry->tags = $tagHelper->loadAllocations($eIdartLang);

    array_push($teamMembers, $entry);
}

Liebe Grüsse aus der Schweiz,
Marco

Antworten