0

Joomla で VirtueMart 2.0.10 を使用しています。2.5.6 で、私の問題は、各製品の自動生成された PDF ドキュメントにカスタム フィールドが含まれていないことです。私は PHP の専門家ではありませんが、ファイル/components/com_virtuemart/views/productdetails/tmpl/default_pdf.phpの 145 行目から始まる次の行が関係していると思います。

    <?php // Product custom_fields TODO relation to Childs
if (!empty($this->product->customfields)) { ?>
    <div class="product-fields">
    <?php
    $custom_title = null ;
    foreach ($this->product->customfields as $field){
        ?><div style="display:inline-block;" class="product-field product-field-type-<?php echo $field->field_type ?>">
        <?php if ($field->custom_title != $custom_title) { ?>
            <span class="product-fields-title" ><strong><?php echo JText::_($field->custom_title); ?></strong></span>
            <?php //echo JHTML::tooltip($field->custom_tip, $field->custom_title, 'tooltip.png');
        } ?>
        <span class="product-field-display"><?php echo $field->display ?></span>
        <span class="product-field-desc"><?php echo jText::_($field->custom_field_desc) ?></span>
        </div>
        <?php
        $custom_title = $field->custom_title;
    } ?>
    </div>
    <?php
} // Product custom_fields END ?>

上記のifステートメントの後にテキストをエコーするelseステートメントを追加してテストし、実行しました。どうやらカスタムフィールドはありません...しかし、実際には...

私はこの問題を経験している人を他に見つけていませんが、これは奇妙だと思いますが、何かを台無しにしたとは思いません。/components/com_virtuemart/views/productdetails/tmpl/default.phpファイルにいくつか変更を加えました。

4

1 に答える 1

0

質問に入力したすべてのコードを削除し、ファイル/components/com_virtuemart/views/productdetails/tmpl/default.phpから次のコードに置き換えました。

<?php
$custom_title = null;
foreach ($this->product->customfieldsSorted['normal'] as $field) { // I set the position to normal
if ( $field->is_hidden )
continue;
if ($field->display) {
?>
<?php if ($field->custom_title != $custom_title) { ?>
<b><?php echo JText::_($field->custom_title); ?></b><br />

<?php
if ($field->custom_tip)
echo JHTML::tooltip($field->custom_tip, JText::_($field->custom_title), 'tooltip.png');
}
?>
<?php echo $field->display ?><br />
<?php echo jText::_($field->custom_field_desc) ?><br />
<?php
$custom_title = $field->custom_title;
}
}
?>

私は専門家ではありませんが、これは私にとってはうまくいきました。PDF にカスタム フィールドが含まれるようになりました。

コードのコメントでわかるように、位置を'normal'に変更しました。他の位置は'ontop ''onbot' のようです。しかし、その設定は変更しないので、そのままにしておきます。

編集:私はそのセグメントに他のHTMLコードを追加したことを忘れていまし<br /><b>. コードがファイルdefault.phpにあるのとまったく同じではないことを明確にするために、大きなことは何もありません

于 2012-10-17T12:06:47.300 に答える