diff --git a/djblets/extensions/base.py b/djblets/extensions/base.py
index 0d822ae5fd76a3cd2376f5f99e27156ab5dfde6a..417f5a45c3c352c896018e8f860fd160a489d552 100644
--- a/djblets/extensions/base.py
+++ b/djblets/extensions/base.py
@@ -220,6 +220,7 @@ class ExtensionInfo(object):
         self.author_email = metadata.get('Author-email')
         self.license = metadata.get('License')
         self.url = metadata.get('Home-page')
+        self.author_url = metadata.get('Author-home-page', self.url)
         self.app_name = '.'.join(ext_class.__module__.split('.')[:-1])
         self.enabled = False
         self.installed = False
diff --git a/djblets/extensions/templates/extensions/extension_list.html b/djblets/extensions/templates/extensions/extension_list.html
index 3e756f939b7c624e7098b0b6afb96262567370bd..2cc5443c6b71ca927ae15f91c7686d5a47994aa1 100644
--- a/djblets/extensions/templates/extensions/extension_list.html
+++ b/djblets/extensions/templates/extensions/extension_list.html
@@ -15,6 +15,8 @@
 {{block.super}}
 {% endblock %}
 
+{% block bodyclass %}{{block.super}} extensions-list-page{% endblock %}
+
 {% block content %}
 
 {% include "extensions/extension_dlgs.html" %}
@@ -26,8 +28,18 @@
  <ul class="extensions">
 {%  for extension in extensions %}
   <li class="extension {% cycle row1,row2 %}">
-   <h1>{{extension.info.name}} <span class="version">{{extension.info.version}}</span></h1>
-   <p class="author">{{extension.info.author}}</p>
+   <div class="extension-header">
+    <h1>{{extension.info.name}} <span class="version">{{extension.info.version}}</span></h1>
+    <p class="author">
+{%   if extension.info.author_url %}
+     <a href="{{extension.info.author_url}}">
+{%   endif %}
+     {{extension.info.author}}
+{%   if extension.info.author_url %}
+     </a>
+{%   endif %}
+    </p>
+   </div>
    <div class="description">
     {{extension.info.summary}}
    </div>
