XSLT: parameter einfügen " Wert innerhalb einer html-Attribut
Wie kann ich das einfügen youtubeId parameter in dem folgenden code :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:YouTube="urn:YouTube"
xmlns:umbraco.library="urn:umbraco.library"
exclude-result-prefixes="msxml umbraco.library YouTube">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="videoId"/>
<xsl:template match="/">
<a href="{$videoId}">{$videoId}</a>
<object width="425" height="355">
<param name="movie" value="http://www.youtube.com/v/{$videoId}&hl=en"></param>
<param name="wmode" value="transparent"></param>
<embed src="http://www.youtube.com/v/{$videoId}&hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed>
</object>$videoId {$videoId} {$videoId}
<xsl:value-of select="/macro/videoId" />
</xsl:template>
</xsl:stylesheet>
<xsl:value-of select="/macro/videoId" />
tatsächlich Ausgänge die videoId aber alle anderen vorkommen nicht.
Erstelle ich ein makro in Umbraco CMS. Die parameter richtig übergeben in die XSLT (denn eigentlich gibt seine Wert). Wie kann ich diesen Wert einfügen in das src-Attribut?
Wie sieht dein input-Dokument Aussehen? Und in welcher Umgebung/code/Tools verwenden Sie zum aufrufen der XSLT? Ist die
Erstelle ich ein makro in Umbraco CMS. Die parameter richtig übergeben in die XSLT (weil <xsl:value-of select="/makro/Video" /> eigentlich gibt seine Wert). Ich möchte nur den Wert einfügen in das src-Attribut. Ich interessiere mich nicht, wie ich das tun. Abhilfe geschätzt.
Gute Frage (+1). Siehe meine Antwort für eine komplette Lösung. 🙂
Verwechseln Sie nicht die externen parameter mit Werten im Eingabe-Dokument. Ihre externe parameter kann zugegriffen werden mit
videoId
einem externen parameter-oder ist es die in der Eingabe-XML-Dokument?Erstelle ich ein makro in Umbraco CMS. Die parameter richtig übergeben in die XSLT (weil <xsl:value-of select="/makro/Video" /> eigentlich gibt seine Wert). Ich möchte nur den Wert einfügen in das src-Attribut. Ich interessiere mich nicht, wie ich das tun. Abhilfe geschätzt.
Gute Frage (+1). Siehe meine Antwort für eine komplette Lösung. 🙂
Verwechseln Sie nicht die externen parameter mit Werten im Eingabe-Dokument. Ihre externe parameter kann zugegriffen werden mit
$videoId
in der Erwägung, dass /macro/videoId
ist ein Pfad im input-Dokument. Diese beiden sind unterschiedlich!InformationsquelleAutor usr | 2010-05-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie
<xsl:value-of select="$videoId"/>
hier:Wann immer Sie eine AVT (
{$videoId}
) in einem Attribut-Wert dieser arbeiten muss mit Ausnahme derselect
Attribut.Im letzten Fall können Sie verwenden:
Wenn all dies spiegelt sich in Ihrer transformation, es funktioniert in allen Fällen:
Ihre Lösung hat mir nur klar gemacht, dass das videoId-parameter wird nicht gesetzt, die von umbraco. Ich geändert es so, und es funktioniert: <xsl:param name="videoId" select="/makro/Video"/>
InformationsquelleAutor Dimitre Novatchev
Möchten Sie möglicherweise nur ein Paket bekommen, das hilft auch.
http://our.umbraco.org ist genial und Pakete Hinzugefügt sind, alle Zeit.
Eine schnelle Suche zeigt ein paar Optionen:
http://our.umbraco.org/projects/tag/youtube#projectList
InformationsquelleAutor BeaverProj