バージョン選択

フォーラム

メニュー

オンライン状況

61 人のユーザが現在オンラインです。 (51 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 61
もっと...

サイト内検索

質問 > フロント機能 > twig で文字列が含まれるかどうかの判別

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
takeo
投稿日時: 2017/7/15 14:33
対応状況: 解決済
半人前
登録日: 2015/1/12
居住地:
投稿: 18
twig で文字列が含まれるかどうかの判別
EC-CUBE 3.0.14 を使用しております。

detail.twig を、外部パスからの画像でも商品画像として表示出来るように修正を使用としています。

<!--★画像★-->
<div id="item_photo_area" class="col-sm-6">
<div id="detail_image_box__slides" class="slides">
{% if Product.ProductImage|length > 0 %}
{% for ProductImage in Product.ProductImage %}
{% if 'http://' in ProductImage %}
<div id="detail_image_box__item--{{ loop.index }}"><img src="{{ ProductImage|no_image_product }}"/></div>
{% else %}
<div id="detail_image_box__item--{{ loop.index }}"><img src="{{ app.config.image_save_urlpath }}/{{ ProductImage|no_image_product }}"/></div>
{% endif %}

のようにし、
ProductImage に http:// という文字列が含まれる場合(商品画像が外部パス名の場合)、
<img src="{{ ProductImage|no_image_product }}"/>
とし、
ProductImage に http:// が含まれない場合(商品画像が通常のローカル保存されたファイル名の場合)、
<img src="{{ app.config.image_save_urlpath }}/{{ ProductImage|no_image_product }}"/>
にする、という簡単な処理なのですが、

ProductImage に http:// という文字列が含まれる場合
を判定する、
{% if 'http://' in ProductImage %}
が間違っているのか、上手くいかず困っております。
※上記のソースでは、 ProductImage に http:// が有ったとしても FALSE となっているようで上手く判定してくれません。※

なぜなのか?どのようにすると正しく判定してくれるのか、
ご教授頂きたく、よろしくお願い申し上げます。
nyorai
投稿日時: 2017/7/18 9:58
対応状況: −−−
仙人
登録日: 2015/8/21
居住地:
投稿: 302
Re: twig で文字列が含まれるかどうかの判別
{% if 'http://' in ProductImage.file_name %}

だとどうでしょうか。
takeo
投稿日時: 2017/7/18 15:48
対応状況: −−−
半人前
登録日: 2015/1/12
居住地:
投稿: 18
Re: twig で文字列が含まれるかどうかの判別
ありがとうございます!
教えていただいた通りで上手くいきました。
nyorai
投稿日時: 2017/7/18 16:07
対応状況: −−−
仙人
登録日: 2015/8/21
居住地:
投稿: 302
Re: twig で文字列が含まれるかどうかの判別
よかったですー

{{ ProductImage }} のときは、実際には__toString()が動いていて、文字列に変換されているのですが、

https://github.com/EC-CUBE/ec-cube/blob/3.0.15/src/Eccube/Entity/ProductImage.php#L18

{% if ... %} で評価するときはそのままオブジェクトとして評価されるみたいですね。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,704名です
総投稿数は109,948件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1285
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.