Send Dependent Items Check Box
There are multiple places to configure the behavior of the Send Dependent Items check box, which is displayed in:
- the Choose Items page of the Bulk Translation wizard
- the Automatic Item Export for Translation dialog box
For a description of the default behavior of this check box, see Understanding the Send Dependent Items Check Box.
1 - Configuring the Behavior of the Send Dependent Items Check Box in the Configuration File
The Send Dependent Items check box is displayed in:
- the Choose Items page of the Bulk Translation wizard
- the Automatic Item Export for Translation dialog box
By default, if the Send Dependent Items check box is selected, the Connector sends out data source items from the layout and final layout of the item itself. For a detailed illustration and scenarios of the default behavior of the Send Dependent Items check box, see Understanding the Send Dependent Items Check Box.
Alternatively, you can develop your own pipeline to determine which dependent items the Connector sends for translation when this check box is selected. You configure this pipeline in the <pipelines> section of the Website_root/Website/App_Config/Include/CT3Translation.config configuration file. If the Send Dependent Items check box is selected and the pipeline is defined, then when you run the Bulk Translation wizard:
-
The Connector calls the pipeline for each selected item.
-
On its own, the pipeline finds dependent items recursively.
Important: The pipeline overrides the default Connector behavior of sending out only data source items of the item itself. The Connector does not call the pipeline again using a dependent item as a source for recursively searching for additional dependent items.
- The Connector adds the results to the list of items to send out for translation.
To develop a pipeline:
- Insert the logic to recursively determine all dependent items of an item to send out for translation, similar to the following example:
<CustomRecursiveDependentItemsPipeline>
<!-- Insert the logic to recursively determine all dependent items of an item to send out for translation.
–>
<processor type=“Your.Class, Your.Assembly” method=“getDependentItems”/>
</CustomRecursiveDependentItemsPipeline>
- Ensure that the processor method has the following signature:
public void getDependentItems(ClayTablet.SC.Pipelines.DependentItemsPipelineArgs args);
- Use the args parameter to retrieve information about a source item. You will search for dependent items of this source:
public class DependentItemsPipelineArgs {
String ItemDatabase { get; }
String ItemId { get; }
String SourceLanguage { get; }
String SourceVersion { get; }
String[] TargetLanguages { get; }
List<String> DependentItems { get; }
}
- Insert the item IDs of all dependent items of the source item into the DependentItems that the pipeline returns.
2 - Configuring the Behavior of the Send Dependent Items Check Box in the Sitecore User Interface
The Send Dependent Items check box is displayed in:
- the Choose Items page of the Bulk Translation wizard
- the Automatic Item Export for Translation dialog box
By default, if the Send Dependent Items check box is selected, the Connector sends out data source items from the layout and final layout of the item itself. For a detailed illustration and scenarios of the default behavior of the Send Dependent Items check box, see Understanding the Send Dependent Items Check Box.
You can configure the Connector to exclude dependent content items by their paths or templates if the Send Dependent Items check box is selected.
-
In the Content Editor, in the content tree, navigate to /sitecore/system/Settings/Lionbridge Settings/Lionbridge Connector Settings/.
-
Click the Lionbridge Connector Settings item to select it and open it in the content area.
-
Scroll down to the Dependent items section.
- Specify one or more of the following options:
Option |
Description |
Templates |
Enter the ID of each template whose content items you want to include as dependent items, if the Send Dependent Items check box is selected. Separate multiple template IDs with a pipe ( | ). If this field is blank, then all templates are included.
Tip: The template ID is located in the Item ID field of the Quick Info section of the template. |
Excluded Paths |
Enter the paths of content items you want to exclude as dependent items, if the Send Dependent Items check box is selected. Separate multiple paths with a pipe ( | ). |
Include children of dependent items |
Select this check box to automatically include branches under dependent items.
Note: This setting applies only to items not excluded by the Templates or Excluded Paths fields, described above. |
- Click the Save button in the top-left corner to save your changes.
3 - Understanding the Send Dependent Items Check Box
The Send Dependent Items check box is displayed in:
- the Choose Items page of the Bulk Translation wizard
- the Automatic Item Export for Translation dialog box
The following diagram and scenarios illustrate which data sources the Send Dependent Items check box sends to translation by default.
Note: The behavior of the Send Dependent Items check box is configurable. For detailed configuration instructions, refer to the Lionbridge Connector for Sitecore Installation and Configuration Guide.
`-- sitecore
|-- content
| `-- home
| |-- pages
| | |-- page 1 Datasource: /sitecore/content/home/partials/about us/
| | |-- page 2 Datasource: /sitecore/content/home/components/component 2
| | |-- page 3
| | `-- page 4
| |-- partials
| | |-- about us Datasource: /sitecore/content/home/components/component 2
| | | `-- more details page
| | `-- more info
| `-- components
| |-- component 1
| |-- component 2 Datasources: (empty)
| | |-- sub-component 1
| | `-- sub-component 2
| |-- component 3
| `-- component 4
`-- system
Scenario 1
When sending the single item /sitecore/content/home/pages/page 1 for translation:
- /sitecore/content/home/pages/page 1 is included as the item
- /sitecore/content/home/partials/about us is included as the dependent item
- /sitecore/content/home/components/component 2 is included as the dependent item of the dependent item
Children of about us and component 2are not included, because these are not dependent items of dependent items: rather, they are children of dependent items.
Scenario 2
When sending the single item /sitecore/content/home/pages/page 2 for translation:
- /sitecore/content/home/pages/page 2 is included as the item
- /sitecore/content/home/components/component 2 is included as the dependent item
Children of component 2are not included, because these are not dependent items of dependent items: rather, they are children of dependent items.
Scenario 3
When sending the branch /sitecore/content/home/pages for translation:
- /sitecore/content/home/pages/page 1 is included as the item
- /sitecore/content/home/partials/about us is included as the dependent item
- /sitecore/content/home/components/component 2 is included as the dependent item of the dependent item
- /sitecore/content/home/pages/page 2 is included as the item
- /sitecore/content/home/pages/page 3 is included as the item
- /sitecore/content/home/pages/page 4 is included as the item
Children of component 2are not included, because the branch of /sitecore/content/home/pages is sent for translation: the branch of component 2 is not sent for translation.