web-dev-qa-db-fra.com

Identifiant d'élément Access Zoo dans un fichier de modèle d'élément

J'essaie dans l'application Yootheme Zoo d'activer l'élément de classement UNIQUEMENT lorsque l'élément de date a dépassé la date d'aujourd'hui, mais je ne peux pas trouver un moyen d'obtenir l'item_id. Si j'essaie, par exemple, 277 tout fonctionne, mais comment puis-je obtenir l'identifiant d'élément spécifique pour chaque page?

J'ai ajouté ces lignes au début de /media/Zoo/applications/page/elements/rating/tmpl|rating.php

$app = App::getInstance('Zoo');
$item = $app->table->item->get(277);
$element_id = "ffc8051a-fa18-4444-916c-bfbd74e2cb4e";
$element_value = $item->getElement($element_id)->getElementData()->get('value');
$eventdate = $element_value;
$now = date('Y-m-d H:i:s');

if (strtotime($eventdate) > $now) :
   echo "bla bla";
endif;
3
Alexandros

Ok l'a découvert:

$item_id = $this->_item->id;
3
Alexandros

J'ai trouvé un autre moyen facile si vos données étaient dans Array:

Dans teaser.php ou full.php, vous pouvez accéder à toutes les informations sur les éléments avec le code suivant:

<?php  
$status = $item->getElement('0e3527e4-032c-4d35-a630-7b0418eb9ecc')->getElementData()->get('option');  
print_r($status['0']);   
?>

Dans certains cas, l'option 'doit être remplacée par' valeur '. Vous devez accéder à votre base de données et voir la structure de l'élément comme ceci:

"0e3527e4-032c-4d35-a630-7b0418eb9ecc":  {
        "option":  {
            "0": "em-andamento"
        },
        "select": "1"
    },

Voir cette autre structure obeject ofr 'valeur' ​​cas:

"d9f72e0a-50d3-4be7-89f4-4d30b11aa5a1":  {
        "0":  {
            "value": "2015-11-18 02:00:00"
        }
    },
1
Max