14

非標準を脱出して維持することは可能ですか?テーブル内のテンプレートWikiマークアップのURLにあるような文字?

{| class="wikitable"
|-
! Test in Table
|-
| [http://example.org/{var1}|{var2}|{var3} Example]
|}

テーブルセルにこのようなものをレンダリングする必要があります

[http://example.org/1|2|3 Example]

とリンク

http://example.org/1|2|3

縦棒はそのままで、このようにエンコードされていません

http://example.org/1%7C2%7C3

サードパーティのWebサイトには«|»が必要です URLで、サーバー側のURL処理を修正しますが、それは今のところ私の手に負えません。回避策について何か助けはありますか?

私はこれらを試しました:

[http://example.org/1|2|3 Example] doesn't work within a table   
[http://example.org/{var1}|{var2}|{var3} Example] works in tables

ただし、どちらも有効な標準URLを作成します。この場合、垂直バーは上記のように%7Cとして適切にURLエンコードされますが、これは防止したいと思います。

4

2 に答える 2

6

[url description]追加の拡張機能によるサポートがない外部リンクは、構文またはプレーンURL自体によってのみ生成できます。skaleeが述べた{{!}}ように、パイプシンボルがWikitext構文の一部として解釈されないようにするために、または他の方法を使用できますが、最終的なリンクは常にエンコードされます。

拡張機能の助けがなければ、迅速な解決策はJavaScriptです。(それがあなた自身のMediaWikiサイトにあるなら、それは非常に簡単でしょう。MediaWiki:Common.jsすべてのユーザーのためにロードされるJavaScriptが含まれています)。

于 2012-12-17T06:50:46.130 に答える
1

{{!}}前述の構文に加えて、{{pipe}}またはを使用して垂直バー/パイプをエスケープすることもできます<nowiki>text containing the character | (pipe)</nowiki>。HTMLエンティティの使用&#124;も機能します。

ソース:

https://en.wikipedia.org/wiki/Template:Cite_web#Title

https://en.wikipedia.org/wiki/Help:Table#Rendering_pipe_itself

于 2021-04-12T18:02:10.553 に答える