cartthrob算術における低変数

こんにちは、これを得るためのposibilityはありますか?


{exp:cartthrob:arithmetic expression="{option_price_numeric} -({option_price_numeric} * {exp:low_variables:single var='early_bird_discount'}/100)"}

この例では、{exp:low_variables:single var = 'early_bird_discount'}は30です 私は "未定義の変数"エラーが出てきて、これが正しいことを知っていますが、私はこの正確な結果がどのように正確に得られるかはわかりません

Update:

Rob Sanchezの最初のオプションを使用すると、次のようなエラーが表示されます:式の未解析EEタグ、解析順序を確認します埋め込みテンプレートの複数のタグにネストされている可能性があります。


{exp:channel:entries channel="events" require_entry="yes" entry_id="{embed:entry_id}"}
  {exp:cartthrob:item_options entry_id="{entry_id}"}
    {categories show_group="24"}
      {options}
        {if option_value == "{embed:option}"}

          {if category_id =="160"}
            {if "{event_early_bird_date format='%U'}" >= "{current_time format='%U'}" && "{exp:low_variables:single var='siteA:early_bird_discount'}" >"{embed:another_discount}"}
{!-- ##### --}
              {exp:cartthrob:arithmetic expression="{option_price_numeric} -({option_price_numeric} * {early_bird_discount}/100)"}
{!-- ##### --}
            {if:else}
              {exp:cartthrob:arithmetic expression="{option_price_numeric} -({option_price_numeric} * {embed:another_discount}/100) + {embed:membrr_price}"}
            {/if}
          {if:elseif category_id =="161"}
            [....]
          {/if}
          [...]

        {/if}
      {/options}
    {/categories}
  {/exp:cartthrob:item_options}
{/exp:channel:entries}

更新2

私は考えている問題を理解しました。 early_bird_discountはsiteAの低い変数ですが、この変数をsiteBで使用しようとしていますので、{early_bird_discount}を使用するとここでは機能しません。 siteBのsiteAからグローバル変数を取得する可能性はありますか?

0

1 答え

あなたは2つのことを試すことができます:

1つは、この特定の低変数を早期解析として(変数設定で)設定することです。それで、あなたはこれを次のように呼び出すことができます:

{exp:cartthrob:arithmetic expression="{option_price_numeric} -({option_price_numeric} * {early_bird_discount}/100)"}

あるいは、算術タグにparse = "inward"を追加することもできます:

{exp:cartthrob:arithmetic parse="inward" expression="{option_price_numeric} -({option_price_numeric} * {exp:low_variables:single var='early_bird_discount'}/100)"}
2
追加された
うんそして私は最初のオプションをお勧めします。
追加された 著者 Bruce the Hoon,
テンプレートのデバッグを有効にして、cartthrob:arithmeticタグを参照して、実際の開始タグがどのように見えるかを確認することもできます。 LVが解析された場合、そのLVを原因とみなすことができます。
追加された 著者 Bruce the Hoon,
評価関数でcartthrob/libraries/Math.phpと var_dump($ expression); を開く必要があります。そうするなら、解析されていないタグが原因であるかどうかを知ることができます。
追加された 著者 Vagmi Mudumbai,
あなたの例では{early_bird_date}は表示されません。これがLVで、解析されていない場合は、早期に解析されるように設定されていません。
追加された 著者 Vagmi Mudumbai,
しかし、算術の例ではearly_bird_dateは表示されません。私が推測しなければならないのであれば、あなたの「高度な」条件文は責任を負うと言いたいと思います。そこにIfElseプラグインを試してみてください。
追加された 著者 Vagmi Mudumbai,
それでもエラーがあるので、説明を更新しました。私を助けてくれてありがとう!
追加された 著者 Matthew Steven Monkan,
{early_bird_date} を使用すると、これが原因です。 199.00 - (199.00 * M20o93H7pQ09L8X1t49cHY01Z5j4TT91fGfr/100)次の式が得られます。 {exp:low_variables:single var = 'siteA:early_bird_discount'}
追加された 著者 Matthew Steven Monkan,
誰が問題が何であるか考えていますか?素晴らしいことだ
追加された 著者 Matthew Steven Monkan,
{early_biry_date}はチャンネルの変数です
追加された 著者 Matthew Steven Monkan,
私は考えている問題を理解しました。 early_bird_discountはsiteAの低い変数ですが、この変数をsiteBで使用しようとしていますので、{early_bird_discount}を使用するとここでは機能しません。 siteBのsiteAからグローバル変数を取得する可能性はありますか?
追加された 著者 Matthew Steven Monkan,