forceCommunity:routeLink
指定されたレコード ID から自動的に生成される href 属性を定義した HTML アンカータグを設定します。このタグは、テンプレートに基づくコミュニティで SEO リンクエクイティを改善するために使用します。
href 属性は指定されたレコード ID から自動的に生成されるため、forceCommunity:routeLink は、記事の詳細ページやケースの詳細ページなど、コミュニティの recordId ベースのページへの内部リンクの作成にのみ適しています。
内部リンクは、SEO に対応するサイト階層を確立し、リンクエクイティ (またはリンクジュース) をコミュニティのページに分散させるうえで役立ちます。
次に、forceCommunity:routeLink コンポーネントの例を示します。
1<aura:component implements="forceCommunity:availableForAllPageTypes">
2 <aura:attribute name="recordId" type="String" default="500xx000000YkvU" />
3 <aura:attribute name="routeInput" type="Map"/>
4 <aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
5 <forceCommunity:routeLink id="myCaseId" class="caseClass" title="My Case Tooltip" label="My Case Link Text" routeInput="{!v.routeInput}" onClick="{!c.onClick}"/>
6</aura:component>リンクを作成するには、初期化中にクライアント側コントローラで routeInput 属性のレコード ID を設定します。リンクをクリックすると、レコードページに移動できます。
1({
2 doInit : function(component, event, helper) {
3 component.set('v.routeInput', {recordId: component.get('v.recordId')});
4 },
5
6 onClick : function(component, event, helper) {
7 var navEvt = $A.get("e.force:navigateToSObject");
8 navEvt.setParams({
9 "recordId": component.get('v.recordId')
10 });
11 navEvt.fire();
12 }
13})前の例によって次のアンカータグが表示されます。
1<a class="caseClass" href="/myCommunity/s/case/500xx000000YkvU/mycase"
2 id="myCaseId" title="My Case Tooltip">My Case Link Text</a>属性
| 属性名 | 属性型 | 説明 | 必須項目? |
|---|---|---|---|
| body | Component[] | コンポーネントのボディ。マークアップでは、これはタグのボディに含まれるすべてを指します。 | |
| class | String | アンカータグの CSS クラス。 | |
| id | String | アンカータグの ID。 | |
| label | String | リンクに表示されるテキスト。 | |
| onClick | Action | アンカーがクリックされたときにトリガされるアクション。 | |
| routeInput | HashMap | リンクを作成する動的パラメータの対応付け。recordId ベースのルートのみがサポートされます。 | はい |
| title | String | リンクツールチップに表示するテキスト。 |