You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 17/umbraco-cms/customizing/property-editors/full-examples-value-converters.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Property Value Converter full example
2
-
This page includes an example of a complete Property Value Converter. The example is that of a Property Value Converter for a Content Picker, where the user picks a node from the Umbraco tree.
3
2
3
+
This page includes an example of a complete Property Value Converter. The example is that of a Property Value Converter for a Content Picker, where the user picks a node from the Umbraco tree.
Copy file name to clipboardExpand all lines: 17/umbraco-cms/customizing/property-editors/property-value-converters.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,11 +9,13 @@ A Property Value Converter converts a property editor's database-stored value in
9
9
For example, a Content Picker stores the Key of the picked node in the database. When reading published data, Umbraco returns an `IPublishedContent` object instead of the Key. This conversion is done by a Property Value Converter.
10
10
11
11
A Property Value Converter has three conversion levels:
12
+
12
13
***Source** - The raw data stored in the database; this is generally a `string`.
13
14
***Intermediate** - An object of a type that is appropriate to the property. For example, a node Key should be a `Guid`, or a collection of node Keys would be a `Guid[]`.
14
15
***Object** - The object to be used when accessing the property using the Published Content API. For example, the object returned by the `IPublishedContent.Value<T>(alias)` method. Additionally, the Models Builder generates a property of the same type as the object.
15
16
16
17
## Create a Property Value Converter
18
+
17
19
A class becomes a Property Value Converter when it implements the `IPropertyValueConverter` interface from the `Umbraco.Cms.Core.PropertyEditors` namespace. Property Value Converters are automatically registered when implementing the interface. Any given PropertyEditor can only utilize a single Property Value Converter.
18
20
19
21
```csharp
@@ -27,6 +29,7 @@ Consider using the `PropertyValueConverterBase` class as the base of your Proper
27
29
The `IPropertyValueConverter` interfaceexposesthefollowingmethodsyouneedtoimplement:
The `IsValue` method determines whether a property contains a meaningful value or should be considered "empty" at different stages of the value conversion process. This method is essential for Umbraco's `property.HasValue()` method.
48
52
49
53
{% hint style="info" %}
@@ -125,6 +129,7 @@ Here you specify which level the property value is cached at.
125
129
A property value can be cached at the following levels:
126
130
127
131
#### `PropertyCacheLevel.Element`
132
+
128
133
This is the most commonly used cache level and should be your default, unless you have specific reasons to do otherwise.
129
134
130
135
The property value will be cached until its _element_ is modified. The element is what holds (or owns) the property. For example:
@@ -158,11 +163,15 @@ public PropertyCacheLevel GetPropertyCacheLevel(IPublishedPropertyType propertyT
158
163
```
159
164
160
165
## Implement conversion methods
166
+
161
167
Implement the methods that perform the conversion from a raw database value to an intermediate value and then to the final type. Conversions happen in two steps.
This method converts the raw data value into an appropriate intermediate type that is needed for the final conversion step to an object.
172
+
165
173
For example:
174
+
166
175
- A basic text property likely stores its data as a `string`, so that can be converted to a `string` intermediate value.
167
176
- A Content Picker stores the node identifier (`Udi`) as a `string`. To return `IPublishedContent`, the final conversion step needs a `Udi` instead. So in the intermediate step, check if the `string` value is a valid `Udi` and convert the `string` to a `Udi` as the intermediate value.
168
177
@@ -201,6 +210,7 @@ public object? ConvertIntermediateToObject(IPublishedElement owner, IPublishedPr
201
210
```
202
211
203
212
## Override existing Property Value Converters
213
+
204
214
To override an existing Property Value Converter, either from Umbraco or a package, additional steps are required. Deregister the existing one to prevent conflicts.
Copy file name to clipboardExpand all lines: 17/umbraco-engage/marketers-and-editors/profiling/README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
description: >-
3
3
Explore how the Profiles section helps track visitor sessions, manage
4
-
profiles, and differentiate between identified and anonymous visitors.
4
+
profiles, and differentiate between identified and unidentified visitors.
5
5
---
6
6
7
7
# Profiling
@@ -20,9 +20,9 @@ The graph shows the number of new identified visitors over the last 30 days.
20
20
21
21
The table displays an overview of the profiles per month.
22
22
23
-
## Identified versus Anonymous Profiles
23
+
## Identified versus Unidentified Profiles
24
24
25
-
As long as there is no data of a visitor, this profile is called "Anonymous". If a visitor [does not give consent](../../developers/introduction/the-umbraco-engage-cookie/module-permissions.md) to be identified, they remain "Anonymous".
25
+
As long as there is no data of a visitor, this profile is called "Unidentified". If a visitor [does not give consent](../../developers/introduction/the-umbraco-engage-cookie/module-permissions.md) to be identified, they remain "Unidentified".
26
26
27
27
However, once a visitor logs in (via Umbraco's Members section) or submits an Umbraco Form, they become an "Identified Profile." For example: If you see a visitor name in the Profiles table it is because the visitor has logged in as a member.
0 commit comments