@@ -155,6 +155,20 @@ def screenshot(self):
155155 def thumbnail (self ):
156156 return self .thumbnail_manual or self .thumbnail_generated
157157
158+ @property
159+ def title_data (self ):
160+ try :
161+ return self .data ['views' ][0 ]['spec' ]['title' ]
162+ except KeyError :
163+ return self .title
164+
165+ @property
166+ def description_data (self ):
167+ try :
168+ return self .data ['views' ][0 ]['spec' ]['description' ]
169+ except KeyError :
170+ return ''
171+
158172 def get_absolute_link (self ):
159173 domain = Site .objects .get_current ().domain
160174 proto = 'https' if settings .USE_HTTPS else 'http'
@@ -243,7 +257,9 @@ def save_meta(storage):
243257 domain = Site .objects .get_current ().domain
244258 proto = 'https' if settings .USE_HTTPS else 'http'
245259 meta = f'''
246- <meta property="og:title" content="{ instance .title } ">
260+ <meta property="og:title" content="{ instance .title_data } ">
261+ <meta property="og:description" content="{ instance .description_data } ">
262+ <meta property="og:type" content="website">
247263<meta property="og:url" content="{ proto } ://{ domain } { instance .get_absolute_url ()} ">
248264<meta property="og:image" content="{ proto } ://{ domain } /{ instance .image_facebook ()} ">
249265<meta name="twitter:image" content="{ proto } ://{ domain } /{ instance .image_twitter ()} ">
@@ -253,7 +269,7 @@ def save_meta(storage):
253269 if hasattr (settings , 'SAVE_SCREENSHOT_ENABLED' ) and settings .SAVE_SCREENSHOT_ENABLED is True :
254270 save_screenshot ()
255271
256- if instance .screenshot :
272+ if instance .data :
257273 storage = OverwriteStorage ()
258274 if instance .permission is int (SnapshotPermission .PUBLIC ):
259275 save_meta (storage )
0 commit comments