0

Opencartを使用して、注目のモジュールの製品名のすぐ下に表示される変数を呼び出そうとしています。この注目のモジュールはフロントページに表示されます。

私はすでにデータベースに新しい列を追加しており、管理ページからデータベースにデータを追加することができました。PHPmyadminを使用して確認しました。

ただし、メインページに変数を表示することはできません。次のコードを含めるようにcatalog/view / theme / * / template / module / features.tplを編集しましたが、成功しませんでした。issetを削除すると、通知がスローされます:未定義の変数:product_descriptionin...エラー

次の行を追加しました

<div class="secondtitle"><?php echo isset($product_description['secondtitle']); ?></a></div>

<div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>

VQmod

<file name="catalog/view/theme/*/template/module/featured.tpl">
        <operation>
            <search position="after"><![CDATA[
            <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>
            ]]></search>
            <add><![CDATA[
            <div class="secondtitle"><?php echo isset($product_description['secondtitle']); ?></a></div>
            ]]></add>
        </operation>
    </file>

誰かがこれを解決する方法を教えてもらえますか?前もって感謝します。

4

2 に答える 2

0

より具体的にする必要があります。データベースのどこにフィールドを追加したかを推測するのは困難です。'product'テーブルにありますか?次に、前のコメントに基づいて、あなたは正しい方向に進んでいるように見えます。

model / catalog / product.php Edit関数getProduct()を編集する必要があります

次のように配列が設定されているのがわかります。

'product_id'       => $query->row['product_id'],
'name'             => $query->row['name'],
'description'      => $query->row['description'],
...

そこにカスタムフィールドを追加します。

'secondtitle'      => $query->row['secondtitle']

このカスタム変数を追加するDBの場所を教えてください。

[編集:コメント#1に応じて2012-12-13]

カスタムフィールドが「product_description」テーブルにある場合は、上記の例に従ってmodel / catalog / product.phpを編集します。コントローラーfeatured.phpを編集し、変数をproducts配列に追加します。探す

$this->data['products'][] = array(
    'product_id' => $product_info['product_id'],
    'thumb'      => $image, 
    ...

フィールドを追加する

     ...
    'secondtitle'=> $product_info['secondtitle']

次に、featured.tplを表示して、必要な場所にエコーします。

<?php echo $product['secondtitle']; ?>

これは動作します、私はちょうどそれをテストしました。あなたは私が前に言ったように正しいことをしていました、おそらくちょうど1つか2つのステップを逃しました。

于 2012-12-12T08:53:31.930 に答える
0

フィーチャーされたモジュールに2番目のタイトルを表示していたので、これを修正することができました。featured.phpで呼び出す必要があり、現在表示されている出来上がりです。皆さんの助けに感謝します。

于 2012-12-13T10:41:41.173 に答える