1

YouTube リンクを含む If ステートメントを作成しました。

umbraco には、ユーザーが YouTube ビデオの ID を挿入できるテキスト文字列ボックスがあります。

<div class="module m-video">
    <div class="regular">
        <div class="graphics video-container">
        <iframe width="100%" src="http://www.youtube.com/embed/<umbraco:Item field="youtubeId" runat="server" />?rel=0" frameborder="0" allowfullscreen></iframe>
    </div>
    </div>
</div>

ただし、ページが読み込まれると<umbraco:Item field="youtubeId" runat="server" />、ユーザーが入力したものの代わりにが表示されます。

回避策は、ユーザーがテキスト文字列ボックスに挿入したものを表示することです。

すべてカミソリで行う必要があります

4

2 に答える 2

4

かみそりスクリプト「YoutubeVideo.cshtml」とともに「YoutubeVideo」マクロを作成します。その cshtml コードは次のようになります。

@using umbraco.MacroEngines
@inherits umbraco.MacroEngines.DynamicNodeContext

<div class="module m-video">
    <div class="regular">
        <div class="graphics video-container">
            <iframe width="100%" src="http://www.youtube.com/embed/@Model.youtubeId?rel=0" frameborder="0" allowfullscreen></iframe>
        </div>
    </div>
</div>

次に、.master に次のようにそのマスクロスクリプトを含めることができます。

<umbraco:Macro ID="Macro1" Alias="YoutubeVideo" runat="server" />

MVC で Umbraco 6+ を使用している場合、このアプローチは異なる場合がありますが、それ以外の場合はこれでうまくいくはずです。

于 2013-04-03T15:33:55.447 に答える
0

umbraco テンプレート エディター内でこれを行っている場合は、src属性を示す二重引用符を単一引用符で置き換えることができ、umbraco 項目を変更する必要はありません。

<iframe width="100%" src='http://www.youtube.com/embed/<umbraco:Item field="youtubeId" runat="server" />?rel=0' frameborder="0" allowfullscreen></iframe>
于 2013-04-03T16:16:12.157 に答える