Legge til egendefinerte områdeegenskaper

Du kan legge til egendefinerte egenskaper på områder i form av navneverdipar. Disse egenskapene lagres med området og gjøres tilgjengelig for skript og komponenter på områdesidene. Disse kan være nyttige når du skal parameterisere eller tilpasse området uten å måtte endre underliggende skript og komponentkode.

Egendefinerte egenskaper kan for eksempel brukes til å endre bakgrunnsfargen på sider, begrense søkeresultater, fylle ut lister og kontrollere sideavhengige variabler generelt.

Du legger til egendefinerte områdeegenskaper ved hjelp av ruten Innstillinger når du redigerer et område.

  1. Åpne et område for redigering.

  2. Klikk på ikonet Innstillinger på sidelinjen, og klikk deretter på Områdeegenskaper Områdeegenskaper.

  3. Klikk på Legg til.
  4. Angi et navn og en verdi for den egendefinerte områdeegenskapen. Du kan legge til opptil 50 egendefinerte områdeegenskaper. Navnefeltet har en begrensning på 200 tegn, og verdifeltet har en begrensning på 2 000 tegn.

    Egendefinerte områdeegenskaper

  5. Klikk på X ved siden av et navneverdipar for å slette det.
  6. Når du er ferdig med å legge til eller slette de egendefinerte områdeegenskapene, klikker du på Lagre.

Merknad:

Endringer slås ikke sammen med eksisterende egendefinerte områdeegenskaper. Når du lagrer endringer av egendefinerte områdeegenskaper, overskrives eventuelle eksisterende egendefinerte områdeegenskaper i basisområdet.

Når egendefinerte områdeegenskaper er definert, kan de brukes i skript overalt i området og områdekomponentene, for eksempel i bunnteksten eller i feltet Ekstra spørrestreng i komponenter som støtter SCSMacro-utvidelse, for eksempel innholdslister, eller via symboler i tittel- og avsnittskomponenter.

Dette skriptet fungerer med SCSRenderAPI under kjøring og utforming. Verdiene for egendefinerte områdeegenskaper er også tilgjengelige for oppsett- og komponentkode i malkompilatoren via SCSCompileAPI. Dette API-et har en ny funksjon som tilsvarer SCSRenderAPI, getCustomSiteProperty, og gjør det mulig for oppsett- og komponentkode å lese verdien for en egendefinert områdeegenskap.

Anta for eksempel at du vil definere et egendefinert deloppsett som bruker SCSRenderAPI til å kalle opp og hente egendefinerte områdeegenskaper for hodet, kontaktpersonnavnet og e-postadressen for kontaktpersonen. Det følgende skriptet bygger en HTML-streng ved hjelp av egendefinerte områdeegenskaper som blir tilføyd i DOM-en.

define([
    'jquery'
], function( $ ){
    'use strict';

    function SectionLayout( params ) {
    }
    SectionLayout.prototype = {
        render: function( parentObj ) {
            var html = '';

            try {
                html += '<div>';
                    html += '<h1>' + SCSRenderAPI.getCustomSiteProperty('SiteGreeting') + '</h1>;
                    html += '<div>For more information, contact <a href="mailto:' + SCSRenderAPI.getCustomSiteProperty('ContactEmail')
                        '"> + SCSRenderAPI.getCustomSiteProperty('ContactName') + '</a></div>';
                html += '</div>';
                $(parentObj).append( html );
            } catch( e ) {
                console.error( e );
            }
        },
    };

Egendefinerte egenskaper bevares når du oppretter en mal fra et område med tilføyde egendefinerte områdeegenskaper og når du oppretter et område fra en mal som har egendefinerte områdeegenskaper.