diff --git a/app/models/communication/website/permalink.rb b/app/models/communication/website/permalink.rb
index 0ec55be151e040419c395148796bc638e95065f7..fb5d865d07ca52a38c1fc0db2840073083eed41e 100644
--- a/app/models/communication/website/permalink.rb
+++ b/app/models/communication/website/permalink.rb
@@ -79,14 +79,14 @@ class Communication::Website::Permalink < ApplicationRecord
 
   def self.required_kinds_in_website(website)
     MAPPING.values.select { |permalink_class|
-      permalink_class.required_for_website?(website)
+      permalink_class.required_in_config?(website)
     }
   end
 
   def published_path
     p = pattern
     substitutions.each do |key, value|
-      p.gsub! ":#{key}", value
+      p.gsub! ":#{key}", "#{value}"
     end
     p
   end
diff --git a/app/models/communication/website/permalink/administrator.rb b/app/models/communication/website/permalink/administrator.rb
index 03cec636667087c359451268ecf4e0b8d3fa4d21..f6b6627f9363d81c31ae14eea554308c64a238d6 100644
--- a/app/models/communication/website/permalink/administrator.rb
+++ b/app/models/communication/website/permalink/administrator.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Administrator < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_administrators?
   end
 
diff --git a/app/models/communication/website/permalink/author.rb b/app/models/communication/website/permalink/author.rb
index 601e992ed3e743910bde33d954794471ffd7cbae..2d1e7328cb6304d74a7027137b9f47e907ce0854 100644
--- a/app/models/communication/website/permalink/author.rb
+++ b/app/models/communication/website/permalink/author.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Author < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     # website might have authors but no communication_posts (if a post unpublished exists)
     website.has_authors? && website.has_communication_posts?
   end
diff --git a/app/models/communication/website/permalink/category.rb b/app/models/communication/website/permalink/category.rb
index 9f98bfb5f3480ffb064b1615d2b2a893b9bc6dd6..7576a37b398417cef81396440e5faaf2a1bd67db 100644
--- a/app/models/communication/website/permalink/category.rb
+++ b/app/models/communication/website/permalink/category.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Category < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_communication_posts? && website.has_communication_categories?
   end
 
diff --git a/app/models/communication/website/permalink/diploma.rb b/app/models/communication/website/permalink/diploma.rb
index 7a94109c56ae504a209f55dae43592c9329f36d0..c7fa23611af4ea771592bf9fdce99f06b7bc291b 100644
--- a/app/models/communication/website/permalink/diploma.rb
+++ b/app/models/communication/website/permalink/diploma.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Diploma < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_education_diplomas?
   end
 
diff --git a/app/models/communication/website/permalink/organization.rb b/app/models/communication/website/permalink/organization.rb
index 74384a95255c7faa9d552be0d20cbad625bbda2b..8d1f62eb7c7af32b01e69c49b1ae1f807b516a43 100644
--- a/app/models/communication/website/permalink/organization.rb
+++ b/app/models/communication/website/permalink/organization.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Organization < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_organizations?
   end
 
diff --git a/app/models/communication/website/permalink/page.rb b/app/models/communication/website/permalink/page.rb
index ccf7bc38d0c8ee2adeb2c3cdcbb421ffbbb5e15e..0dde50989293e29f63ee6269c0ecc4dbf2c0f63b 100644
--- a/app/models/communication/website/permalink/page.rb
+++ b/app/models/communication/website/permalink/page.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Page < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     false
   end
 
diff --git a/app/models/communication/website/permalink/person.rb b/app/models/communication/website/permalink/person.rb
index ba89ef1dcd32e771fadb81a4608a376e2d3ac433..9728a2f8db3b695dfa425b1064c9f59bff00820f 100644
--- a/app/models/communication/website/permalink/person.rb
+++ b/app/models/communication/website/permalink/person.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Person < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_persons?
   end
 
diff --git a/app/models/communication/website/permalink/post.rb b/app/models/communication/website/permalink/post.rb
index 812cb8439217ba79f2a770b2d41a1838e8ad0c86..ea9da6cac438db5747ede529ab97fd9ce15f0d50 100644
--- a/app/models/communication/website/permalink/post.rb
+++ b/app/models/communication/website/permalink/post.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Post < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_communication_posts?
   end
 
@@ -21,9 +21,9 @@ class Communication::Website::Permalink::Post < Communication::Website::Permalin
 
   def substitutions
     {
-      year: about.published_at.year,
-      month: about.published_at.month,
-      day: about.published_at.day,
+      year: about.published_at.strftime("%Y"),
+      month: about.published_at.strftime("%m"),
+      day: about.published_at.strftime("%d"),
       slug: about.slug
     }
   end
diff --git a/app/models/communication/website/permalink/researcher.rb b/app/models/communication/website/permalink/researcher.rb
index 33bb67890b5b962110cd40be6962ba18c1d726e2..c255ae63b8ac17b7c86e744958c04f8337a40f72 100644
--- a/app/models/communication/website/permalink/researcher.rb
+++ b/app/models/communication/website/permalink/researcher.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Researcher < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_researchers?
   end
 
diff --git a/app/models/communication/website/permalink/teacher.rb b/app/models/communication/website/permalink/teacher.rb
index 7e99aaefd1d56d36c86fb9a524428342b4061516..3b00b322ff388f7c902f9948aa8ac816e0bf1e94 100644
--- a/app/models/communication/website/permalink/teacher.rb
+++ b/app/models/communication/website/permalink/teacher.rb
@@ -1,5 +1,5 @@
 class Communication::Website::Permalink::Teacher < Communication::Website::Permalink
-  def self.required_for_website?(website)
+  def self.required_in_config?(website)
     website.has_teachers?
   end