gpt4 book ai didi

confluence - 如何修改 Confluence 以允许重复的页面标题

转载 作者:行者123 更新时间:2023-12-04 16:53:04 46 4
gpt4 key购买 nike

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

2年前关闭。




Improve this question




我将 Confluence 用于文档,包括最终用户文档和内部开发文档。

Confluence 的问题是它不允许重复的页面标题,因为 URL 只包含标题而不是整个树结构。

有什么办法可以改变这种行为吗?

有一个插件可以做到这一点,还有更多。 “更多”部分是问题所在,因为该插件非常昂贵,特别是如果仅使用众多功能中的一项( https://marketplace.atlassian.com/plugins/com.k15t.scroll.scroll-versions )。

最佳答案

我们在向我们的 wiki 添加“虚拟 empoyee 文件夹”时遇到了同样的问题。我们想要构建以下页面结构:

Employee 1
Personal Data
Contract Data
Training
...
Employee 2
Personal Data
Contract Data
Training
...
Employee X
Personal Data
Contract Data
Training
...

我们用肮脏但非常有效的解决方法解决了这个问题:首先,我们通过添加特定于员工的前缀使页面名称唯一:
Employee 1
Employee 1 - Personal Data
Employee 1 - Contract Data
Employee 1 - Training
...
Employee 2
Employee 2 - Personal Data
Employee 2 - Contract Data
Employee 2 - Training
...
Employee X
Employee X - Personal Data
Employee X - Contract Data
Employee X - Training
...

我们定义了自己的“标签”来标记页面标题中不应该出现在 Confluence 前端的部分:
Employee 1
[hide]Employee 1 - [/hide]Personal Data
[hide]Employee 1 - [/hide]Contract Data
[hide]Employee 1 - [/hide]Training
...
Employee 2
[hide]Employee 2 - [/hide]Personal Data
[hide]Employee 2 - [/hide]Contract Data
[hide]Employee 2 - [/hide]Training
...
Employee X
[hide]Employee X - [/hide]Personal Data
[hide]Employee X - [/hide]Contract Data
[hide]Employee X - [/hide]Training
...

剩下的部分是由一个小的 JavaScript-Magic 完成的,它是通过 嵌入的。 Confluence 管理 > 自定义 HTML :
<script>(function() {

var expr = /\[hide\].*?\[\/hide\]/g,
blacklist = ['textarea', 'form', 'pre', 'script', 'style'];

$(document)
.ajaxSuccess(hideTextParts)
.on('ready', hideTextParts);

function isChildOfBlacklistedTag(node) {
while(node = node.parentNode) {
if (node.nodeType === Node.ELEMENT_NODE && blacklist.indexOf(node.nodeName.toLowerCase()) > -1) {
return true;
}
}
return false;
}

function hideTextParts() {
var root = document,
walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, null, false),
node;

while (node = walker.nextNode()) {
console.info(node.parentNode);
if (expr.test(node.textContent) && !isChildOfBlacklistedTag(node)) {
node.textContent = node.textContent.replace(expr, " ");
}
};
}

})();
</script>

黑名单确保“标签”不会隐藏在您需要显示的地方。例如,在页面编辑屏幕的标题字段中和在空间管理中的 CSS 编辑字段中。你可能想扩展到

关于confluence - 如何修改 Confluence 以允许重复的页面标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21020908/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com