0

Ubercart 製品のテンプレートを変更したいです。より詳細には、各価格の前に「From...」というラベルを追加したいと考えています。しかし、それを行うためのテンプレートが見つかりません。

私もテーマ開発者モジュールを使用していますが、これは私が得たものです:

zen_uc_product_price < phptemplate_uc_product_price < theme_uc_product_price

しかし、そのようなファイルが見つかりません。

ありがとう

4

2 に答える 2

0

価格にプレフィックスまたはサフィックスを追加するには、/admin/store/settings/store/edit/format に移動します。

于 2010-07-10T14:49:13.040 に答える
0

node-product.tpl.php ファイルを作成することもできます。その場合、これが価格を取得する方法です。

 <?php
    $context = array(
      'type' => 'product',
      'revision' => 'altered', // using altered to get the bare price with no themeing
      'field' => 'sell_price',
      'subject' => array('node' => $node)
    );
    $dp = uc_price($node->sell_price, $context);
    $context['field'] = 'list_price';
    $lp = uc_price($node->list_price, $context);
    ?>


  <div class="price clear-block <?php if($dp != $lp) print 'discounted'; ?>">
    <?php print 'From: ' . $node->content['display_price']['#value']; ?>
    <?php //print $node->content['list_price']['#value']; ?>
  </div>

これは本来あるべきよりも少し多くなりました: Use: content['display_price']['#value']; ?>

割引価格をテーマにしたい場合を除きます:-)

私のプロジェクトの1つからコピーしただけです。

最後: おそらく theme_uc_product_price を使用できます: template.php に関数を追加します (uc_product.module からデフォルトの実装に貼り付けます)

function zen_uc_product_price($price, $context, $options = array()) {
  $output = '<div class="product-info '. implode(' ', (array)$context['class']) .'">';
  $output .= uc_price($price, $context, $options);
  $output .= '</div>';

  return $output;
}

「差出人」部分をいつ追加するかについて、$context 変数を調べます。

于 2010-07-11T09:38:46.287 に答える