Loading
ćˆ©ç”šä»Łç ćąžćŒș Salesforce
ç›źćœ•
é€‰æ‹©ç­›é€‰ć™š

          æČĄæœ‰ç»“æžœ
          æČĄæœ‰ç»“æžœ
          ä»„äž‹æ˜Żäž€äș›æœçŽąæç€ș

          æŁ€æŸ„ć…łé”źć­—çš„æ‹Œć†™ă€‚
          äœżç”šæ›Žæ™źéçš„æœçŽąèŻă€‚
          é€‰æ‹©æ›Žć°‘çš„ç­›é€‰ć™šïŒŒćč¶æ‰©ć€§æœçŽąèŒƒć›Žă€‚

          æœçŽąæ‰€æœ‰ Salesforce 枟抩
          ć…šć±€ć˜é‡

          ć…šć±€ć˜é‡

          ćœ“æ‚šäœżç”šè‡Ș漚ä艿Œ‰é’źć’Œé“ŸæŽ„等组件、è‡Ș漚äč‰ć­—æź”äž­çš„ć…ŹćŒă€éȘŒèŻè§„ćˆ™ă€æ”ă€èż›çš‹äž­çš„ć…ŹćŒä»„ćŠ Visualforce éĄ”éąæ—¶ïŒŒæ‚šćŻä»„äœżç”šç‰čæźŠćˆćč¶ć­—æź”æ„ćŒ•ç”š Salesforce äž­çš„æ•°æźă€‚

          所需的 Edition

          æŻäž€äžȘć…šć±€ć˜é‡çš„ćŻç”šæ€§ć–ć†łäșŽç›žć…łćŠŸèƒœçš„ç»éȘŒć’Œç‰ˆæœŹèŠæ±‚ă€‚
          所需甚户权限
          戛ć»șă€çŒ–èŸ‘ć’Œćˆ é™€ Custom S-Controlă€ć…ŹćŒæˆ– Visualforce éĄ”éąïŒš è‡Ș漚äč‰ćș”甚皋ćș
          èŠçŒ–èŸ‘æ”ć’Œèż›çš‹ïŒš çźĄç†æ”
          ć€‡æłš
          ć€‡æłš Web 选éĄčćĄä»…æ”ŻæŒ $User、$Organization 撌 $Api 搈ćč¶ć­—æź”。

          ćœšé€‰æ‹©èŠæ·»ćŠ ćˆ°è‡Ș漚äč‰ç»„ä»¶çš„ćˆćč¶ć­—æź”ç±»ćž‹æ—¶ïŒŒäœżç”šèż™äș›ć…šć±€ć˜é‡ïŒš

          $Action

          æèż°ïŒš ćœ“ćŒ•ç”šæ ‡ć‡† Salesforce æ“äœœïŒˆćŠ‚æ˜Ÿç€șâ€œćźąæˆ·â€é€‰éĄčćĄäž»éĄ”ă€ćˆ›ć»șćźąæˆ·ă€çŒ–èŸ‘ćźąæˆ·ć’Œćˆ é™€ćźąæˆ·ïŒ‰æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äœżç”šLINKTO撌URLFORć‡œæ•°äž­çš„æ“äœœćˆćč¶ć­—æź”ćŒ•ç”šé€‰ćźšæ“äœœă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$Action。
          • 仄 $Action.object.action æ ŒćŒæ’ć…„ćˆćč¶ć­—æź”ïŒŒćŠ‚ $Action.Account.New。
          S-Control ç€ș䟋

          æ­€ S-Control ćŒ•ç”š $Action.Account.New 搈ćč¶ć­—æź”侭甹äșŽćˆ›ć»șćźąæˆ·çš„æ ‡ć‡†æ“äœœă€‚

          <html>
              <body>
                  {!LINKTO(
                      "Create a New Account", 
                      $Action.Account.New, 
                      $ObjectType.Account
                   )}
              </body>
          </html>
          Visualforce ç€ș䟋
          <apex:outputLink value="{!URLFOR($Action.Account.New)}">
              Create New Account
          </apex:outputLink>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…ćŻç”šäșŽè‡Ș漚äč‰çš„æŒ‰é’źć’Œé“ŸæŽ„、S-Control 撌 Visualforce éĄ”éąă€‚

          所有ćŻčè±Ąæ”ŻæŒćŸșæœŹæ“äœœïŒŒćŠ‚æ–°ć»șă€ć€ćˆ¶ă€æŸ„çœ‹ă€çŒ–èŸ‘ă€ćˆ—èĄšć’Œćˆ é™€ă€‚$Action ć…šć±€ć˜é‡èż˜ćŒ•ç”šèźžć€šæ ‡ć‡†ćŻčè±ĄäžŠćŻç”šçš„æ“äœœă€‚èŽ”ç»„ç»‡äž­ćŻç”šçš„ć€ŒćŻèƒœäŒšæ čæźæ‚šćŻç”šçš„ćŠŸèƒœè€ŒäžćŒă€‚

          $Api

          æèż°ïŒš ćŒ•ç”š API URL æ—¶äœżç”šć…šć±€ćˆćč¶ć­—æź”类枋。  
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$Api。
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ïŒš
            • $Api.Enterprise_Server_URL__xxx:Enterprise WSDL SOAP 端ç‚čïŒŒć…¶äž­ xxx ä»ŁèĄš API ç‰ˆæœŹă€‚äŸ‹ćŠ‚ïŒŒ$Api.Enterprise_Server_URL_140 æ˜Ż API ç‰ˆæœŹ 14.0 的搈ćč¶ć­—æź”ć€Œă€‚
            • $Api.Partner_Server_URL__xxxPartner WSDL SOAP 端ç‚čïŒŒć…¶äž­ xxx ä»ŁèĄš API ç‰ˆæœŹă€‚
            • $Api.Session_ID:äŒšèŻ ID。
           
          S-Control ç€ș䟋

          æ­€è‡Ș漚äč‰ć…ŹćŒć­—æź”调甚äș†æ›żæą SIC ä»Łç çš„æœćŠĄă€‚ç”šæ‚šæœćŠĄć™šçš„ćç§°ä»Łæ›ż myserver。

          HYPERLINK("https://www.myserver.com/mypage.jsp" & 
          "?Username="       & $User.Username & 
          "&crmSessionId="   & GETSESSIONID() & 
          "&crmServerUrl="   &  $Api.Partner_Server_URL_90  &
          "&crmObjectId="    & Id &
          "&crmFieldUpdate=sicCode",
          "Update SIC Code")
           
          Visualforce ć’Œæ”ç€ș䟋

          äœżç”šç‚čèĄšç€șæł•èż”ć›žäŒšèŻ ID。

          {!$Api.Session_ID}
           
          æŠ€ć·§æç€ș

          æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽć…ŹćŒć­—æź”、S-Control、è‡Ș漚ä艿Œ‰é’źć’Œé“ŸæŽ„、Visualforce éĄ”éąă€æ”ć’Œèż›çš‹ć…ŹćŒă€‚

          $Api.Session_ID 撌 GETSESSIONID() èż”ć›žç›žćŒçš„ć€ŒïŒŒćłćœ“ć‰äžŠäž‹æ–‡äž­ćœ“ć‰äŒšèŻçš„æ ‡èŻ†çŹŠă€‚æ­€äžŠäž‹æ–‡ć› èŻ„äŒ°ć…šć±€ć˜é‡æˆ–ć‡œæ•°è€ŒäžćŒă€‚äŸ‹ćŠ‚ïŒŒćŠ‚æžœæ‚šćœšè‡Ș漚äč‰ć…ŹćŒć­—æź”äž­äœżç”šïŒŒäž”èŻ„ć­—æź”æ˜Ÿç€ș朹 Salesforce Classic çš„æ ‡ć‡†éĄ”éąćžƒć±€äž­ïŒŒćˆ™ćŒ•ç”šäŒšèŻć°†æ˜ŻćŸșæœŹ Salesforce äŒšèŻă€‚ćœš Visualforce éĄ”éąäž­äœżç”šç›žćŒć­—æź”ïŒˆæˆ–ćŸșæœŹć˜é‡æˆ–ć…ŹćŒç»“æžœïŒ‰ïŒŒćˆ™æ”čäžșćŒ•ç”š Visualforce äŒšèŻă€‚

          äŒšèŻäžŠäž‹æ–‡ć–ć†łäșŽèŻ·æ±‚ćŸŸă€‚ćłäŒšèŻäžŠäž‹æ–‡äŒšćœšæ‚šç©żèż‡äž»æœș損èŸč界时曎æ”čïŒŒäŸ‹ćŠ‚ä»Ž .salesforce.com 戰 .vf.force.com 或 .lightning.force.com。

          äžćŒäžŠäž‹æ–‡äž­çš„äŒšèŻæ ‡èŻ†çŹŠä»„ćŠäŒšèŻäžćŒă€‚æ‚šćœšäžŠäž‹æ–‡äž­èœŹç§»æ—¶ïŒŒæ–°äŒšèŻäŒšæ›żæąćŽŸæœ‰äŒšèŻïŒŒè€Œäž”ćŽŸæœ‰äŒšèŻäžć†æœ‰æ•ˆă€‚æ­€æ—¶ïŒŒäŒšèŻ ID äčŸäŒšæ›Žæ”č。

          é€šćžžïŒŒSalesforce é€æ˜Žćœ°ć€„ç†äžŠäž‹æ–‡äč‹é—Žçš„äŒšèŻćˆ‡æąïŒŒäœ†ćŠ‚æžœæ‚šæ­Łćœšè‡Șć·±ć‘šć›ŽäŒ é€’äŒšèŻ IDïŒŒæ‚šćŻèƒœéœ€èŠä»Žæ–°äžŠäž‹æ–‡é‡æ–°èźżé—ź$Api.Session_ID或GETSESSIONID()ïŒŒä»„çĄźäżæœ‰æ•ˆçš„äŒšèŻ ID。

          ćč¶éžæ‰€æœ‰äŒšèŻéƒœæ˜Żćčłç­‰ćˆ›ć»ș的。ç‰čćˆ«æ˜ŻïŒŒćœš Lightning Experience äžŠäž‹æ–‡äž­èŽ·ć–çš„äŒšèŻäŒšé™äœŽæƒé™ïŒŒćč¶äž”æČĄæœ‰ API èźżé—źæƒé™ă€‚æ‚šæ— æł•äœżç”šèż™äș›äŒšèŻ ID èż›èĄŒ API è°ƒç”šă€‚äžäŒšäžșæ„ćźŸç”šæˆ·ç”Ÿæˆ{!$Api.Session_ID}。

           

          $Component

          æèż°ïŒš ćœ“ćŒ•ç”š Visualforce ç»„ä»¶æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš Visualforce éĄ”éąäž­çš„æŻäžȘ组件郜有è‡Ș深的Idć±žæ€§ă€‚ćœšć‘ˆçŽ°èŻ„éĄ”æ—¶ïŒŒæ­€ć±žæ€§ç”šäșŽç”Ÿæˆæ–‡æĄŁćŻčè±ĄæšĄćž‹ (DOM) IDă€‚äœżç”š JavaScript 侭的$Component.Path.to.IdćŒ•ç”šéĄ”éąäžŠçš„ç‰čćźšç»„ä»¶ïŒŒć…¶äž­ Path.to.Id æ˜Żæ­ŁćœšćŒ•ç”šçš„ç»„ä»¶çš„ç»„ä»¶ć±‚æŹĄç»“æž„èŻŽæ˜ŽçŹŠă€‚
          Visualforce ç€ș䟋
          function beforeTextSave() {
              document.getElementById('{!$Component.msgpost}').value = myEditor.getEditorHTML();
          }
          
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $ComponentLabel

          æèż°ïŒš ćœšäžŽæ¶ˆæŻć…łè”çš„ Visualforce éĄ”éąäžŠćŒ•ç”šinputFieldç»„ä»¶æ ‡ç­Ÿæ—¶äœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”。
          äœżç”šïŒš èż”ć›žäžŽæ¶ˆæŻć…łè”çš„inputFieldç»„ä»¶çš„æ ‡ç­Ÿă€‚
          Visualforce ç€ș䟋
          <apex:datalist var="mess" value="{!messages}">
              <apex:outputText value="{!mess.componentLabel}:" style="color:red"/>
              <apex:outputText value="{!mess.detail}" style="color:black" />
          </apex:datalist>
          
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $CurrentPage

          æèż°ïŒš ćœ“ćŒ•ç”šćœ“ć‰ Visualforce éĄ”éąæˆ–éĄ”éąèŻ·æ±‚æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš 朹 Visualforce éĄ”éąäž­äœżç”šæ­€ć…šć±€ć˜é‡æ„ćŒ•ç”šćœ“ć‰éĄ”éąćç§°($CurrentPage.Name)æˆ–ćœ“ć‰éĄ”éąçš„ URL($CurrentPage.URL))ă€‚äœżç”š $CurrentPage.parameters.parameterName ćŒ•ç”šéĄ”éąèŻ·æ±‚ć‚æ•°ć’Œć€ŒïŒŒć…¶äž­ parameterName æ˜Żæ­ŁćœšćŒ•ç”šçš„èŻ·æ±‚ć‚æ•°ă€‚parameterName 䞍ćŒșćˆ†ć€§ć°ć†™ă€‚
          Visualforce ç€ș䟋
          <apex:page standardController="Account">
              <apex:pageBlock title="Hello {!$User.FirstName}!">
                  You belong to the {!account.name} account.<br/>
                  You're also a nice person.
              </apex:pageBlock>
              <apex:detail subject="{!account}" relatedList="false"/>
              <apex:relatedList list="OpenActivities" 
                  subject="{!$CurrentPage.parameters.relatedId}"/> 
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $CustomMetadata

          æèż°ïŒš è‡Ș漚äč‰ć…ƒæ•°æźèź°ćœ•ă€‚ćœš API ç‰ˆæœŹ 43.0 ć’Œæ›Žé«˜ç‰ˆæœŹäž­ćŻç”šă€‚
          äœżç”šïŒš 朹éȘŒèŻè§„ćˆ™ć…ŹćŒäž­äœżç”šæ­€ć…šć±€ć˜é‡ïŒŒä»„äœżç”šèŻ­æł•$CustomMetadata.type.record.fieldćŠšæ€ćŒ•ç”šè‡Ș漚äč‰ć…ƒæ•°æźç±»ćž‹ă€‚
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…æ”ŻæŒéȘŒèŻè§„ćˆ™ć…ŹćŒă€‚

          $FieldSet

          æèż°ïŒš 提䟛ćŻčèŽ”ç»„ç»‡äž­ćźšäč‰çš„ć­—æź”é›†çš„èźżé—źæƒé™ă€‚
          äœżç”šïŒš 朹 Visualforce éĄ”éąäž­äœżç”šæ­€æƒé™ćŠšæ€èż­ä»Łć­—æź”é›†äž­çš„ć­—æź”ă€‚æ‚šćż…éĄ»äžșæ­€ć…šć±€ć˜é‡æ·»ćŠ äž€äžȘćŒ•ç”šäœœäžșć‰çŒ€ïŒŒäž”æ­€ćŒ•ç”šéœ€æŒ‡ć‘ć…·æœ‰ć­—æź”é›†çš„æ ‡ć‡†æˆ–è‡Ș漚äč‰ćŻčè±Ąă€‚
          Visualforce ç€ș䟋
          <apex:page standardController="Account">
              <apex:repeat value="{!$ObjectType.Account.FieldSets.myFieldSetName}" var="field">
                  <apex:outputText value="{!field}" />
              </apex:repeat>
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $Label

          æèż°ïŒš ćŒ•ç”šè‡Ș漚ä艿 ‡ç­Ÿæ—¶äœżç”šć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ $Label。
          • é€‰æ‹©æ‚šèŠćŒ•ç”šçš„è‡Ș漚ä艿 ‡ç­Ÿă€‚

          èż”ć›žçš„ć€Œć–ć†łäșŽäžŠäž‹æ–‡ç”šæˆ·çš„èŻ­èš€èźŸçœźă€‚ èż”ć›žçš„ć€Œæ˜Żäž‹ćˆ—ć€Œäč‹äž€ïŒŒæŒ‰äŒ˜ć…ˆéĄșćșæŽ’ćˆ—ïŒš

          • æœŹćœ°çż»èŻ‘çš„æ–‡æœŹ
          • æ‰“ćŒ…çż»èŻ‘çš„æ–‡æœŹ
          • äž»æ ‡ç­Ÿçš„æ–‡æœŹ
          攁ç€ș䟋

          戛ć»șä»„äž‹èĄšèŸŸćŒçš„æ”ć…ŹćŒïŒš

          {!$Label.customCurrency_label}

          ç„¶ćŽïŒŒć°†æ”ć…ŹćŒćŒ•ç”šäžșć±ćč•ç»„ä»¶æ ‡ç­Ÿă€‚

          Visualforce ç€ș䟋
          <apex:page>
              <apex:pageMessage severity="info" 
                  strength="1" 
                  summary="{!$Label.firstrun_helptext}" 
              />
          </apex:page>
          Aura 组件ç€ș䟋
          äœżç”šé»˜èź€ć‘œćç©șé—Žçš„æ ‡èź°èĄšèŸŸćŒäž­çš„æ ‡ç­Ÿ
          {!$Label.c.labelName}
          æ ‡èź°äž­çš„æ ‡ç­ŸèĄšèŸŸćŒä»…ćœš .cmp 撌 .app 蔄æșäž­ć—æ”ŻæŒă€‚
          ç»„ç»‡æ‹„æœ‰ć‘œćç©șé—Žæ—¶ JavaScript ä»Łç äž­çš„æ ‡ç­Ÿ
          $A.get("$Label.namespace.labelName")
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Aura 组件、Visualforce éĄ”éąă€Apexă€æ”ć’Œèż›çš‹ć…ŹćŒă€‚

          $Label.Site

          æèż°ïŒš ćœ“ćœš Visualforce éĄ”éąäž­ćŒ•ç”šäž€äžȘæ ‡ć‡†ç«™ç‚čæ ‡ç­Ÿæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äžŽæ‰€æœ‰æ ‡ć‡†æ ‡ç­Ÿäž€æ ·ïŒŒæ ‡ç­Ÿçš„æ¶ˆæŻæ čæźç”šæˆ·çš„èŻ­èš€ć’ŒćŒșćŸŸèźŸçœźæ˜Ÿç€șă€‚æ‚šæ— æł•äżźæ”čæ ‡ć‡†ç«™ç‚čæ ‡ç­Ÿçš„æ¶ˆæŻă€‚èŠäœżç”šè‡Ș漚ä艿¶ˆæŻïŒŒèŻ·ćˆ›ć»șè‡Ș漚ä艿 ‡ç­ŸïŒŒç„¶ćŽäœżç”š $Label ć…šć±€ć˜é‡ćŒ•ç”šæ ‡ç­Ÿă€‚
          äœżç”šïŒš 朹 Visualforce éĄ”éąäž­äœżç”šæ­€èĄšèŸŸćŒä»„èźżé—źæ ‡ć‡†ç«™ç‚čæ ‡ç­Ÿă€‚ćŠ‚æžœćș”甚皋ćșæœćŠĄć™šæž„ć»șèŠć‘ˆçŽ°ç»™æœ€ç»ˆç”šæˆ·æ”è§ˆć™šçš„éĄ”éąïŒŒèż”ć›žçš„ć€Œć–ć†łäșŽç”šæˆ·çš„èŻ­èš€ć’ŒćŒșćŸŸèźŸçœźă€‚
          Visualforce ç€ș䟋
          <apex:page>
              <apex:pageMessage severity="info" 
                  strength="1" 
                  summary="{!$Label.Site.temp_password_sent}" 
              />
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          Salesforce æäŸ›èż™äș›æ ‡ç­ŸïŒš

          标筟 æ¶ˆæŻ
          authorization_required 需芁授权
          bandwidth_limit_exceeded 超ć‡șćžŠćźœé™ćˆ¶
          change_password 曎æ”č毆码
          change_your_password 曎æ”č毆码
          click_forget_password ćŠ‚æžœæ‚šćż˜èź°äș†ćŻ†ç ïŒŒèŻ·ć•ć‡»â€œćż˜èź°ćŻ†ç â€æ„é‡æ–°èźŸçœźă€‚
          community_nickname 昔称
          confirm_password çĄźèź€ćŻ†ç 
          down_for_maintenance <i>{0}</i> æ­Łć…łé—­èż›èĄŒç»ŽæŠ€
          email ć‘é€ç””ć­é‚źä»¶
          email_us ć‘é€ç””ć­é‚źä»¶ç»™æˆ‘ä»Ź
          enter_password æ‚šæ˜ŻćŠćż˜èź°äș†ćŻ†ç ïŒŸèŻ·ćœšäž‹éąèŸ“ć…„æ‚šçš„ç”šæˆ·ćă€‚
          error é”™èŻŻïŒš{0}
          error2 é”™èŻŻ
          file_not_found æœȘæ‰Ÿćˆ°æ–‡ä»¶
          forgot_password ćż˜èź°ćŻ†ç 
          forgot_password_confirmation ćż˜èź°ćŻ†ç çĄźèź€
          forgot_your_password_q ćż˜èź°ćŻ†ç ïŒŸ
          get_in_touch ćŠ‚æžœæ‚šéœ€èŠè”çł»ïŒŒèŻ· <a href="{0}">{1}</a> 。
          go_to_login_page èœŹćˆ°ç™»ćœ•éĄ”éą
          img_path /img/sites
          in_maintenance ć…łé—­èż›èĄŒç»ŽæŠ€
          limit_exceeded 超ć‡șé™ćˆ¶
          login ç™»ćœ•
          login_button ç™»ćœ•
          login_or_register_first æ‚šćż…éĄ»éŠ–ć…ˆç™»ćœ•æˆ–æłšć†Œæ‰èƒœèźżé—źæ­€éĄ”éąă€‚
          logout æłšé”€
          new_password æ–°ćŻ†ç 
          new_user_q 新甚户
          old_password æ—§ćŻ†ç 
          page_not_found æœȘæ‰Ÿćˆ°éĄ”éą
          page_not_found_detail æœȘæ‰Ÿćˆ°éĄ”éąïŒš{0}
          password 毆码
          passwords_dont_match 毆码侍ćŒč配。
          powered_by æŠ€æœŻæ”ŻæŒ
          register æłšć†Œ
          registration_confirmation æłšć†ŒçĄźèź€
          site_login 站ç‚čç™»ćœ•
          site_under_construction 站ç‚čć»șèźŸäž­
          sorry_for_inconvenience äžäŸżäč‹ć€„ïŒŒæ•ŹèŻ·ćŽŸè°…ïŒ
          sorry_for_inconvenience_back_shortly äžäŸżäč‹ć€„ïŒŒæ•ŹèŻ·ćŽŸè°…ïŒæˆ‘ä»Źć°†ćŸˆćż«æąć€ă€‚
          stay_tuned æ•ŹèŻ·ć…łæłšă€‚
          submit 提äș€
          temp_password_sent ć·Čć°†ćžŠæœ‰äžŽæ—¶ćŻ†ç çš„ç””ć­é‚źä»¶ć‘é€ç»™æ‚šă€‚
          thank_you_for_registering æ„Ÿè°ąæ‚šçš„æłšć†Œă€‚ć·Čć°†ćžŠæœ‰äžŽæ—¶ćŻ†ç çš„ç””ć­é‚źä»¶ć‘é€ç»™æ‚šă€‚
          under_construction <i>{0}</i> æ­Łćœšć»șèźŸäž­
          user_registration æ–°ç”šæˆ·æłšć†Œ
          username ç”šæˆ·ć
          verify_new_password éȘŒèŻæ–°ćŻ†ç 

          $眑络

          æèż°ïŒš 朹 Visualforce ç””ć­é‚źä»¶æšĄæżäž­ćŒ•ç”š Experience Cloud 站ç‚čèŻŠç»†äżĄæŻæ—¶ïŒŒèŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš 朹 Visualforce ç””ć­é‚źä»¶æšĄæżäž­äœżç”šæ­€èĄšèŸŸćŒæ„èźżé—ź Experience Cloud 站ç‚čćç§°ć’Œç™»ćœ• URL。
          Visualforce ç€ș䟋
          <messaging:emailTemplate subject="Your Password has been reset" recipientType="User">
              <messaging:htmlEmailBody >
                  <p>Hi,</p>
                  <p>Your password for <b>{!$Network.Name}</b> has been reset.</p>
                  <p><a href='{!$Network.NetworkUrlForUserEmails}'>Reset Password</a></p>
                  <p>Regards,</p>
                  <p>Community Manager</p>
              </messaging:htmlEmailBody>
          </messaging:emailTemplate>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”š äșŽExperience Cloud 站ç‚č的 Visualforce ç””ć­é‚źä»¶æšĄæżă€‚

          $MessageChannel

          æèż°ïŒš äž€ç§ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ïŒŒç”šäșŽæäŸ›ćŻč组织䞭柚äč‰çš„æ¶ˆæŻé€šé“çš„èźżé—źă€‚
          äœżç”šïŒš ćœšæ‚šçš„ Visualforce éĄ”éąäž­äœżç”šæ­€èĄšèŸŸćŒæ„èźżé—źæ¶ˆæŻé€šé“ćč¶äœżç”š Lightning æ¶ˆæŻæœćŠĄ API。
          Visualforce ç€ș䟋
          <apex:page>
              <script>
                  // Load the MessageChannel token in a variable
                  var SAMPLEMC = "{!$MessageChannel.SampleMessageChannel__c}";
                  function handleClick() {
                      const payload = {
                          recordId: "some string",
                          recordData: {value: "some value"}
                      }
                      sforce.one.publish(SAMPLEMC, payload);
                  }
              </script>
              <div>
                  <p>Publish SampleMessageChannel</p>
                  <button onclick="handleClick()">Publish</button>
              </div>
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡é€‚ç”šäșŽ Visualforce éĄ”éąă€‚

          $ObjectType

          æèż°ïŒš ćœ“ćŒ•ç”šæ ‡ć‡†æˆ–è‡Ș漚äč‰ćŻčè±ĄïŒˆćŠ‚ćźąæˆ·ă€äžȘæĄˆæˆ–äžšćŠĄæœșäŒšïŒ‰ä»„ćŠć…¶ć­—æź”ć€Œæ—¶éœ€èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äœżç”š LINKTO、GETRECORDIDS 撌 URLFOR ć‡œæ•°äž­çš„ćŻčè±Ąç±»ćž‹ćˆćč¶ć­—æź”ćŒ•ç”šç‰čćźšç±»ćž‹çš„æ•°æźïŒŒæˆ–äœżç”š VLOOKUP ć‡œæ•°ćŒ•ç”šç›žć…łćŻčè±Ąäž­çš„ç‰čćźšć­—æź”ă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$ObjectType。
          • 选择ćŻčè±Ąä»„æ’ć…„èĄšç€șèŻ„ćŻčè±Ąçš„ćˆćč¶ć­—æź”ïŒŒćŠ‚ $ObjectType.Case。

            æˆ–è€…ïŒŒäœżç”šæ­€èŻ­æł•é€‰æ‹©èŻ„ćŻčè±ĄäžŠçš„ć­—æź”ïŒš$ObjectType.Role_Limit__c.Fields.Limit__c。

          è‡Ș漚ä艿Œ‰é’źç€ș䟋

          æ­€è‡Ș漚äč‰ćˆ—èĄšæŒ‰é’źćŒ•ç”š $ObjectType.Case 搈ćč¶ć­—æź”侭的äžȘæĄˆæ ‡ć‡†ćŻčè±Ąă€‚

          {!REQUIRESCRIPT ("/soap/ajax/13.0/connection.js")}
          var records = {!GETRECORDIDS($ObjectType.Sample)};
          var newRecords = [];
          if (records[0] == null) {
              alert("Please select at least one row")
          } else {
              for (var n=0; n<records.length; n++) {
                  var c = new sforce.SObject("Case");
                  c.id = records[n];
                  c.Status = "New";
                  newRecords.push(c);
              }
              result = sforce.connection.update(newRecords);
              window.location.reload();
          }
          éȘŒèŻè§„ćˆ™ç€ș䟋

          æœŹç€șäŸ‹é€šèż‡ćœšćŒ…ć«çŸŽć›œæœ‰æ•ˆé‚źæ”żçŒ–ç èź°ćœ•çš„è‡Ș漚äč‰ćŻčè±Ą Zip_Code__c äž­æŸ„æ‰Ÿć€Œçš„ć‰ 5 äœć­—çŹŠïŒŒä»„æŁ€æŸ„ćžć•é‚źæ”żçŒ–ç æ˜ŻćŠæœ‰æ•ˆă€‚ćŠ‚æžœćœš Zip_Code__c ćŻčè±Ąäž­æ‰Ÿäžćˆ°é‚źæ”żçŒ–ç ïŒŒæˆ–ćŒ€ć•ćœ°ć€ - ć·žéƒšćˆ†äžŽ Zip_Code__c ćŻčè±Ąäž­çš„ćŻčćș” State_Code__c 䞍ćŒčé…ïŒŒćˆ™æ˜Ÿç€șé”™èŻŻă€‚

          AND(
              LEN(BillingPostalCode) > 0, 
              OR(BillingCountry = "USA", BillingCountry = "US"), 
              VLOOKUP(
                  $ObjectType.Zip_Code__c.Fields.State_Code__c,
                  $ObjectType.Zip_Code__c.Fields.Name,
                  LEFT(BillingPostalCode,5)
              ) <> BillingState
          )
          Visualforce ç€ș䟋

          æ­€ç€șäŸ‹æŁ€çŽąćźąæˆ·Nameć­—æź”çš„æ ‡ç­ŸïŒš

          {!$ObjectType.Account.Fields.Name.Label}
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ćŻç”šäșŽ Visualforce éĄ”éąă€è‡Ș漚ä艿Œ‰é’źć’Œé“ŸæŽ„、S-Control 撌éȘŒèŻè§„ćˆ™ă€‚

          $Organization

          æèż°ïŒš ćœ“ćŒ•ç”šć…Źćžçź€æĄŁäżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äœżç”šç»„ç»‡ćˆćč¶ć­—æź”ćŒ•ç”šç»„ç»‡æ‰€ćœšćŸŽćž‚ă€äŒ çœŸă€ID æˆ–ć…¶ä»–èŻŠç»†äżĄæŻă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$Organization
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ $Organization.Fax。
          éȘŒèŻè§„ćˆ™ç€ș䟋

          äœżç”šç»„ç»‡ćˆćč¶ć­—æź”æŻ”èŸƒæ‚šçš„ç»„ç»‡ć’Œćźąæˆ·çš„æ‰€æœ‰ć±žæ€§ă€‚äŸ‹ćŠ‚ïŒŒæ‚šćŻèƒœèŠçĄźćźšæ‚šçš„ç»„ç»‡æ˜ŻćŠäžŽæ‚šçš„ćźąæˆ·ć±žäșŽćŒäž€äžȘć›œćź¶/㜰ćŒșă€‚æ­€éȘŒèŻć…ŹćŒćŒ•ç”šäș†èŽ”ç»„ç»‡æ‰€ćœšć›œćź¶/㜰ćŒș的搈ćč¶ć­—æź”ćč¶äž”ć›œć€–çš„ćźąæˆ·éœ€èŠć›œćź¶/㜰ćŒș的代码。

          AND($Organization.Country <> BillingCountry, ISBLANK(Country_Code__c))
          攁ç€ș䟋 戛ć»șèĄšèŸŸćŒäžș {!$Organization.City} çš„æ”ć…ŹćŒïŒˆæ–‡æœŹïŒ‰ă€‚ćœšâ€œć†łç­–â€ć…ƒçŽ äž­ïŒŒèŻ·æŁ€æŸ„è”çł»äșșçš„ćŸŽćž‚æ˜ŻćŠćŒčé…èŻ„ć…ŹćŒă€‚
          Visualforce ç€ș䟋

          äœżç”šç‚čèĄšç€șæł•èźżé—źèŽ”ç»„ç»‡çš„äżĄæŻă€‚äŸ‹ćŠ‚ïŒš

          {!$Organization.Street}
          {!$Organization.State}
          æŠ€ć·§æç€ș

          ç»„ç»‡ćˆćč¶ć­—æź”ä»Žćœ“ć‰ć‚šć­˜ćœš Salesforce 䞭䜜äžșć…Źćžéƒšćˆ†äżĄæŻçš„ć€Œäž­èŽ·ćŸ—ć€Œă€‚

          èŻ·æłšæ„,{!$Organization.UiSkin}æ˜Żé€‰éĄčćˆ—èĄšć€Œ,ć› æ­€äžŽè‡Ș漚äč‰ć­—æź”侭的ISPICKVAL()、éȘŒèŻè§„ćˆ™ă€Visualforce èĄšèŸŸćŒă€æ”ć…ŹćŒă€èż›çš‹ć…ŹćŒć’Œć·„äœœæ”è§„ćˆ™ć…ŹćŒç­‰é€‰éĄčćˆ—èĄšć‡œæ•°äž€è”·äœżç”šă€‚

          $Page

          æèż°ïŒš ćœ“ćŒ•ç”š Visualforce éĄ”æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš 朹 Visualforce éĄ”éąäž­äœżç”šæ­€èĄšèŸŸćŒä»„é“ŸæŽ„ćˆ°ćŠäž€äžȘ Visualforce éĄ”éąă€‚
          Visualforce ç€ș䟋
          <apex:page>
              <h1>Linked</h1>
              <apex:outputLink value="{!$Page.otherPage}">
                  This is a link to another page.
              </apex:outputLink>
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $Permission

          æèż°ïŒš ćœ“ćŒ•ç”šćœ“ć‰ç”šæˆ·è‡Ș漚ä艿ƒé™èźżé—źäżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äœżç”šæƒé™ćˆćč¶ć­—æź”ćŒ•ç”šç”šæˆ·ćœ“ć‰èźżé—źèŽ”ç»„ç»‡ä»»äœ•è‡Ș漚ä艿ƒé™çš„äżĄæŻă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$Permission。
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ $Permission.customPermissionName。
          éȘŒèŻè§„ćˆ™ç€ș䟋

          æ­€éȘŒèŻè§„ćˆ™ćŒ•ç”šćœ“ć‰ç”šæˆ·çš„è‡Ș漚ä艿ƒé™ changeAustinAccountsă€‚æ­€è§„ćˆ™ćŻçĄźäżä»…ć…·æœ‰ changeAustinAccounts çš„ç”šæˆ·ćŻæ›Žæ–°ćŒ€ć•ćŸŽćž‚ć„„æ–Żæ±€çš„ćźąæˆ·ă€‚

          BillingCity = 'Austin' && $Permission.changeAustinAccounts
          攁ç€ș䟋

          æ­€æ”ć…ŹćŒäŒšèŻ„äŒ°ćœ“ć‰ç”šæˆ·æ˜ŻćŠć…·æœ‰ deleteCandidates è‡Ș漚ä艿ƒé™ă€‚

          {!$Permission.deleteCandidates}
          Visualforce ç€ș䟋

          èŠäœż pageblock 仅针ćŻčć…·æœ‰è‡Ș漚ä艿ƒé™ see ExecutiveData 的甚户ć‡șçŽ°ïŒŒćˆ™é‡‡ç”šä»„äž‹èĄšèŸŸćŒïŒš

          <apex:pageBlock rendered="{!$Permission.canSeeExecutiveData}">
              <!-- Executive Data Here -->
          </apex:pageBlock>
          æŠ€ć·§æç€ș ćȘæœ‰ćœšæ‚šçš„ç»„ç»‡äž­ćˆ›ć»șè‡Ș漚ä艿ƒé™ćŽïŒŒæ‰æ˜Ÿç€ș $Permissionă€‚èż›çš‹ă€æ”ć’Œć·„äœœæ”è§„ćˆ™äžæ”ŻæŒæ­€ć…šć±€ć˜é‡ă€‚

          $Profile

          æèż°ïŒš ćœ“ćŒ•ç”šćœ“ć‰ç”šæˆ·çź€æĄŁäżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚äœżç”šçź€æĄŁćˆćč¶ć­—æź”ćŒ•ç”šç”šæˆ·çź€æĄŁäżĄæŻïŒˆäŸ‹ćŠ‚èźžćŻèŻç±»ćž‹æˆ–ćç§°ïŒ‰ă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$Profile。
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ $Profile.Name。
          éȘŒèŻè§„ćˆ™ç€ș䟋

          æ­€éȘŒèŻè§„ćˆ™ć…ŹćŒćŒ•ç”šäș†ćœ“ć‰ç”šæˆ·çš„çꀿĄŁćïŒŒä»„硼保ćȘæœ‰èŻ„çź€æĄŁçš„èź°ćœ•æ‰€æœ‰äșșæˆ–ç”šæˆ·ćŻä»„æ›Žæ”č損äžșäžȘäșșç›źæ ‡çš„è‡Ș漚äč‰ć­—æź”

          AND(
              ISCHANGED( Personal_Goal__c ), 
              Owner <> $User.Id, 
              $Profile.Name <> "Custom: System Admin" 
          )
          攁ç€ș䟋

          äœżç”šæ­€èĄšèŸŸćŒćˆ›ć»șæ”ć…ŹćŒïŒˆæ–‡æœŹïŒ‰ă€‚

          {!$Profile.Name}

          é€šèż‡ćŒ•ç”šèŻ„ć…ŹćŒïŒŒæ‚šćŻä»„éżć…äœżç”šæŸ„èŻąïŒˆâ€œæŸ„èŻąâ€ć…ƒçŽ ïŒ‰ćč¶äżć­˜é™ćˆ¶ă€‚

          Visualforce ç€ș䟋

          èŠèż”ć›žćœ“ć‰ç”šæˆ·çź€æĄŁïŒŒèŻ·äœżç”šä»„äž‹éĄčç›źïŒš

          {!$Profile.Name}
          æŠ€ć·§æç€ș
          • ćȘæœ‰ćœšćŻćˆ›ć»șè‡Ș漚äč‰çꀿĄŁçš„ç‰ˆæœŹäž­æ‰èƒœäœżç”š $Profile 搈ćč¶ć­—æź”。
          • äœżç”šçź€æĄŁććŒ•ç”š $Profile 搈ćč¶ć­—æź”äž­çš„æ ‡ć‡†çź€æĄŁă€‚

          • ćŠ‚æžœçź€æĄŁć±žæ€§äžșç©șïŒŒćˆ™æ‚šçš„ćˆćč¶ć­—æź”ć€Œć°†äžșç©șă€‚äŸ‹ćŠ‚ïŒŒçź€æĄŁæèż°äžæ˜Żćż…éœ€çš„ïŒŒæœ‰æ—¶äžćŒ…ć«ć€Œă€‚
          • 悚䞍需芁授äșˆç”šæˆ·èźżé—źć…¶çꀿĄŁäżĄæŻçš„æƒé™æˆ–èźżé—źæƒé™ć°±ćŻäœżç”šèż™äș›ćˆćč¶ć­—æź”。

          ćŠ‚æžœæ‚šäč‹ć‰ćŒ•甚äș†çꀿĄŁçš„ć†…éƒšć€ŒïŒŒèŻ·äœżç”šä»„äž‹ćˆ—èĄšçĄźćźšèŠäœżç”šçš„æ›żæąćç§°ïŒš

          æ ‡ć‡†çź€æĄŁć $Profile ć€Œ
          çł»ç»ŸçźĄç†ć‘˜ PT1
          æ ‡ć‡†ç”šæˆ· PT2
          ćȘèŻ» PT3
          è§Łć†łæ–čæĄˆçźĄç†ć‘˜ PT4
          澂ćœș萄销甚户 PT5
          搈搌缡理摘 PT6
          ćˆäœœäŒ™äŒŽç”šæˆ· PT7
          æ ‡ć‡† Platform 甚户 PT8
          æ ‡ć‡† Platform One ćș”甚皋ćșç”šæˆ· PT9
          ćźąæˆ·ć…„ćŁçœ‘ç«™ç”šæˆ· PT13
          ćźąæˆ·ć…„ćŁçœ‘ç«™çźĄç†ć‘˜ PT14

          $RecordType

          æèż°ïŒš ćŒ•ç”šćœ“ć‰èź°ćœ•çš„èź°ćœ•ç±»ćž‹æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”。
          äœżç”šïŒš æ‰‹ćŠšć°† $RecordType æ·»ćŠ ćˆ° S-Control。
          Visualforce ç€ș䟋

          èŠèż”ć›žćœ“ć‰èź°ćœ•ç±»ćž‹çš„ IDïŒŒèŻ·äœżç”šïŒš

          {$RecordType.Id}
          æŠ€ć·§æç€ș
          • äœżç”š $RecordType.Id è€Œäžæ˜Ż $RecordType.Name æ„ćŒ•ç”šç‰čćźšèź°ćœ•ç±»ćž‹ă€‚è™œç„¶ $RecordType.Name äœżć…ŹćŒæ›ŽćŠ ćŻèŻ»ïŒŒäœ†ćŠ‚æžœèź°ćœ•ç±»ćž‹çš„ćç§°ć‘ç”Ÿæ›Žæ”čïŒŒæ‚šćż…éĄ»æ›Žæ–°ć…ŹćŒïŒŒè€Œèź°ćœ•ç±»ćž‹çš„ ID äžäŒšć‘ç”Ÿć˜ćŒ–ă€‚äœ†ćŠ‚æžœæ­Łćœšè·šç»„ç»‡éƒšçœČć…ŹćŒïŒˆäŸ‹ćŠ‚ćœš Sandbox 撌生äș§ç»„织äč‹é—ŽïŒ‰ïŒŒèŻ·äœżç”š $RecordType.NameïŒŒć› äžș跚组织时 ID 侍搌。
          • éżć…ćœšć…ŹćŒäž­äœżç”š $RecordTypeïŒŒé»˜èź€ć€Œć…ŹćŒé™€ć€–ă€‚è€Œćș”ćœšćŻčè±ĄäžŠäœżç”š RecordType 搈ćč¶ć­—æź”ïŒˆäŸ‹ćŠ‚ïŒŒAccount.RecordType.Name或 RecordTypeId ć­—æź”ă€‚
          • èŻ·ć‹żćœšè·šćŻčè±Ąć…ŹćŒäž­ćŒ•ç”šä»»äœ•ć…·æœ‰â€œ$RecordType搈ćč¶â€ć­—æź”çš„ć­—æź”ă€‚$RecordTypeć˜é‡è§ŁæžäžșćŒ…ć«ć…ŹćŒçš„èź°ćœ•ïŒŒè€Œäžæ˜Żć…ŹćŒè·šè¶Šçš„èź°ćœ•ă€‚æ”čäžș朹ćŻčè±ĄäžŠäœżç”š ⁇ RecordType 搈ćč¶ć­—æź”。

          $Request

          æèż°ïŒš æŒ‰ćç§°ćŒ•ç”šèż”ć›žć€Œçš„æŸ„èŻąć‚æ•°æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”。
          äœżç”šïŒš æ‰‹ćŠšć°† $Request æ·»ćŠ ćˆ° S-Control。
          S-Control ç€ș䟋

          æ­€ä»Łç ç‰‡æ–­ćäžș Title_Snippet需芁䞀äžȘèŸ“ć…„ć‚æ•°ïŒštitleTheme 撌 titleTextă€‚ćŻä»„ćœšèźžć€š S-Control äž­é‡ć€äœżç”šæ­€ä»Łç ç‰‡æ–­ïŒŒä»„æäŸ› HTML äž­çš„éĄ”éąæ ‡éą˜ć’Œæ–čæĄˆă€‚

          <h2 class="{!$Request.titleTheme}.title">
              {!$Request.titleText}
          </h2>

          æ­€ S-Control äœżç”š INCLUDE ć‡œæ•°è°ƒç”šæ­€ä»Łç ç‰‡æ–­ïŒŒćč¶ć‘ć…¶ć‘é€ćźƒćˆ›ć»ș的 HTML éĄ”éąçš„æ ‡éą˜ć’Œäž»éą˜çš„ć‚æ•°ă€‚

          <html>
              <head/>
              <body> 
                  {!INCLUDE(
                          $SControl.Title_Snippet, 
                          [titleTheme = "modern", titleText = "My Sample Title"]
                  )}
                  Insert your page-specific content here ... 
              </body> 
          </html>
          æŠ€ć·§æç€ș äžèŠćœš Visualforce éĄ”éąäž­äœżç”š $Request æ„ćŒ•ç”šæŸ„èŻąć‚æ•°ă€‚è€Œćș”äœżç”š $CurrentPage。

          $Resource

          æèż°ïŒš ćœ“ćœšæŒ‰ Visualforce éĄ”éąäž­çš„ćç§°ćŒ•ç”šçŽ°æœ‰é™æ€è”„æșæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚æ‚šèż˜ćŻä»„ćœš URLFOR ć‡œæ•°äž­äœżç”šè”„æșćˆćč¶ć­—æź”æ„ćŒ•ç”šé™æ€è”„æșćœ’æĄŁäž­çš„ç‰čćźšæ–‡ä»¶ă€‚
          äœżç”šïŒš äœżç”š $Resource ćŒ•ç”šçŽ°æœ‰é™æ€è”„æșă€‚æ ŒćŒäžș $Resource.nameOfResourceïŒŒćŠ‚ $Resource.TestImage。
          Visualforce ç€ș䟋

          æ­€ Visualforce ç»„ä»¶ćŒ•ç”šäž€äžȘć›Ÿćƒæ–‡ä»¶ïŒŒèŻ„ć›Ÿćƒæ–‡ä»¶äžŠèœœäžș静态蔄æșïŒŒć…¶ćç§°æŒ‡ćźšäžș TestImage

          <apex:image url="{!$Resource.TestImage}" width="50" height="50"/>

          èŠćŒ•ç”šćœ’æĄŁäž­çš„æ–‡ä»¶ïŒˆäŸ‹ćŠ‚ .zip 或 .jar æ–‡ä»¶ïŒ‰ïŒŒèŻ·äœżç”š URLFOR ć‡œæ•°ă€‚äœżç”šçŹŹäž€äžȘć‚æ•°æŒ‡ćźšćœšäžŠèœœćœ’æĄŁæ—¶æ‰€æäŸ›çš„é™æ€è”„æșćç§°ïŒŒćč¶äœżç”šçŹŹäșŒäžȘć‚æ•°æŒ‡ćźšæŒ‡ć‘ćœ’æĄŁäž­æ‰€éœ€æ–‡ä»¶çš„è·ŻćŸ„ă€‚äŸ‹ćŠ‚ïŒš

          <apex:image url="{!URLFOR($Resource.TestZip, 'images/Bluehills.jpg')}" 
              width="50" height="50"/>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ä»…é€‚ç”šäșŽ Visualforce 饔。

          $SControl

          重芁
          重芁 Visualforce éĄ”éąä»Łæ›ż S-control。äč‹ć‰æœȘäœżç”šèż‡ S-Control çš„ç»„ç»‡æ— æł•ćˆ›ć»ș S-Controlă€‚çŽ°æœ‰ S-Control ć°†äžć—ćœ±ć“ïŒŒä»ç„¶ćŻä»„èż›èĄŒçŒ–èŸ‘ă€‚
          æèż°ïŒš ćœ“æŒ‰ćç§°ćŒ•ç”šçŽ°æœ‰ Custom S-Control æ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚ćœš LINKTO、INCLUDE 撌 URLFOR ć‡œæ•°äž­äœżç”š S-Control 搈ćč¶ć­—æź”æ„ćŒ•ç”šć…¶äž­äž€äžȘ Custom S-Control。
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$SControl。
          • é€‰æ‹©èŠæ’ć…„èĄšç€șèŻ„ S-Control 的搈ćč¶ć­—æź”ïŒˆćŠ‚ $Scontrol.Header_Snippet的 S-Control。
          S-Control ç€ș䟋

          例靱的 S-Control ćŒ•ç”š $Scontrol.Header_Snippet 搈ćč¶ć­—æź”äž­çš„ä»Łç ç‰‡æ–­ïŒš

          <html>
              <body>
                  {!INCLUDE(
                      $SControl.Header_Snippet, 
                      [title = "My Title", theme = "modern"]
                   )}
              </body>
          </html>
          Visualforce ç€ș䟋

          䞋䟋星ç€șćŠ‚äœ•ćœš Visualforce éĄ”éąäž­é“ŸæŽ„ćˆ°ćäžș HelloWorld 的 S-Control

          <apex:page>
              <apex:outputLink value="{!$SControl.HelloWorld}">
                  Open the HelloWorld s-control
              </apex:outputLink>
          </apex:page>

          èŻ·æłšæ„ïŒŒćŠ‚æžœæ‚šæƒłèŠćœšéĄ”éąäž­ć”Œć…„ S-ControlïŒŒæ‚šćŻä»„äœżç”šäžćžŠ $SControl 搈ćč¶ć­—æź”的 <apex:scontrol> æ ‡èź°ă€‚äŸ‹ćŠ‚ïŒš

          <apex:page>
              <apex:scontrol controlName="HelloWorld" />
          </apex:page>
          æŠ€ć·§æç€ș
          • æ’ć…„ćˆćč¶ć­—æź”çš„äž‹æ‹‰ćˆ—èĄšćˆ—ć‡ș所有 Custom S-ControlïŒŒä»Łç ç‰‡æ–­é™€ć€–ă€‚ć°œçźĄä»Łç ç‰‡æ–­æ˜Ż S-ControlïŒŒäœ†ć…¶èĄŒäžșäžćŒă€‚äŸ‹ćŠ‚ïŒŒæ‚šäžèƒœç›ŽæŽ„ä»Ž URLFOR ć‡œæ•°ćŒ•ç”šä»Łç ç‰‡æ–­ïŒ›ćœšćˆ›ć»șćŒ…ć« Custom S-Control 憅ćźčæșçš„è‡Ș漚ä艿Œ‰é’źæˆ–é“ŸæŽ„æ—¶ïŒŒä»Łç ç‰‡æ–­äžćŻç”šïŒ›æ‚šäžèƒœć°†ä»Łç ç‰‡æ–­æ·»ćŠ ćˆ°éĄ”éąćžƒć±€ă€‚èŠćœš S-Control äž­æ’ć…„ä»Łç ç‰‡æ–­ïŒŒèŻ·äœżç”šæ’ć…„ä»Łç ç‰‡æ–­äž‹æ‹‰æŒ‰é’źă€‚
          • æ­€ć…šć±€ć˜é‡ä»…ćŻç”šäșŽè‡Ș漚äč‰çš„æŒ‰é’źć’Œé“ŸæŽ„、S-Control 撌 Visualforce éĄ”éąă€‚

          $Setup

          æèż°ïŒš ćœ“ćŒ•ç”šâ€œć±‚æŹĄç»“æž„â€ç±»ćž‹çš„è‡Ș漚äč‰èźŸçœźæ—¶äœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš

          äœżç”š $Setup äœżç”šç‚čèĄšç€șæł•èźżé—źć±‚æŹĄç»“æž„è‡Ș漚äč‰èźŸçœźćŠć…¶ć­—æź”ć€Œă€‚äŸ‹ćŠ‚ïŒŒ$Setup.App_Prefs__c.Show_Help_Content__c。

          ć±‚æŹĄç»“æž„è‡Ș漚äč‰èźŸçœźć…èźžćœšä»»äœ•䞉äžȘ侍搌çș§ćˆ«çš„ć€ŒïŒš

          • 组织甚äșŽä»»äœ•äșșçš„é»˜èź€ć€Œ
          • çź€æĄŁïŒŒèŠ†ç›–ç»„ç»‡ć€Œ
          • ç”šæˆ·ïŒŒćŒæ—¶èŠ†ç›–ç»„ç»‡ć’Œçź€æĄŁć€Œ

          Salesforce 氆ćŸșäșŽèżèĄŒç”šæˆ·çš„ćœ“ć‰äžŠäž‹æ–‡è‡ȘćŠšçĄźćźšæœŹè‡Ș漚äč‰èźŸçœźć­—æź”çš„æ­ŁçĄźć€Œă€‚

          ć…ŹćŒć­—æź”ç€ș䟋
          {!$Setup.CustomSettingName__c.CustomFieldName__c}

          ć…ŹćŒć­—æź”ćȘćŻčć±‚æŹĄç»“æž„è‡Ș漚äč‰èźŸçœźè”·äœœç”šïŒ›äžèƒœç”šäșŽćˆ—èĄšè‡Ș漚äč‰èźŸçœźă€‚

          Visualforce ç€ș䟋

          仄䞋ç€ș䟋介绍äș†ćŠ‚äœ•æœ‰æĄä»¶æ˜Ÿç€șèŸ“ć…„ć­—æź”çš„æ‰©ć±•ćžźćŠ©æ¶ˆæŻïŒŒèż™ć–ć†łäșŽç”šæˆ·éЖ选éĄč

          <apex:page>
              <apex:inputField value="{!usr.Workstation_Height__c}"/>
              <apex:outputPanel id="helpWorkstationHeight" 
                  rendered="{!$Setup.App_Prefs__c.Show_Help_Content__c}">
                  Enter the height for your workstation in inches, measured from the 
                  floor to top of the work surface.
              </apex:outputPanel>
              ...
          </apex:page>
          

          ćŠ‚æžœè‡Ș漚äč‰èźŸçœźçš„组织çș§ćˆ«èźŸçœźäžș“trueâ€ïŒŒç”šæˆ·ć°†é»˜èź€çœ‹ćˆ°æ‰©ć±•ćžźćŠ©æ¶ˆæŻă€‚ćŠ‚æžœäžȘäșșäžæ„żçœ‹ćˆ°ćžźćŠ©æ¶ˆæŻïŒŒćŻć°†è‡Ș漚äč‰èźŸçœźèźŸçœźäžșfalseïŒŒä»„èŠ†ç›–ç»„ç»‡ïŒˆæˆ–çź€æĄŁïŒ‰ć€Œă€‚

          äœżç”šæœŹć…šć±€ć˜é‡ïŒŒâ€œćˆ—èĄšâ€ç±»ćž‹çš„è‡Ș漚äč‰èźŸçœźćœš Visualforce éĄ”éąäžŠäžćŻç”šă€‚æ‚šćŻä»„ćœš Apex äž­èźżé—źćˆ—èĄšè‡Ș漚äč‰èźŸçœźă€‚

          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ćœš Visualforce éĄ”éąă€ć…ŹćŒć­—æź”ă€éȘŒèŻè§„ćˆ™ă€æ”ć’Œèż›çš‹ć…ŹćŒäž­ćŻç”šă€‚

          $Site

          æèż°ïŒš ćœ“ćŒ•ç”šæœ‰ć…łćœ“ć‰ Salesforce 站ç‚čçš„äżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”类枋。
          äœżç”šïŒš

          äœżç”šç‚čèĄšç€șæł•èźżé—źæœ‰ć…łćœ“ć‰ Salesforce 站ç‚čçš„äżĄæŻă€‚

          Visualforce ç€ș䟋

          æ­€ç€ș䟋星ç€șäș†ćŠ‚äœ•äœżç”š$Site.Template搈ćč¶ć­—æź”

          <apex:page title="Job Application Confirmation" showHeader="false" 
              standardStylesheets="true">
          
              <!-- The site template provides layout & style for the site -->
              <apex:composition template="{!$Site.Template}">
          
              <apex:define name="body">
                  <apex:form>
                      <apex:commandLink value="<- Back to Job Search" 
                          onclick="window.top.location='{!$Page.PublicJobs}';return false;"/>
                      <br/>
                      <br/>
                      <center>
                          <apex:outputText value="Your application has been saved. 
                              Thank you for your interest!"/>
                      </center>
                      <br/>
                      <br/>
                  </apex:form>
              </apex:define>
              
              </apex:composition>
          </apex:page>
          æŠ€ć·§æç€ș æ­€ć…šć±€ć˜é‡ćœš Visualforce éĄ”éąă€ç””ć­é‚źä»¶æšĄæżć’Œ S-Control 侭揯甹。

          èŻ·æłšæ„ïŒŒćȘæœ‰èż™äș›ç«™ç‚čć­—æź”ćŻç”šïŒš

          搈ćč¶ć­—æź” èŻŽæ˜Ž
          $Site.Name èż”ć›žćœ“ć‰ç«™ç‚č的 API 損称。
          $Site.Domain èż”ć›žćŸșäșŽ Salesforce 站ç‚č的 URL。
          $Site.CustomWebAddress èż”ć›žèŻ·æ±‚çš„è‡Ș漚äč‰ URLïŒˆćŠ‚æžœćźƒäžä»„ force.com ç»“ć°ŸïŒ‰æˆ–èż”ć›žç«™ç‚č的䞻è‡Ș漚äč‰ URLă€‚ćŠ‚æžœäșŒè€…çš†äžć­˜ćœšïŒŒć°†èż”ć›žäž€äžȘç©ș歗笩äžČă€‚æłšæ„ïŒŒćłäœżèŻ·æ±‚çš„è‡Ș漚äč‰ URL ć…·æœ‰äž€äžȘè·ŻćŸ„ć‰çŒ€ïŒŒURL çš„è·ŻćŸ„ć§‹ç»ˆäžșæ čè·ŻćŸ„ă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČă€‚æ­€ć­—æź”çš„ć€Œć§‹ç»ˆä»„/ć­—çŹŠç»“ć°Ÿă€‚äžéŒ“ćŠ±äœżç”š $Site.CustomWebAddressć»șèźźäœżç”š $Site.BaseCustomUrl。
          $Site.OriginalUrl ćŠ‚æžœæ­€éĄ”éąæ˜Żç«™ç‚čçš„æŒ‡ćźšé”™èŻŻéĄ”éąïŒŒćˆ™èż”ć›žæ­€éĄ”éąçš„ćŽŸć§‹ URLïŒ›ćŠćˆ™ïŒŒèż”ć›ž null。
          $Site.CurrentSiteUrl ćŠ‚æžœäœżç”šćŒ•ç”šć’Œé“ŸæŽ„ïŒŒäŒšèż”ć›žćœ“ć‰ç«™ç‚č的ćŸș础 URLă€‚æłšæ„ïŒŒæ­€ć­—æź”ćŻèƒœäŒšèż”ć›žćŒ•ç”šéĄ”éąçš„ URLïŒŒè€Œäžæ˜Żćœ“ć‰èŻ·æ±‚çš„ URLă€‚æ­€ć­—æź”çš„ć€ŒćŒ…ć«è·ŻćŸ„ć‰çŒ€ïŒŒäž”ć§‹ç»ˆä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČă€‚äžéŒ“ćŠ±äœżç”š $Site.CurrentSiteUrl。ć»șèźźäœżç”š $Site.BaseUrl。
          $Site.LoginEnabled ćŠ‚æžœćœ“ć‰ç«™ç‚č侎ć·ČćŻç”šç™»ćœ•çš„ć…„ćŁçœ‘ç«™ć…łè”ïŒŒćˆ™èż”ć›žtrueïŒ›ćŠćˆ™èż”ć›žfalse。
          $Site.RegistrationEnabled ćŠ‚æžœćœ“ć‰ç«™ç‚č侎ć·Č搯甹è‡ȘćŠ©æłšć†Œçš„ćźąæˆ·ć…„ćŁçœ‘ç«™ć…łè”ïŒŒćˆ™èż”ć›žtrueïŒ›ćŠćˆ™èż”ć›žfalse。
          $Site.IsPasswordExpired ćŻčäșŽç»èż‡èș«ä»œéȘŒèŻçš„ç”šæˆ·ïŒŒćŠ‚æžœćœ“ć‰ç™»ćœ•ç”šæˆ·çš„ćŻ†ç èż‡æœŸïŒŒćˆ™èż”ć›žtrue。ćŻčäșŽæœȘ经èș«ä»œéȘŒèŻçš„ç”šæˆ·ïŒŒèż”ć›ž false。
          $Site.AdminEmailAddress èż”ć›žç©ș歗笩äžČă€‚äžæŽšèäœżç”šæ­€ćˆćč¶ć­—æź”。
          $Site.Prefix èż”ć›žćœ“ć‰ç«™ç‚č的 URL è·ŻćŸ„ć‰çŒ€ă€‚äŸ‹ćŠ‚ïŒŒćŠ‚æžœæ‚šçš„ç«™ç‚č URL æ˜Ż MyDomainName.my.salesforce-sites.com/partners/partners 捳äžșè·ŻćŸ„ć‰çŒ€ă€‚ćŠ‚æžœæœȘ漚äč‰ć‰çŒ€ïŒŒćˆ™èż”曞nullă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.Template èż”ć›žäžŽćœ“ć‰ç«™ç‚čć…łè”çš„æšĄæżćç§°ïŒ›ćŠ‚æžœæœȘæŒ‡ćźšæšĄæżćˆ™èż”ć›žé»˜èź€æšĄæżă€‚
          $Site.ErrorMessage ćŠ‚æžœæ­€éĄ”éąæ˜Żç«™ç‚čçš„æŒ‡ćźšé”™èŻŻéĄ”éąäž”ć­˜ćœšé”™èŻŻïŒŒćˆ™èż”ć›žćœ“ć‰éĄ”éąçš„é”™èŻŻæ¶ˆæŻïŒ›ćŠćˆ™èż”ć›žç©ș歗笩äžČ。
          $Site.ErrorDescription ćŠ‚æžœæ­€éĄ”éąæ˜Żç«™ç‚čçš„æŒ‡ćźšé”™èŻŻéĄ”éąäž”ć­˜ćœšé”™èŻŻïŒŒćˆ™èż”ć›žćœ“ć‰éĄ”éąçš„é”™èŻŻæèż°ïŒ›ćŠćˆ™èż”ć›žç©ș歗笩äžČ。
          $Site.AnalyticsTrackingCode 䞎悚的站ç‚čć…łè”çš„è·ŸèžȘ代码。Google Analytics ç­‰æœćŠĄćŻä»„äœżç”šæ­€ä»Łç æ„è·ŸèžȘ悚站ç‚čçš„éĄ”éąèŻ·æ±‚æ•°æźă€‚
          $Site.BaseCustomUrl

          äžșæœȘäœżç”šć­ćŸŸçš„ćœ“ć‰ç«™ç‚čèż”ć›žäž€äžȘćŸș础 URLă€‚ćŠ‚æžœç«™ç‚čäžŠć­˜ćœšè‡łć°‘äž€äžȘæ”ŻæŒ HTTPS 的非 force.com è‡Ș漚äč‰ URLïŒŒćˆ™èż”ć›žçš„ URL äœżç”šäžŽćœ“ć‰èŻ·æ±‚ç›žćŒçš„ćèźźïŒˆHTTP 或 HTTPSïŒ‰ă€‚èż”ć›žçš„ć€Œæ°žèżœäžäŒšä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœèŻ„ç«™ç‚č䞭的所有è‡Ș漚äč‰ URL 郜仄 force.com 或 salesforce-sites.com ç»“ć°ŸïŒŒæˆ–è€…èŻ„ç«™ç‚čæČĄæœ‰è‡Ș漚äč‰ URLïŒŒćˆ™èż”ć›žäž€äžȘç©ș歗笩äžČă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€æ–čæł•ć°†èż”ć›žç©ș歗笩äžČ。

          æ­€ć­—æź”äŒšæ›żæą CustomWebAddressïŒŒćŒ…ć«è‡Ș漚äč‰ URL çš„è·ŻćŸ„ć‰çŒ€ă€‚

          $Site.BaseInsecureUrl äžæŽšèäœżç”šæ­€ćˆćč¶ć­—æź”。äžșäœżç”š HTTP 而非 HTTPS çš„ćœ“ć‰ç«™ç‚čèż”ć›žäž€äžȘćŸș础 URLă€‚äœżç”šäș†ćœ“ć‰èŻ·æ±‚çš„ćŸŸă€‚èż”ć›žçš„ć€ŒćŒ…ć«è·ŻćŸ„ć‰çŒ€ïŒŒäž”ć§‹ç»ˆäžäŒšä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€æ–čæł•ć°†èż”ć›žç©ș歗笩äžČ
          $Site.BaseRequestUrl äžșèŻ·æ±‚çš„ URL èż”ć›žćœ“ć‰ç«™ç‚č的ćŸș础 URLă€‚ćŒ•ç”šéĄ”éąçš„ URL 䞍䌚ćŻčæ­€äș§ç”Ÿćœ±ć“ă€‚èż”ć›žçš„ URL äœżç”šäžŽćœ“ć‰èŻ·æ±‚ç›žćŒçš„ćèźźïŒˆHTTP 或 HTTPSïŒ‰ă€‚èż”ć›žçš„ć€ŒćŒ…ć«è·ŻćŸ„ć‰çŒ€ïŒŒäž”ć§‹ç»ˆäžäŒšä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€æ–čæł•ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.BaseSecureUrl äžșäœżç”š HTTP 而非 HTTPS çš„ćœ“ć‰ç«™ç‚čèż”ć›žäž€äžȘćŸș础 URLă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚çš„ćŸŸæ”ŻæŒ HTTPSïŒŒćˆ™æ­€ćŸŸäžș驖选éĄčă€‚äžć±žäșŽ force.com ć­ćŸŸçš„ćŸŸäŒ˜ć…ˆäșŽ force.com ć­ćŸŸă€‚ćŠ‚æžœćœ“ć‰ç«™ç‚čäž­æČĄæœ‰ć…¶ä»– HTTPS ćŸŸïŒŒćˆ™äœżç”š Force.com ć­ćŸŸïŒˆćŠ‚æžœć…¶äžŽç«™ç‚čć…łè”ïŒ‰ă€‚ćŠ‚æžœç«™ç‚čäž­æČĄæœ‰ HTTPS è‡Ș漚äč‰ URLïŒŒćˆ™æ­€æ–čæł•ć°†èż”ć›žäž€äžȘç©ș歗笩äžČă€‚èż”ć›žçš„ć€ŒćŒ…ć«è·ŻćŸ„ć‰çŒ€ïŒŒäž”ć§‹ç»ˆäžäŒšä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€æ–čæł•ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.BaseUrl

          ćŠ‚æžœäœżç”šćŒ•ç”šć’Œé“ŸæŽ„ïŒŒäŒšèż”ć›žćœ“ć‰ç«™ç‚č的ćŸș础 URLă€‚æłšæ„ïŒŒæ­€ć­—æź”ćŻèƒœäŒšèż”ć›žćŒ•ç”šéĄ”éąçš„ URLïŒŒè€Œäžæ˜Żćœ“ć‰èŻ·æ±‚çš„ URLă€‚æ­€ć­—æź”çš„ć€ŒćŒ…ć«è·ŻćŸ„ć‰çŒ€ïŒŒäž”ć§‹ç»ˆäžäŒšä»„/ć­—çŹŠç»“ć°Ÿă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。

          æ­€ć­—æź”äŒšæ›żæą $Site.CurrentSiteUrl。

          $Site.MasterLabel äžșćœ“ć‰ç«™ç‚čèż”ć›žâ€œäž»æ ‡ç­Ÿâ€ć­—æź”çš„ć€Œă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.SiteId èż”ć›žćœ“ć‰ç«™ç‚č的 IDă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.SiteType äžșćœ“ć‰ç«™ç‚čèż”ć›žâ€œç«™ç‚čç±»ćž‹â€ć­—æź”çš„ API ć€Œă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。
          $Site.SiteTypeLabel äžșćœ“ć‰ç«™ç‚čèż”ć›žâ€œç«™ç‚čç±»ćž‹â€ć­—æź”æ ‡ç­Ÿçš„ć€Œă€‚ćŠ‚æžœćœ“ć‰èŻ·æ±‚äžæ˜Żç«™ç‚čèŻ·æ±‚ïŒŒćˆ™æ­€ć­—æź”ć°†èż”ć›žç©ș歗笩äžČ。

          $System.OriginDateTime

          æèż°ïŒš èĄšç€ș 1900-01-01 00:00:00 çš„æ–‡ć­—èĄšç€șć€Œçš„ć…šć±€ćˆćč¶ć­—æź”ă€‚ćœ“æ‰§èĄŒæ—„æœŸ/æ—¶é—Žćć·źèźĄçź—æˆ–äžș旄期/æ—¶é—Žć­—æź”ćˆ†é…æ–‡ć­—èĄšç€șć€Œæ—¶ïŒŒäœżç”šæ­€ć…šć±€ć˜é‡ă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$System。
          • 朹 æ’ć…„ćˆćč¶ć­—æź”选éĄč选择 OriginDateTime。
          ć…ŹćŒç€ș䟋

          仄䞋ç€șäŸ‹æèż°äș†ćŠ‚äœ•ć°†æ—„æœŸć­—æź”èœŹæąäžș旄期/æ—¶é—Žć­—æź”ă€‚ćźƒäœżç”š OriginDateTime 搈ćč¶ć­—æź”äž­çš„æ—„æœŸèŽ·ćŸ—ä»Žè‡Ș漚äč‰ć­—æź”è°ƒç”šæˆ‘çš„æ—„æœŸć­—æź”ćŽçš„ć€©æ•°ă€‚ç„¶ćŽïŒŒć°†ć€©æ•°æ·»ćŠ ćˆ° OriginDateTime ć€Œă€‚

          $System.OriginDatetime + ( My_Date_Field__c - DATEVALUE($System.OriginDatetime) )

          OriginDateTime 朹 GMT 时ćŒșć†…ïŒŒäœ†æ˜Żç»“æžœæ˜Ÿç€șćœšç”šæˆ·æœŹćœ°æ—¶ćŒș憅。

          æ”ă€èż›çš‹ć’Œ Visualforce ç€ș䟋

          äž‹äŸ‹èźĄçź—è‡Ș 1900 ćčŽ 1 月 1 æ—„ç»èż‡çš„ć€©æ•°ïŒš

          {!NOW() - $System.OriginDateTime}
          æŠ€ć·§æç€ș

          æ­€ć…šć±€ć˜é‡ćŻç”šäșŽïŒš

          • é»˜èź€ć€Œ
          • 攁
          • è‡Ș漚äč‰ć­—æź”ă€èż›çš‹ć’Œć·„äœœæ”è§„ćˆ™äž­çš„ć…ŹćŒ
          • ć·„äœœæ”ć­—æź”æ›Žæ–°æ“äœœ
          • Visualforce éĄ”éąć’Œ S-control

          $User

          æèż°ïŒš ćœ“ćŒ•ç”šćœ“ć‰ç”šæˆ·çš„äżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚ç”šæˆ·ćˆćč¶ć­—æź”ćŻä»„ćŒ•ç”šç”šæˆ·äżĄæŻïŒˆćŠ‚ćˆ«ćă€æ ‡éą˜ć’Œ IDïŒ‰ă€‚ćœšç”šæˆ·æ ‡ć‡†ćŻčè±ĄäžŠçš„ćŻç”šçš„ć€§éƒšćˆ†ć­—æź”äčŸćœš $User 侊揯甹。
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$User。
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ $User.Username。
          éȘŒèŻè§„ćˆ™ç€ș䟋

          æ­€éȘŒèŻè§„ćˆ™ć…ŹćŒćŒ•ç”šäș†ćœ“ć‰ç”šæˆ·çš„ IDïŒŒä»„çĄźćźšćœ“ć‰ç”šæˆ·æ˜ŻćŠæ˜Żèź°ćœ•æ‰€æœ‰äșșă€‚äœżç”šç±»äŒŒçš„äŸ‹ć­çĄźäżćȘæœ‰èź°ćœ•æ‰€æœ‰äșșæˆ–æ‹„æœ‰çźĄç†ć‘˜çź€æĄŁçš„ç”šæˆ·ćŻä»„æ›Žæ”č損äžșäžȘäșșç›źæ ‡çš„è‡Ș漚äč‰ć­—æź”

          AND(
              ISCHANGED( Personal_Goal__c ), 
              Owner <> $User.Id, 
              $Profile.Name <> "Custom: System Admin" 
          )
          攁ç€ș䟋

          戛ć»șćŒ…ć«æ­€èĄšèŸŸćŒçš„æ”ć…ŹćŒïŒˆæ–‡æœŹïŒ‰ă€‚

          {!$User.FirstName} & “ “ & {!$User.LastName}

          戛ć»șèŻ„ć…ŹćŒćŽïŒŒćŻćœšæ‚šéœ€èŠæ čæźćç§°ćœšæ”äž­è°ƒç”šç”šæˆ·çš„ä»»äœ•ćœ°æ–čèż›èĄŒćŒ•ç”šă€‚é€šèż‡ćŒ•ç”š $User ć…šć±€ć˜é‡ïŒŒæ‚šćŻä»„éżć…äœżç”šé’ˆćŻčæ”é™ćˆ¶èźĄæ•°çš„ Get Records 慃箠。

          Visualforce ç€ș䟋

          æ­€ç€ș䟋星ç€șćœ“ć‰ç”šæˆ·çš„ć…Źćžćç§°ä»„ćŠćœ“ć‰ç”šæˆ·çš„çŠ¶æ€ïŒˆèż”ć›žćžƒć°”ć€ŒïŒ‰ă€‚

          <apex:page>
              <h1>Congratulations</h1>
              <p>This is your new Apex Page</p>
              <p>
                  The current company name for this user is: {!$User.CompanyName}
              </p>
              <p>
                  Is the user active?
                  {!$User.isActive}
              </p>
          </apex:page>
          æŠ€ć·§æç€ș
          • ćœ“ć‰ç”šæˆ·æ˜Żæ›Žæ”č提ç€șé»˜èź€ć€Œă€éȘŒèŻè§„ćˆ™æˆ–ć…¶ä»–äœżç”šäș†èż™äș›ć…šć±€ćˆćč¶ć­—æź”æ“äœœçš„èź°ćœ•çš„äșș。
          • ćœ“ćœšçșżäžȘæĄˆæˆ–ćœšçșżæœœćœšćźąæˆ·èż‡çš‹æ›Žæ”čäș†èź°ćœ•ïŒŒćˆ™ćœ“ć‰ç”šæˆ·æ˜Żé»˜èꀿœœćœšćźąæˆ·æ‰€æœ‰äșșæˆ–é»˜èź€äžȘæĄˆæ‰€æœ‰äșș。
          • èż›çš‹æ‰§èĄŒèźĄćˆ’æ“äœœäž”ćŻćŠšèż›çš‹çš„ç”šæˆ·æœȘ怄äșŽæŽ»ćŠšçŠ¶æ€æ—¶ïŒŒ$User ćŒ•ç”šé»˜èź€ć·„äœœæ”ç”šæˆ·ă€‚ć·„äœœæ”è§„ćˆ™äž­ćŸșäșŽæ—¶é—Žçš„æ“äœœä蟿˜ŻćŠ‚æ­€ă€‚
          • 侀äș› $User 搈ćč¶ć­—æź”ćŻćœšç§»ćŠšé…çœźç­›é€‰ć™šäž­äœżç”šă€‚

          $User.UITheme 撌 $User.UIThemeDisplayed

          æèż°ïŒš

          èż™äș›ć…šć±€ćˆćč¶ć­—æź”æ ‡èŻ†ç”šæˆ·ćœšæŒ‡ćźšçœ‘éĄ”äžŠçœ‹ćˆ°çš„ Salesforce çš„ć€–è§‚ă€‚

          èż™äž€äžȘ揘量äč‹é—Žçš„ć·źćˆ«ćœšäșŽ $User.UITheme èż”ć›žç”šæˆ·éą„èźĄçœ‹ćˆ°çš„ć€–è§‚ïŒŒè€Œ $User.UIThemeDisplayed ćˆ™èż”ć›žç”šæˆ·ćźžé™…çœ‹ćˆ°çš„ć€–è§‚ă€‚äŸ‹ćŠ‚ïŒŒç”šæˆ·ćŻèƒœæ‹„æœ‰éŠ–é€‰éĄčć’Œæƒé™æ„æŸ„çœ‹ Lightning Experience ć€–è§‚ïŒŒäœ†ćŠ‚æžœä»–ä»Źæ­Łäœżç”šäžæ”ŻæŒèŻ„ć€–è§‚çš„æ”è§ˆć™šïŒˆäŸ‹ćŠ‚ïŒŒèŸƒæ—§ç‰ˆæœŹçš„ Internet Explorer$User.UIThemeDisplayed ć°†èż”ć›žäžćŒçš„ć€Œă€‚

          äžæ”ŻæŒćœšäžćŒçš„æ”è§ˆć™šé€‰éĄčćĄæˆ–çȘ—ćŁäž­èżèĄŒ Classic 撌 Lightning ExperienceïŒŒèż™ćŻèƒœäŒšćŻŒè‡Žç»„ç»‡çš„ć€–è§‚ć’Œæ„Ÿè§‰ä»„ćŠ $User.UITheme 撌 $User.UIThemeDisplayed ć­—æź”èż”ć›žçš„ć€Œć‡șçŽ°æ„ć€–èĄŒäžșă€‚äŸ‹ćŠ‚ïŒŒćŠ‚æžœèŽ”ç»„ç»‡æ­Łćœšäœżç”š Lightning ExperienceïŒŒäœ†ćœšäžćŒæ”è§ˆć™šé€‰éĄčćĄäž­ćˆ‡æąćˆ° ClassicïŒŒèż™äș›ć­—æź”äŒšćœšäž€äžȘ选éĄčćĄäž­èż”ć›ž Classic äž»éą˜ă€‚

          äœżç”šïŒš

          äœżç”šèż™äș›ć˜é‡æ„æŒ‡ćźšç”šäșŽć‘ˆçް Salesforce çœ‘éĄ”ç»™ç”šæˆ·çš„ CSS。䞀äžȘć˜é‡éƒœäŒšèż”ć›žć…¶äž­äž€äžȘć€Œă€‚

          • Theme1 — èż‡æ—¶çš„ Salesforce 䞻鹘
          • Theme2— Salesforce Classic 2005 ç”šæˆ·ç•Œéąäž»éą˜
          • Theme3—Salesforce Classic 2010ç”šæˆ·ç•Œéąæ–čæĄˆ
          • Theme4dâ€”çŽ°ä»Łâ€œLightning Experience” Salesforce æ–čæĄˆ
          • Theme4t — Salesforce 移抚ćș”甚皋ćșäž»éą˜
          • Theme4u- Lightning Console 䞻鹘
          • PortalDefault — Salesforce ćźąæˆ·ć…„ćŁçœ‘ç«™äž»éą˜
          • Webstore— AppExchange 䞻鹘
          Visualforce ç€ș䟋

          䞋䟋星ç€șäș†ćŠ‚äœ•ćŸșäșŽç”šæˆ·æ–čæĄˆć‘ˆçŽ°äžćŒćžƒć±€ïŒš

          <apex:page>
              <apex:pageBlock title="My Content" rendered="{!$User.UITheme == 'Theme2'}">
                  // this is the old theme...
              </apex:pageBlock>
          
              <apex:pageBlock title="My Content" rendered="{!$User.UITheme == 'Theme3'}">
                 // this is the classic theme ...
              </apex:pageBlock>
          </apex:page>

          $UserRole

          æèż°ïŒš ćœ“ćŒ•ç”šćœ“ć‰ç”šæˆ·è§’è‰ČäżĄæŻæ—¶èŠäœżç”šçš„ć…šć±€ćˆćč¶ć­—æź”ç±»ćž‹ă€‚è§’è‰Č搈ćč¶ć­—æź”ćŻä»„ćŒ•ç”šćŠ‚è§’è‰Čćă€ć€‡æłšć’Œ ID ç­‰äżĄæŻă€‚
          äœżç”šïŒš
          • é€‰æ‹©ć­—æź”ç±»ćž‹ïŒš$UserRole。
          • é€‰æ‹©ćˆćč¶ć­—æź”ïŒŒćŠ‚ $UserRole.Name。
          éȘŒèŻè§„ćˆ™ç€ș䟋

          æ­€éȘŒèŻè§„ćˆ™ć…ŹćŒćŒ•ç”šäș†ç”šæˆ·è§’è‰ČćïŒŒä»„éȘŒèŻćäžșæŠ˜æ‰Łç™Ÿćˆ†æŻ”çš„è‡Ș漚äč‰ć­—æź”æČĄæœ‰è¶…ć‡șèŻ„è§’è‰Čć…èźžçš„æœ€ć€§ć€ŒïŒš

          Discount_Percent__c > VLOOKUP(
              $ObjectType.Role_Limits__c.Fields.Limit__c,
              $ObjectType.Role_Limits__c.Fields.Name, 
              $UserRole.Name
          )
          èż›çš‹ă€æ”ć’Œ Visualforce ç€ș䟋
          {!$UserRole.LastModifiedById}
          æŠ€ć·§æç€ș
          • ćœ“ć‰ç”šæˆ·æ˜Żæ›Žæ”č提ç€șé»˜èź€ć€Œă€éȘŒèŻè§„ćˆ™æˆ–ć…¶ä»–äœżç”šäș†èż™äș›ć…šć±€ćˆćč¶ć­—æź”æ“äœœçš„èź°ćœ•çš„äșș。
          • ćœ“ćœšçșżäžȘæĄˆæˆ–ćœšçșżæœœćœšćźąæˆ·èż‡çš‹æ›Žæ”čäș†èź°ćœ•ïŒŒćˆ™ćœ“ć‰ç”šæˆ·æ˜Żé»˜èꀿœœćœšćźąæˆ·æ‰€æœ‰äșșæˆ–é»˜èź€äžȘæĄˆæ‰€æœ‰äșș。
          • èż›çš‹æ‰§èĄŒèźĄćˆ’æ“äœœäž”ćŻćŠšèż›çš‹çš„ç”šæˆ·æœȘ怄äșŽæŽ»ćŠšçŠ¶æ€æ—¶ïŒŒ$UserRole ćŒ•ç”šé»˜èź€ć·„äœœæ”ç”šæˆ·çš„è§’è‰Čă€‚ć·„äœœæ”è§„ćˆ™äž­ćŸșäșŽæ—¶é—Žçš„æ“äœœä蟿˜ŻćŠ‚æ­€ă€‚

          æ‚šäžèƒœćœš Visualforce äž­äœżç”šèż™äș›$UserRoleć€ŒïŒš

          • CaseAccessForAccountOwner
          • ContactAccessForAccountOwner
          • OpportunityAccessForAccountOwner
          • PortalType
           
          æ­ŁćœšćŠ èœœ
          Salesforce Help | Article