Hot answers tagged

16

There are a number of APIs available for SDL Tridion. Here's an overview: TOM.NET - The CMS templating API, written in .NET, runs on the CM machine Core Service - A .Net web service API, allows you to interact with items in the CMS from another machine than the CMS server itself. Content Delivery - This is a front end API allowing you to work with ...


16

Session.IsExistingObject Method will not throw exception


13

The LoadFlags differs a lot than say the ListBaseColumns enumeration, in that its actually a flag based property and not just a standard enum. While ListBaseColumns allows you to choose only ONE of the options, the LoadFlags lets you add mix and match by choosing one or many of the options. When you create a new ReadOptions(), the LoadFlags property is set ...


9

The TOM.NET API in 2009 was read-only, so your only option is the TOM API, and for .NET code, you can use the TOM Interop DLLs. You will need to reference Tridion.ContentManager.Interop.cm_tom.dll and Tridion.ContentManager.Interop.cm_defines.dll (found in the [Tridion]\bin\client\PIA folder on your CMS) Then you can use the TOM API in your .NET code (...


9

As hinted at by Nick, the Criteria.AddCriteria method doesn't return a Criteria object, so you can't assign it as you're trying to. What you probably want is something like this: searchCriteria.AddCriteria(finalCriteria); myCriteria = searchCriteria; Note that if you do this, searchCriteria and myCriteria will be the same object instance, so changes to one ...


8

If you have valid sdl tridion world user id, you can download various resources including CHM files, manuals and whitepapers for various APIs. Below picture shows the link from where you can download the API documentations once you are logged into the SDL Tridion World


7

I always suggest for new Tridion developers to choose a site (news sites work well) and try to build this in Tridion, from the beginning. This means you will: Define the Blueprint Create Schemas Create Templates with the design of the chosen site Use Broker API to get Dynamic content (Java or .Net) Optionally, use DD4T + .Net MVC to build the site Then, ...


7

You can find 'Release notes' associated with each version of SDL Tridion in the online documentation. For example, these can be found on the PDF documentation downloads page in the online documentation for SDL Tridion 2013 SP1. This document is described as: The release notes describes new features, changed features, what has been fixed in this ...


7

The Import Export API was introduced in Tridion 2013 SP1. Previous versions have to make use of Content Porter. See also this documentation page (requires login)


6

Brilliant response from Alex, to answer your question from another angle though; you can avoid constantly passing a new instance by declaring a number of static instances. Review the use cases where you're accessing Core Service and what levels of data you're likely to need back. Then classify those data levels for easy access and maintenance. For example:...


6

The Content Delivery Web Service is mainly for delivery of content that is already managed and/or published by Tridion. To interact with the Content Manager programmaticaly, the recommended extension point is the Content Manager Core Service. From the online documentation (requires login): The Core Service is a Web service that allows applications to ...


6

After going through all possible API's, I got a solution to retrieve component template based on component template names. Mainly you need to use ItemTitleCriteria to retrieving the component templates by names. Thanks to @NickoliRoussakov for the clue given. using (ItemTypeCriteria mItemTypeCriteria = new ItemTypeCriteria(32)) { using (...


6

I have written a small tutorial about creating a core service client and reading checked-out items here. The Core Service DLL is in the Tridion/bin/client folder and is referenced in Visual Studio. Together, with the config, this will allow you to connect to Tridion. You don't need to be on the server for it to work, as long as the ports are open. Most of ...


5

Here are a couple of issues with your logic: new KeywordCriteria(yearTaxonomyId, yearIds.ToArray()) creates a criteria where an item is tagged with all the Keywords in your array. You seem to be looking for OR here. So you will need to create individual KeywordCriteria for each year and OR them together. new KeywordCriteria(yearTaxonomyId, yearIds.ToArray(...


5

I didn't find tridion constants in Core Service DLL but I'm using Tridion.Common.dll for all the Tridion Constants Example: Tridion.Constants.TcmNamespace Tridion.Constants.XlinkNamespace


5

I hope the below picture helps with a very high level comparison of various SDL Tridion version from R5.x through 2013


5

Selection is a parent class of selections for Export, such as GroupsSelection, SubtreeSelection, etc. More about selections you can read in following blog: http://tridioninternals.blogspot.nl/2014/01/selecting-items-to-export.html In your case I suspect you want to export list of tcm-uris or webdav urls, which you read from file. In this case you should use ...


5

Binding for TM SOAP service looks like this Binding is netTcpBinding: <netTcpBinding> <binding name="TmNetTcpBinding" maxReceivedMessageSize="2147483647" receiveTimeout="00:10:00" sendTimeout="00:10:00"> <readerQuotas maxArrayLength="2147483647" maxStringContentLength="2147483647"/> </binding> </...


4

I don't believe this is possible via the CD API since it is designed to work within a specific context publication. However, you can publish your own hierarchy in form of XML similar to the concept of publishing PageList.xml for SG-based navigation. Also check out this post on language switchers in Tridion: http://www.tridiondeveloper.com/tridion-language-...


4

You could use the Tridion Content Manager Core Service in Tridion 2011. This is a web service that will allow you access to the items within the CMS (provided that you have permission). The Tridion 2011 SP1 documentation for the Core Service can be found in the online here: http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/...


4

If I understand your question correctly. You need to retrieve description for a keyword. To achieve that you can use the getTaxonomyKeyword method on a instance of TaxonomyFactory class to return a Keyword object. And on the Keyword object you can call the getDescription method to retrive the description of the keyword. TaxonomyFactory tax = new ...


4

I thought the argument was always required. I guess it didn't always validate it correctly. Anyway, you could check for null or TcmUri.IsValid before trying to parse it and use a default value of TcmUri.UriNull if you want it to work the same as before. That does require code changes but I don't see any way around that.


4

Yes 100% Assuming you are using Tridion 2011 or later, SDL Tridion Core Service is the interface to interact with the content management system. You can start with Ryan's blog post, which matches your requirements pretty closely: http://www.building-blocks.com/thinking/creating-custom-pages-using-the-core-service-in-sdl-tridion-2011/ Ryan also has ...


4

As far as I can see, there is no "meaningful API documentation" that I can find either. There are, however, various tutorials online on putting together GUI extensions, for example: Validating content on save: http://www.curlette.com/?p=913 Various useful snippets: https://github.com/TridionPractice/tridion-practice/wiki/AnguillaSnippets Bear in mind ...


4

There is no dedicated "sharing API" available, but you can more or less easily integrate your application with any other (services, applications, feeds, whatnot). The way how you do this depends on the type of your application, MVC based (DD4T, DXA), "old style" (Web Forms, JSPs), single page app, etc. I have worked on an application which had sharing ...


4

Since it is a multi-valued RTF, you need to be using MultipleValues property in NameValuePair as opposed to Value. I was able to get all values in a multi-valued RTF in Java using the next code snippet. The Java equivalent is getMultipleValues(). @GetMapping(value = "/getnotifications") public @ResponseBody String getNotifications() throws Exception{ ...


4

I don't think anything specific to Webbdav url is changed in Web 8.5. Probably underlying framework is handling url encoding a bit differently. If you do Url decoding of both Webbdav paths, you would see two identical strings.


4

So assuming your publishing your Structure Group information then this should be stored in the TAXFACETS table alongside other taxonomy information (categories and keywords). The following works: var filter = new InputItemFilter(); filter.ItemTypes = new List<FilterItemType>() { FilterItemType.PAGE }; filter.PublicationIds = new List<int?>() { 5 }...


3

In your case kwField.Value will return Keyword object. There you have Metadata property. So your code would look something like this: ... KeywordField kwField = (KeywordField)schemaFields["ProductType"]; Keyword kw = kwField.Value; ItemFields metadataFields = new ItemFields(kw.Metadata, kw.MetadataSchema);


3

Could you try following. this should provide xml with required info, then you need to parse that XML. so here yourcomponent is the component returned by GetItems method yourComponent.GetXml(XMLReadFilter.XMLReadPublishInfoDetails); Or yourComponent.GetXml(XMLReadFilter.XMLReadPublishInfo) Or yourComponent.GetXml(XMLReadFilter.XMLReadPublishInfo | ...


Only top voted, non community-wiki answers of a minimum length are eligible