Dynamic translation Attribute on portal view
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-29-2025 03:27 AM
Hello,
I have an attribute which on enabling that in the field of a table, it translates the value of the field from English to my desired language in the platform view. Now I want to configure the same attribute in the portal view of the same form. How can I do that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-29-2025 05:34 AM
Hello @Ehab Pilloor
But that is only for work notes and comments right? I want for a specific field, for which I have an attribute which I have enabled. So I want for that field in portal view.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-29-2025 06:56 AM
Hi @PrakharM,
There's no OOTB support for Dynamic Translation for fields in Portal view, but as Ankur has provided the link: How to Dynamically Translate Portal Content - Unofficial Guide , maybe you could build it in your instance. OOTB, Dynamic Translation supports translating HTML and string fields in native and workspace view, activity stream and translating knowledge articles.
Regards,
Ehab
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-03-2025 12:34 AM
@Ehab Pilloor , Can I use a UI Macro for the same functionality? Not sure though.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-03-2025 12:40 AM
you can use a widget to handle this and somehow add that widget on your portal page.
something like this but please enhance, I just used hard-coded values, but you can make some API call which translates and shows the value to you
HTML:
<div class="container">
<h2>English to Spanish Translator</h2>
<div class="form-group">
<label for="englishText">Enter English Text:</label>
<textarea class="form-control" id="englishText" rows="3"></textarea>
</div>
<button class="btn btn-primary" id="translateBtn">Translate</button>
<div class="form-group mt-3">
<label for="spanishText">Spanish Translation:</label>
<textarea class="form-control" id="spanishText" rows="3" readonly></textarea>
</div>
</div>
Client Controller:
api.controller = function() {
/* widget controller */
var c = this;
c.translate = function() {
var englishText = document.getElementById('englishText').value;
if (!englishText.trim()) {
alert('Please enter some text to translate.');
return;
}
// In a real-world scenario, you would call a REST API or Script Include here.
// For demo, we use a simple mock translation.
var mockTranslations = {
"hello": "hola",
"good morning": "buenos dÃas",
"thank you": "gracias",
"please": "por favor",
"how are you": "¿cómo estás?"
// Add more as needed
};
var spanishText = mockTranslations[englishText.toLowerCase()] ||
"Sorry, translation not found. For real translations, connect to a translation API.";
document.getElementById('spanishText').value = spanishText;
};
// Attach event handler
angular.element(document).ready(function() {
document.getElementById('translateBtn').onclick = c.translate;
});
};
CSS:
.container { padding: 20px; }
.form-group { margin-bottom: 15px; }
#translateBtn { margin-bottom: 15px; }
Output:
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-03-2025 01:01 AM
@PrakharM, sorry I am not familiar with UI Macro. I have implemented Dynamic Translation in my PDI and organisation and referred the knowledge I gained for answering your question. You can try what Ankur has suggested.
You can refer https://www.servicenow.com/docs/bundle/yokohama-api-reference/page/app-store/dev_portal/API_referenc... for reference.
Regards,
Ehab Pilloor