diff --git a/district/models.py b/district/models.py index 9c9108667fcd0adbdfec3eada9117e556b2c04ca..4c946bd705530fc6260c3233839d6a4a8f19a45e 100644 --- a/district/models.py +++ b/district/models.py @@ -344,7 +344,10 @@ class DistrictArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): FieldPanel("tags"), ] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS diff --git a/elections2021/models.py b/elections2021/models.py index 70a887db307715d73684226ec66075987265b77c..856143276d3b0581036c8604d023734c31ab974a 100644 --- a/elections2021/models.py +++ b/elections2021/models.py @@ -586,16 +586,6 @@ class Elections2021ArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Pa class Meta: verbose_name = "Aktualita" - def get_meta_image(self): - return self.image - - def get_meta_description(self): - if self.search_description: - return self.search_description - if len(self.perex) > 150: - return str(self.perex)[:150] + "..." - return self.perex - def card_css_class(self): return STYLE_CSS[self.card_style] diff --git a/region/models.py b/region/models.py index 02a3d8a721fb745c61ab22a878016d0b852451ef..d1f6072b4bdd5b51b562098f9db4d29440f7adab 100644 --- a/region/models.py +++ b/region/models.py @@ -334,7 +334,10 @@ class RegionArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): FieldPanel("tags"), ] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS diff --git a/shared/models.py b/shared/models.py index a145e5484ff5ffc9c4069a1f6ae1bae1d01f71b5..09c39f312e5f1835ef0ebcca4180af93977abd7d 100644 --- a/shared/models.py +++ b/shared/models.py @@ -31,7 +31,9 @@ class SubpageMixin: class ArticleMixin(models.Model): """ - Common fields for articles + Common fields for articles. + + Must be used in class definition before MetadataPageMixin! If you want to tag articles, add tags as `tags` field in article page model. """ @@ -101,6 +103,16 @@ class ArticleMixin(models.Model): """Page used for filtering by tags in url like `?tag=foo`.""" return self.get_parent() + def get_meta_image(self): + return self.image + + def get_meta_description(self): + if self.search_description: + return self.search_description + if len(self.perex) > 150: + return str(self.perex)[:150] + "..." + return self.perex + class MenuMixin(Page): menu = StreamField( diff --git a/uniweb/models.py b/uniweb/models.py index f4dc030c1efe036bf85b8dba8a0860a7cd20ca50..d279eb022d60c1a27edc0193f201b2c199677544 100644 --- a/uniweb/models.py +++ b/uniweb/models.py @@ -459,7 +459,10 @@ class UniwebArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): content_panels = ArticleMixin.content_panels + [FieldPanel("tags")] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS