Artikel um Feld erweitern + Anzeige FE

Liebes Forum,

ich hänge jetzt schon was länger an einem Problem:
Ich habe “Artikel” um ein Feld erweitert. Im Backend wird mir das Feld auch angezeigt, ich kann es befüllen und auch der Inhalt wird in der Datenbank gespeichert.

Das habe ich folgendermaßen realisiert:
[ul]
[li]Datenbank anpassen: Tabelle oxarticles um Spalte erweitert
[/li][li]Modul erstellt, welches Template für Backend (Block) enthält, sowie Übersetzungen
[/li][/ul]
schaffe ich es nun, dass ich den Eintrag im Frontend angezeigt bekomme?

Anbei meine Dateien:
metadata.php

<?php

$sMetadataVersion = '1.1';
$aModule = array(
    'id'           => 'sauels_extend_article',
    'title'        => '',
    'description'  => 'Fuegt dem Artikel weitere Eigenschaften hinzu',
    'thumbnail'    => 'logo.png',
    'version'      => '1.0',
    'author'       => '',
    'url'          => '',
    'email'        => '',
    'extend'       => array(
    ),
    'blocks'       => array(
        array(
            'template'  => 'article_main.tpl',
            'block'     => 'admin_article_main_form',
            'file'      => 'blocks/sa_extend_article.tpl'
        ),
        array(
            'template'  =>  'page/details/inc/productmain.tpl',
            'block'     =>  'details_productmain_shortdesc',
            'file'      =>  '/blocks/sa_extend_article_front.tpl'
        ),

    )
);

/blocks/sa_extend_article.tpl

[{$smarty.block.parent}]
<tr>
    <td class="edittext" width="120">
        [{oxmultilang ident="SA_TESTFELD"}]
    </td>
    <td class="edittext">
        <input class="edittext" name="editval[oxarticles__satestfeld]" value='[{$edit->oxarticles__satestfeld->value}]' [{$readonly}]>
    </td>
</tr>

sowie überstzungsdateien.

Ich habe nun gedacht, ich könne einfach auch mittels BLOCK ein tpl erstellen, damit es auch dem Frontend (Artikeldetails) angezeigt wird, und habe dazu folgedes erstellt:

[{$smarty.block.parent}]
[{if $oDetailsProduct->oxarticles__satestfeld->value}]
    <p>[{$oDetailsProduct->oxarticles__satestfeld->value}]</p>
[{/if}]

das funktioniert allerdings NICHT.

Vielen Dank für die Hilfe.

Grüße
Dennis

1 Like

Das direkte einfügen in zb. productmain.tpl geht.
Das einfügen mittels Block leider nicht :frowning:

Probier’s mal so:

... 'blocks'       => array(
        array(
            'template'  => 'article_main.tpl',
            'block'     => 'admin_article_main_form',
            'file'      => 'sa_extend_article.tpl'
        ),
        array(
            'template'  =>  'page/details/inc/productmain.tpl',
            'block'     =>  'details_productmain_shortdesc',
            'file'      =>  'sa_extend_article_front.tpl'
        )...

:wink:

Hi,

leider das gleiche Verhalten.
Beim Debuggen sehe ich den Block garnicht.

Wenn ich das Feld direkt in ein Template schreibe, dann erscheint es auch.

Ich bedanke mich für die Mühe.

Grüße
Dennis

Welche Shopversion?

In welchem Ordner liegen denn die Blocks (mit Pfad)?

Hi,

Die Shopversion ist 4.9.0
die Blocks liegen beide in

modules/sa/sa_extend_article/blocks

der Backend-Block wird übernommen,
der Frontend-Block nicht.

Ziel soll es sein im Frontend ein weiteres Feld in der Artikel-Detailansicht zu erstellen.

Vielen Dank!

Dennis

Die Blocks gehören in modulordner[B]/out/blocks[/B]. Nur dann werden sie auch gefunden.

Hi,

ok - dann schiebe ich die dort mal rein.
Und dann eine absolute Pfadangabe also /out/blocks?
Kommt der Backend-Block auch dorthin?

Vielen dank für die Hilfe!!!

Nein, immer so wie in #3 angegeben.

Ja, auch die BE-Blocks dort hinein.

Superklasse, das hat mir sehr geholfen!!!
Danke Dir!

Gerne doch :wink: