Wyszukiwanie w treści załącznika do artykułu wiedzy
Możesz użyć załącznika artykułu wiedzy, aby dołączyć pliki do pobrania do artykułów bazy wiedzy. Można również użyć plików sieci Web, aby utworzyć stronę Często zadawane pytania z zawartością do pobrania.
Ważne
Można przeszukiwać tylko pliki, które są dołączane do artykułów merytorycznych. Pliki, które są dołączone do plików sieci Web nie mogą być przeszukiwane.
Można skonfigurować witrynę Power Pages, aby umożliwić użytkownikom wyszukiwanie w zawartości załączników do artykułów merytorycznych. Umożliwia to użytkownikom znajdowanie potrzebnych informacji.
W artykułach bazy wiedzy indeksowany jest każdy załącznik ze zdefiniowanym prefiksem.
Aby indeksować załączniki artykułów wiedzy, należy utworzyć następujące ustawienia witryny i ustawić ich wartość na Prawda:
Ustawienie witryny | Opis |
---|---|
Search/IndexNotesAttachments | Wskazuje, czy treść załączników w artykułach bazy wiedzy powinna być indeksowana. Domyślnie ustawiono na False. |
KnowledgeManagement/DisplayNotes | Wskazuje, czy wyświetlać załączniki artykułów bazy wiedzy. Domyślnie ustawiono na False. |
Podczas wyszukiwania terminu wyniki wyszukiwania również zawierają załączniki. Jeśli wyszukiwane hasło pasuje do załącznika artykułu wiedzy, podawany jest również link do odpowiedniego artykułu bazy wiedzy. Aby wyświetlić załączniki do pobrania, wybierz Pliki do pobrania w obszarze Typu rekordu w lewym okienku. Aby zmodyfikować etykietę Pliki do pobrania, edytuj fragment zawartości Wyszukiwanie/Aspekt/Pliki do pobrania. Domyślnie wartość ta została ustawiona na Pliki do pobrania.
Uwaga
Wyszukiwanie Dataverse musi być włączone w środowisku, aby można było używać tej funkcji.
Przeszukiwanie załączników do artykułów merytorycznych
Jeśli Twoja witryna korzysta z wyszukiwania platformy Lucene .NET, możesz umożliwić witrynie internetowej przeszukiwanie załączników do artykułów merytorycznych, ustawiając opcję Synchronizacja załączników do artykułów merytorycznych do witryny na Tak w centrum administracyjnym rozwiązania Dynamics 365 Customer Service lub aplikacji Centrum obsługi klienta. Nie trzeba konfigurować tej opcji, jeśli witryna korzysta z wyszukiwania Dataverse, więc domyślnie można przeszukiwać załączniki do artykułów merytorycznych.
Dzięki temu wyszukiwanie może przeglądać załączniki artykułów wiedzy i sprawiać, że informacje są łatwo dostępne dla konsumentów wiedzy. Dzięki tej możliwości dołączania nie będziesz musiał korzystać z załączników notatek dla witryny. Załączniki do artykułów wiedzy będą automatycznie synchronizowane z załącznikami do notatek. Więcej informacji: Zaktualizuj załączniki artykułów merytorycznych dla portalu
Konfiguracje aktualizowania witryny
Jeśli witryna należała do Ciebie wcześniej niż w kwietniu 2018 r. i została uaktualniona do najnowszej wersji, musisz użyć następujących konfiguracji, aby mieć taką samą funkcjonalność, jak użytkownik nowej instalacji portalu.
Wstawki zawartości
Aby zmodyfikować etykietę wyświetlaną w wynikach wyszukiwania dotyczących adnotacji i przeznaczonych do pobierania plików sieci Web, utwórz fragment zawartości Wyszukiwanie/Aspekt/Pliki do pobrania, a następnie ustaw jej wartość zgodnie z wymaganiami. Wartość domyślna to Pliki do pobrania.
Szablony sieci Web
Wyszukiwanie fasetkowe — szablon sieci Web Szablon wyników jest poprawiany, aby wyświetlał pliki skojarzone z artykułami w bazie wiedzy jako podstawowe elementy wyniku wyszukiwania z łączem do pokrewnego artykułu. Należy zaktualizować wyszukiwanie fasetkowe — szablon sieci web Szablon wyników do następujących źródła:
{% assign openTag = '{{' %}
{% assign closingTag = '}}' %}
{%raw%}
<script id="search-view-results" type="text/x-handlebars-template">
{{#if items}}
<div class="page-header">
<h2>{%endraw%}{{openTag}} stringFormat "{{ resx.Search_Results_Format_String }}" firstResultNumber lastResultNumber itemCount {{closingTag}}{%raw%}
<em class="querytext">{{{query}}}</em>
{{#if isResetVisible}}
<a class="btn btn-default btn-sm facet-clear-all" role="button" title="{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}" tabIndex="0">{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}</a>
{{/if}}
</h2>
</div>
<ul>
{{#each items}}
<li>
<h3><a title="{{title}}" href="{{url}}">{{#if parent}}<span class="glyphicon glyphicon-file pull-left text-muted" aria-hidden="true"></span>{{/if}}{{title}}</a></h3>
<p class="fragment">{{{fragment}}}</p>
{{#if parent}}
<p class="small related-article">{%endraw%}{{ resx.Related_Article }}{%raw%}: <a title="{{parent.title}}" href="{{parent.absoluteUrl}}">{{parent.title}}</a></p>
{{/if}}
<ul class="note-group small list-unstyled">
{{#if relatedNotes}}
{{#each relatedNotes}}
<li class="note-item">
{{#if isImage}}
<a target="_blank" title="{{title}}" href="{{absoluteUrl}}"><span class="glyphicon glyphicon-file" aria-hidden="true"></span> {{title}}</a>
{{else}}
<a title="{{title}}" href="{{absoluteUrl}}"><span class="glyphicon glyphicon-file" aria-hidden="true"></span> {{title}}</a>
{{/if}}
<p class="fragment text-muted">{{{fragment}}}</p>
</li>
{{/each}}
{{/if}}
{{#if relatedAttachments}}
{{#each relatedAttachments}}
<li class="note-item">
{{#if isImage}}
<a id="kbattachment-{{entityID}}" href="javascript:downloadKbAttachmentFile('kbattachment-{{entityID}}', '{{title}}', {{fileSize}}, '{{fileType}}', '{{downloadBlockUrl}}', '{{initializeDownloadUrl}}')"><span class="glyphicon glyphicon-file" aria-hidden="true"></span> {{title}}</a>
{{else}}
<a id="kbattachment-{{entityID}}" title="{{title}}" href="javascript:downloadKbAttachmentFile('kbattachment-{{entityID}}', '{{title}}', {{fileSize}}, '{{fileType}}', '{{downloadBlockUrl}}', '{{initializeDownloadUrl}}')"><span class="glyphicon glyphicon-file" aria-hidden="true"></span> {{title}}</a>
{{/if}}
<p class="fragment text-muted">{{{fragment}}}</p>
</li>
{{/each}}
{{/if}}
</ul>
</li>
{{/each}}
</ul>
{{else}}
<h2>{%endraw%}{{ resx.Search_No_Results_Found }}{%raw%}<em class="querytext">{{{query}}}</em>
{{#if isResetVisible}}
<a class="btn btn-default btn-sm facet-clear-all" role="button" title="{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}" tabIndex="0">{%endraw%}{{ snippets['Search/Facet/ClearConstraints'] | default: res['Search_Filter_Clear_All'] }}{%raw%}</a>
{{/if}}
</h2>
{{/if}}
</script>
<script type="text/javascript">
function downloadKbAttachmentFile(attachmentElementId, fileName, fileSize, mimeType, downloadBlockUrl, initializeUrl) {
// Download block API supports max 4MB block size
const blockSizeInBytes = 4096 * 1024;
const totalNumberOfBlocks = parseInt(fileSize / blockSizeInBytes + 1);
var fileContinuationToken = "";
var contentString = "";
var numberOfBlocksDownloaded = 0;
var blockNumberToContentMap = {};
function downloadBlockCallback(i, result) {
numberOfBlocksDownloaded++;
blockNumberToContentMap[i] = result;
if (numberOfBlocksDownloaded == totalNumberOfBlocks) {
for (var j = 0; j < totalNumberOfBlocks; j++) {
contentString += blockNumberToContentMap[j];
}
var isImage = mimeType.startsWith('image/');
const attachmentElement = document.getElementById(attachmentElementId);
if (isImage) {
const bodyByteString = atob(contentString);
const bodyBuffer = new ArrayBuffer(bodyByteString.length);
const bodyView = new Uint8Array(bodyBuffer);
for (var k = 0; k < bodyByteString.length; k++) {
bodyView[k] = bodyByteString.charCodeAt(k);
}
var imageUrl = URL.createObjectURL(new Blob([bodyBuffer], { type: mimeType }));
attachmentElement.href = imageUrl;
attachmentElement.target = "_blank";
}
else {
const linkSource = 'data:' + mimeType + ';base64,' + contentString;
attachmentElement.href = linkSource;
attachmentElement.download = fileName;
}
attachmentElement.click();
}
}
shell.ajaxSafePost({
type: 'GET',
url: initializeUrl,
success: function (result) {
fileContinuationToken = encodeURIComponent(result);
for (var i = 0; i < totalNumberOfBlocks; i++) {
url = downloadBlockUrl + "&blockNumber=" + i + "&fileContinuationToken=" + fileContinuationToken + "&blockSize=" + blockSizeInBytes;
var x = downloadBlockCallback.bind(this,i);
shell.ajaxSafePost({
type: 'GET',
url: url,
success: (result) => { x(result) }
});
}
}
});
}
</script>
{%endraw%}
Ustawienia witryny
Należy dodać wartość \_logicalname:annotation~0.9^0.25
do ustawienia witryny Wyszukiwanie/Zapytanie. Po dodaniu, wartość powinna wyglądać w następujący sposób:
+(@Query) \_title:(@Query) \_logicalname:knowledgearticle~0.9^0.3 \_logicalname:annotation~0.9^0.25 \_logicalname:adx_webpage~0.9^0.2 -\_logicalname:adx_webfile~0.9 adx_partialurl:(@Query) \_logicalname:adx_blogpost~0.9^0.1 -\_logicalname:adx_communityforumthread~0.9
Aby skonfigurować aspekty dla grup adnotacji związanych z artykułami z bazy wiedzy oraz plikami sieci Web w jednym aspekcie, edytuj nazwę ustawienia witryny Wyszukiwanie/RecordTypeFacetsEntities i dołącz ;Downloads:annotation,adx_webfile
do jego wartości.
Aby umożliwić pojawianie się załączników skojarzonych z artykułami merytorycznymi w witrynie internetowej i wynikach wyszukiwania, edytuj ustawienie witryny KnowledgeManagement/DisplayNotes i ustaw jego wartość na True (Prawda). Ustawienie witryny KnowledgeManagement/NotesFilter zawiera wartość prefiksu, która musi poprzedzać pole tekstu notatki na notatkach; tylko notatki o określonej wartości prefiksu będą widoczne na stronie internetowej. Domyślnie wartość ta to *WEB*, ale można ją zmienić za pomocą ustawienia witryny.
Aby włączyć indeksowania załączników plików skojarzone z notatkami, utwórz ustawienie witryny Search/IndexNotesAttachments i ustaw wartość na Prawda.