您的位置:首页> 日志> 动易系统 正文

       记得以前做过一个“取得第N级父节点ID”的标签来使用,在栏目节点变子站中非常实用!但是呢!!还是会遇到一些问题!比如:取得第N级父节点名称,取得第N级父节点链接路径,取得第N级父节点打开方式呀!等等,需要套用其他标签来使用,甚是麻烦,因此这次改进一下做成” PE取得第N级父栏目信息配置“,希望更使用,代码更简单!其实就是加多一个displayType属性用来判断到底输出什么类型的内容!参考”取得栏目信息配置“标签即可!没什么可说的!

<?xml version="1.0" encoding="utf-8"?>
<root>
  <LabelType>改进类</LabelType>
  <LabelIntro>
  </LabelIntro>
  <OutType>sin</OutType>
  <LabelDataType>sql_sysquery</LabelDataType>
  <EnabelAjax>False</EnabelAjax>
  <attributes>
    <name>nodeId</name>
    <datatype>string</datatype>
    <default></default>
    <intro>当前节点ID</intro>
  </attributes>
  <attributes>
    <name>depth</name>
    <datatype>string</datatype>
    <default>0</default>
    <intro>节点深度</intro>
  </attributes>
  <attributes>
    <name>displayType</name>
    <datatype>supersql</datatype>
    <default>1</default>
    <intro>输出类型{节点ID:1,节点名称:2, 节点名称带连接:3,节点连接路径:4,META关键词:5,META描述语:6,内容说明:7,打开方式:8,内容打开方式:9,内容排序方式:10,内容分页大小:11,热门最小点击数:12,}</intro>
  </attributes>
  <LabelSqlString>SELECT NodeName,parentID, NodeID,Depth  FROM PE_Nodes WHERE NodeID=@nodeId</LabelSqlString>
  <LabelTemplate><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:pe="labelproc" exclude-result-prefixes="pe">
<xsl:output method="html" />
<xsl:param name="nodeId"/>
<xsl:param name="depth"/>
<xsl:param name="displayType" />
<xsl:template match="/NewDataSet">
<xsl:choose>
<xsl:when test="Table/Depth= $depth ">
  <xsl:choose>
    <xsl:when test="$displayType = 1">
      <xsl:value-of select="$nodeId"/>
    </xsl:when>
    <xsl:when test="$displayType = 2">
      <xsl:value-of select="pe:GetNodeInfo($nodeId,'NodeName')"/>
    </xsl:when>
    <xsl:when test="$displayType = 3">
      <a>
      <xsl:attribute name="href"><xsl:value-of select="pe:GetNodePath('false',$nodeId)"/></xsl:attribute>
      <xsl:attribute name="target">
        <xsl:choose>
        <xsl:when test="pe:GetNodeInfo($nodeId,'OpenType') = 0">_self</xsl:when>
        <xsl:otherwise>_blank</xsl:otherwise>
        </xsl:choose>
      </xsl:attribute>
      <xsl:value-of select="pe:GetNodeInfo($nodeId,'NodeName')"/>
      </a>
    </xsl:when>
    <xsl:when test="$displayType = 4"><xsl:value-of select="pe:GetNodePath('false',$nodeId)"/></xsl:when>
    <xsl:when test="$displayType = 5">
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'MetaKeywords')"/>
    </xsl:when>
    <xsl:when test="$displayType = 6">
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'MetaDescription')"/>
    </xsl:when>
    <xsl:when test="$displayType = 7">
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'Description')"/>
    </xsl:when>
    <xsl:when test="$displayType = 8">
      <xsl:choose>
      <xsl:when test="pe:GetNodeInfo($nodeId,'OpenType') = 0">_self</xsl:when>
      <xsl:otherwise>_blank</xsl:otherwise>
      </xsl:choose>
    </xsl:when>
    <xsl:when test="$displayType = 9">
    <xsl:choose>
    <xsl:when test="pe:GetNodeInfo($nodeId,'ItemOpenType') = 0">_self</xsl:when>
    <xsl:otherwise>_blank</xsl:otherwise>
    </xsl:choose>
    </xsl:when>
    <xsl:when test="$displayType = 10">
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'ItemListOrderType')"/>
    </xsl:when>
    <xsl:when test="$displayType = 9">
    <xsl:choose>
    <xsl:when test="pe:GetNodeInfo($nodeId,'ItemPageSize') = 0">10</xsl:when>
    <xsl:otherwise>
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'ItemPageSize')"/>
    </xsl:otherwise>
    </xsl:choose>
    </xsl:when>
    <xsl:when test="$displayType = 11">
    <xsl:value-of select="pe:GetNodeInfo($nodeId,'HitsOfHot')"/>
    </xsl:when>
    <xsl:otherwise>
    </xsl:otherwise>
  </xsl:choose>
</xsl:when>
<xsl:otherwise>
{PE.Label id="PE取得第N级父栏目信息配置" nodeId="<xsl:value-of select="Table/parentID"/>" depth="<xsl:value-of select="$depth"/>" displayType="<xsl:value-of select="$displayType"/>" /}
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:transform>]]></LabelTemplate>
</root>

 

标签下载

 

调用方式:

{PE.Label id="PE取得第N级父栏目信息配置" nodeId="@ RequestInt_Id" depth="0" displayType="2"/}