Opencart provjera tagova ima ili nema?

Treba mi slijedeće:

Trebam provjeriti za proizvod da li dotični proizvod ima specifični tag.

Dakle recimo da li ima 24mjesecagarancija string unutar tag polja tog.

SQL bi bio:
SELECT *
FROM oc_product_description
WHERE tag LIKE “24mjesecagarancija”

to mi vraća rezultate.

No ima li neki “opencart” način provjere, već neke predodređene funckije?

Heh riješio pola.
Na strani prikaza proizvoda:

<?php if ($tags) { ?>
                <?php for ($i = 0; $i < count($tags); $i++) { ?>                        
                        <?php if ($tags[$i]['tag'] == 'tag1') {napravi uvjet 1;}?>
                        <?php if ($tags[$i]['tag'] == 'tag2') {napravi uvjet 2;}?>
                        <?php if ($tags[$i]['tag'] == 'tag3') {napravi uvjet 3;}?>
                <?php } ?>
    <?php } ?>  

Ok sad me samo zanima zašto na drugim mjestima ne radi.
Tipa na featured, stavim unutar loopa za proizvode, no ne prikazuje… Sam fulao nešto?

Ok to je riješeno, na product pageu. Tj. product.tpl

Problem je što
<?php if ($tags) { ?>
ne prikazuje ništa na stranic featured.tpl

Kao da tamo loop za proizvod nije uhvaćen. Ne razumijem.
Pomoć?

Pa sta dolazi na stranicu iz kontrolera?
Vidi koje varijable prosljedjuje kontroler koji je zaduzen za featured.tpl view file.

Heh da na tom tragu je problem.
Naime product.php
Ima ovaj kod za izvlačenje podataka:

$this->data['tags'] = array();
            
            if ($product_info['tag']) {        
                $tags = explode(',', $product_info['tag']);
                
                foreach ($tags as $tag) {
                    $this->data['tags'][] = array(
                        'tag'  => trim($tag),
                        'href' => $this->url->link('product/search', 'tag=' . trim($tag))
                    );
                }
            }

featured.php nema nigdje tag.

Ok kako se gubim totalno, što bih trebao dodati da izvučem to Van?
Tako da mogu napraviit istu provjeru kao na stranici products.tpl

<?php if ($tags) { ?>
    <?php for ($i = 0; $i < count($tags); $i++) { ?>                        
            <?php if ($tags[$i]['tag'] == 'tag1') {napravi uvjet 1;}?>
            <?php if ($tags[$i]['tag'] == 'tag2') {napravi uvjet 2;}?>
            <?php if ($tags[$i]['tag'] == 'tag3') {napravi uvjet 3;}?>
    <?php } ?>
<?php } ?>

Kako vidim u fajlu nisu ni provuceni tagovi. Probaj da ubacis taj snipet iz product.php-a negdje pred kraj foreach petlje module/featured.php fajla.

Nisam razumio, koji snipet da ubacim u model za featured.php?

Ovaj:

$this->data['tags'] = array();
if ($product_info['tag'])
{
    $tags = explode(',', $product_info['tag']);
    foreach ($tags as $tag)
    {
        $this->data['tags'][] = array(
            'tag'  => trim($tag),
            'href' => $this-&gt;url-&gt;link('product/search', 'tag=' . trim($tag))
        );
    }
}

, a poslije ovog dijela:

if ($this->config->get('config_review_status'))
{
    $rating = $product_info['rating'];
}
else
{
    $rating = false;
}

Plus u $data['products'][] treba dodati i novoformirani kljuc tags.
Mozda jos nekih izmjena treba u samom kontroleru, a definitivno i tpl view fajl mora da prati ono sto mu je isporuceno, nego to ti pricam ovako iz glave gledajuci fajl na github-u.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Profit Monkey