diff --git a/hugo/content/development/gsoc/ideas.md b/hugo/content/development/gsoc/ideas.md
--- a/hugo/content/development/gsoc/ideas.md
+++ b/hugo/content/development/gsoc/ideas.md
@@ -21,10 +21,9 @@ an XMPP account check out our [PidginCha
 
 ### XMPP OMEMO Encryption
 
-This project would implement OMEMO Encryption
-[XEP-0384](https://xmpp.org/extensions/xep-0384.html). This project is a bit
-complicated as it would need to add some features to both libpurple as well as
-Pidgin and Finch to really make it a first class feature.
+This project would implement OMEMO Encryption {{% xep 0384 %}}. This project is
+a bit complicated as it would need to add some features to both libpurple as
+well as Pidgin and Finch to really make it a first class feature.
 
 For starters libpurple needs a way to represent an encryption method for a
 conversation.  Once that is in place, we also need a way to mark messages as
@@ -38,7 +37,7 @@ XEP-0384 and use the new API in libpurpl
 
 ### XMPP Whiteboard Support
 
-Ticket: [PIDGIN-17451](https://issues.imfreedom.org/issue/PIDGIN-17451)
+Ticket: {{% issue PIDGIN-17451 %}}
 
 Pidgin has supported whiteboard for very many years now, however the only
 in-tree plug-in that uses it is SILC which is difficult to build.  This means
@@ -46,8 +45,8 @@ that breakages are inevitable and that's
 
 As such, there are multiple XEPs to implement whiteboard in XMPP:
 
- * [XEP-0113](https://xmpp.org/extensions/xep-0113.html) Simple Whiteboarding
- * [XEP-0284](https://xmpp.org/extensions/xep-0284.html) Shared XML Editing
+ * {{% xep 0113 %}} Simple Whiteboarding
+ * {{% xep 0284 %}} Shared XML Editing
 
 Currently we are unaware of any clients that implement XEP-0113, but
 [Gajim](https://gajim.org/) does implement XEP-0284.
@@ -91,8 +90,7 @@ kept a log of every setting change that 
 to make everything auditable so when something is different users are quickly
 able to figure out why.
 
-This idea is being discussed in
-[PIDGIN-17496](https://issues.imfreedom.org/issue/PIDGIN-17496).
+This idea is being discussed in {{% issue PIDGIN-17496 %}}.
 
 ### Account Assistant
 
@@ -100,8 +98,7 @@ Currently adding an account to Pidgin re
 It's certainly possible for someone to figure it out, but we can and should
 make it a much easier process.
 
-There's a rough draft of how this would work in
-[PIDGIN-17461](https://issues.imfreedom.org/issue/PIDGIN-17461).
+There's a rough draft of how this would work in {{% issue PIDGIN-17461 %}}.
 
 This project would include writing quite a few composite GTK Widgets as well
 as getting pretty familiar with our abstractions for protocol plugins.
diff --git a/hugo/content/help/protocols/xmpp/_index.md b/hugo/content/help/protocols/xmpp/_index.md
--- a/hugo/content/help/protocols/xmpp/_index.md
+++ b/hugo/content/help/protocols/xmpp/_index.md
@@ -144,8 +144,7 @@ There are a number of possible reasons f
   network doesn't allow direct incoming connections.  In this case, you may be
   able to specify an alternative file transfer proxy in the "Advanced" settings
   of your XMPP account.
-* The file transfer proxy in use may be broken.  (See
-  [Ticket 5840](https://issues.imfreedom.org/issue/PIDGIN-5840).)
+* The file transfer proxy in use may be broken (see {{% issue PIDGIN-5840 %}}).
 
 ### Does Pidgin support Service Discovery or Transports?
 
diff --git a/hugo/content/post/2.14.2-released.md b/hugo/content/post/2.14.2-released.md
--- a/hugo/content/post/2.14.2-released.md
+++ b/hugo/content/post/2.14.2-released.md
@@ -15,15 +15,17 @@ we can highlight the fix for two issues 
 
 The complete changelog for this release is the following:
 
-* Fix a build issue when compiling with gstreamer but without voice and
-  video. (RR #25)
-* Enable cyrus-sasl by default. (RR #26)
-* Fix an issue with opening link in Firefox. (RR #503) (PIDGIN-16589)
-* Fix a regression from 2.14.0 where extra whitespace would be displayed
-  when pasting <p> elements from HTML. (RR #504) (PIDGIN-17437)
-* Require Python 3 for generating the D-Bus bindings. (RR #550)
-* Fix an issue where pasting <hr>'s and other HTML elements would
-  eventually lead to a crash. (RR #514) (PIDGIN-17446)
+* Fix a build issue when compiling with gstreamer but without voice and video.
+  ({{% review 25 %}})
+* Enable cyrus-sasl by default. ({{% review 26 %}})
+* Fix an issue with opening link in Firefox. ({{% review 503 %}}) ({{% issue
+  PIDGIN-16589 %}})
+* Fix a regression from 2.14.0 where extra whitespace would be displayed when
+  pasting `<p>` elements from HTML. ({{% review 504 %}}) ({{% issue
+  PIDGIN-17437 %}})
+* Require Python 3 for generating the D-Bus bindings. ({{% review 550 %}})
+* Fix an issue where pasting `<hr>`'s and other HTML elements would eventually
+  lead to a crash. ({{% review 514 %}}) ({{% issue PIDGIN-17446 %}})
 
 You can find 2.14.2 on
 [SourceForge](https://sourceforge.net/projects/pidgin/files/Pidgin/2.14.2/).
diff --git a/hugo/layouts/shortcodes/issue.md b/hugo/layouts/shortcodes/issue.md
new file mode 100644
--- /dev/null
+++ b/hugo/layouts/shortcodes/issue.md
@@ -0,0 +1,1 @@
+[{{ with .Get 1 }}{{ . }}{{ else }}{{ .Get 0 }}{{ end }}](https://issues.imfreedom.org/issue/{{ .Get 0 }})
\ No newline at end of file
diff --git a/hugo/layouts/shortcodes/review.md b/hugo/layouts/shortcodes/review.md
new file mode 100644
--- /dev/null
+++ b/hugo/layouts/shortcodes/review.md
@@ -0,0 +1,1 @@
+[{{ with .Get 1 }}{{ . }}{{ else }}Review {{ .Get 0 }}{{ end }}](https://reviews.imfreedom.org/r/{{ .Get 0 }})
\ No newline at end of file
