Ir al contenido
  1. Tags/

SharePoint 2010

2012


SharePoint 2010: Obtener la lista de plantillas de sitio disponibles

·209 palabras·1 min

Es posible que en algún momento necesitemos obtener un listado de las plantillas de sitio disponibles, como por ejemplo, a la hora de crear un sitio programáticamente. Para ello, SharePoint dispone dentro de la clase SPWeb del método GetAvailableWebTemplates que dispone de dos sobrecargas:

  • SPWeb.GetAvailableWebTemplates Method (UInt32): Nos permite obtener las plantillas de sitio de un lenguaje determinado por el parámetro “lcid” del tipo UInt32
  • SPWeb.GetAvailableWebTemplates Method (UInt32, Boolean): Además de las plantillas de sitio de un lenguaje determinado por el parámetro “lcid” del tipo UInt32, también nos permite obtener las plantillas en lenguaje neutral en caso de especificar un valor de true en su segundo parámetro “doIncludeCrossLanguage ”de tipo boolean, de lo contrario, sólo devolverá las plantillas del lenguaje especificado.

Su uso es el siguiente:

SharePoint 2010: Personalizar los campos de un Content Query Web Part (CQWP)

·678 palabras·4 mins

Escenario

En este caso voy a escenificar el artículo en otra experiencia personal. En cuestión, utilizando el Content Query Web Part para mostrar un resumen de noticias publicadas en un subsitio, me vi en la obligación de personalizar los campos de éste para poder mostrar la imagen “Imagen de la página (PublishingPageImage)” que contiene cada una de las noticias.

Noticia

Content Query Web Part

NOTA: Aunque estoy escenificando la situación en mi caso personal, la solución propuesta se aplica a cualquier otro caso en el que necesitemos algún campo más, aparte de los que ya están accesibles por defecto cuando usamos el CQWP.

SharePoint 2010: Usar Content Query Web Part para mostrar los elementos de una lista de enlaces

·393 palabras·2 mins

Escenario:

Supongamos que queremos mostrar los elementos de una lista de enlaces y, para ello queremos hacer uso de un Content Query Web Part (CQWP) por las posibilidades que éste nos da.

En la lista, por ejemplo, tendremos dos enlaces con los siguientes campos:

  • General de Software
    • Link: http://www.gsc.es
    • Descripción: General de Software
  • Turismo de Canarias
    • LInk: http://www.turismodecanarias.com
    • Descripción: Turismo de Canarias

Con esto, esperamos obtener el siguiente resultado:

SharePoint 2010: Formatear fecha en XSLT

·438 palabras·3 mins

Escenario:

Supongamos que queremos editamos la plantilla de estilos de elementos “ItemStyle.xsl” para poner nuestro estilo personalizado y mostrar la fecha  en la que se publicó el contenido, además del título con el enlace, el autor y la descripción.

Para ello no tendríamos más que añadir  una nueva plantilla xsl de la siguiente forma.

   1:        <xsl:template name="YourItemTemplateName" match="Row[@Style=YourItemTemplateName]" mode="itemstyle">
   2:          <xsl:variable name="SafeLinkUrl">
   3:              <xsl:call-template name="OuterTemplate.GetSafeLink">
   4:                  <xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
   5:              </xsl:call-template>
   6:          </xsl:variable>
   7:          <xsl:variable name="DisplayTitle">
   8:              <xsl:call-template name="OuterTemplate.GetTitle">
   9:                  <xsl:with-param name="Title" select="@Title"/>
  10:                  <xsl:with-param name="UrlColumnName" select="'LinkUrl'"/>
  11:              </xsl:call-template>
  12:          </xsl:variable>
  13:          <div class="divCustomItem">
  14:              <xsl:call-template name="OuterTemplate.CallPresenceStatusIconTemplate"/>
  15:              <div class="divTitle">
  16:                  <a href="{$SafeLinkUrl}" title="{@LinkToolTip}" class="linkTitle">
  17:                    <xsl:if test="$ItemsHaveStreams = 'True'">
  18:                      <xsl:attribute name="onclick">
  19:                        <xsl:value-of select="@OnClickForWebRendering"/>
  20:                      </xsl:attribute>
  21:                    </xsl:if>
  22:                    <xsl:if test="$ItemsHaveStreams != 'True' and @OpenInNewWindow = 'True'">
  23:                      <xsl:attribute name="onclick">
  24:                        <xsl:value-of disable-output-escaping="yes" select="$OnClickTargetAttribute"/>
  25:                      </xsl:attribute>
  26:                    </xsl:if>
  27:                    <xsl:value-of select="$DisplayTitle"/>
  28:                    
  29:                  </a>
  30:              </div>
  31:              <div class="divAdditionalData">
  32:                  por <xsl:value-of select="@Author"/> - <xsl:value-of select="@Created" />
  33:              </div>
  34:              <div class="divDescription">
  35:                  <xsl:value-of select="@Description" /> 
  36:              </div>
  37:          </div>
  38:      </xsl:template>

El resultado obtenido sería el siguiente:

SharePoint 2010: Ocultar elementos web o bloques de una página según permisos (SPSecurityTrimmedControl).

·279 palabras·2 mins

Escenario:

Supongamos que tenemos un sitio de SharePoint, en este caso me voy a centrar en un sitio de publicación y, que queremos ocultar la Ribbon a los usuarios anónimos, o lo que es lo mismo, mostrarla sólo a los usuarios con permisos para realizar ediciones (diseño, contenido,…).

Solución:

SharePoint nos provee de un control (muy bueno) para realizar esta tarea SPSecurityTrimmedControl, muy fácil de usar. Este control nos valdría para mostrar/ocultar elementos web o bloques de nuestras páginas a los usuarios según los permisos especificados, pero en este ejemplo, lo enfocamos a la Ribbon de SharePoint.

2011


SharePoint 2010: Cómo publicar código Javascript desde la interfaz web con un Content Editor Web Part

·324 palabras·2 mins

En este artículo quiero comentar cómo insertar código Javascript en nuestra página de un sitio de SharePoint desde la interfaz web de usuario, es decir, sin tener que editar el propio código de nuestra página.

Escenario:

Supongamos que creamos una página en nuestro sitio de SharePoint (del tipo que sea) y, el autor de contenidos encargado de esa página, quiere poder añadir, eliminar, modificar cierto código Javascript de una forma totalmente autónoma sin necesidad de tener que llamar al desarrollador para que haga las modificaciones en el código HTML de la página.

WebCast (Vídeo y Presentación): ¿Cómo se hizo www.suges.es con SharePoint 2010?

·82 palabras·1 min

Para los que estuvieron presentes en el WebCast, espero que os haya gustado mi primera aparición. Me queda mucho que mejorar ;o). Para los que no estuvieron y se perdieron mi “bautizo” a manos de mi maestro Jedi Alberto, decirles que espero poder presentar alguno más en el futuro y, sobre todo, que guste y sea útil.

Para todos, aquí les dejo el enlace desde el que podrán descargarse el vídeo del WebCast y la presentación que utilizamos Alberto y yo.

SharePoint 2010: Personalizar XsltListView WebPart

·289 palabras·2 mins

En estos días, hemos necesitado personalizar un XsltListView WebPart correspondiente a una lista. La solución la encontramos en un artículo en inglés y quería compartirlo traducido para aquellos a los que les cueste encontrar soluciones en inglés.

Pasos a seguir:

  1. Crear una nueva página de WebParts.
  2. Añadir WebPart de lista correspondiente a la que quieras personalizar.
  3. Salir de la edición.
  4. Editar WebPart para añadir las columnas específicas que desees ver como resultado.
  5. Abrir la página con SharePoint Designer 2010.
  6. Seleccionar el WebPart, con lo que en la Ribbon aparecerá el tab “Design” (Diseño).
  7. Seleccionar ‘Customize Xslt’ > ‘Customize Entire View’.
  8. Cambiar a la vista de código, con lo que se verá un nuevo nodo con el código Xslt añadido al WebPart.
  9. Buscar ‘mode="Item"’. Esta es la plantilla principal que gestiona la renderización de cada fila.
  10. En esta plantilla, buscar <xsl:for-each select="$Fields">. Este bucle se encarga de hacer las llamadas a las plantillas que necesarias para renderizar los campos de cada fila.
  11. Eliminar u Ocultar el bucle y añadir el HTML personalizado antes del mismo.
  12. Recordar verificar los cambios en el navegador.
  13. Al tiempo que nos hemos desecho del bucle Xslt For-each, también podemos eliminar las plantillas correspondientes a los campos, pero como puede resultar engorroso… no pasa nada por dejarlas.
  14. Una vez tengamos la visualización deseada, hay que copiar el código xslt en un nuevo fichero, por ejemplo “mylistview.xslt” y guardarla en un lugar adecuado.
  15. Ahora, podremos crear una nueva página y añadir el Web Part de lista tal y como hicimos en el paso 2.
  16. Editar el WebPart y en la y enlazar el fichero “mylistview.xslt” desde el XSL Link de la sección Miscellaneous.
  17. Guardar cambios y… ¡Listo! ya tenemos nuestro XsltListView WebPart personalizado.

Fuente Sandeep K Nahta