from feincms.module.page.models import Pagefrom feincms.module.page.modeladmins import PageAdmin as OrigPageAdminfrom feincms.admin import item_editor
class PageAdmin(OrigPageAdmin):
fieldsets = [ (None, { 'fields': [('active', 'in_navigation'), ('title', 'slug')], }), ('Metadata', { 'fields': ['meta_keywords', 'meta_description',], }), (_('Other options'), { 'classes': ['collapse'], 'fields': [ 'template_key', 'parent', 'override_url', 'redirect_to'], }), # <-- insertion point, extensions appear here, see insertion_index # above item_editor.FEINCMS_CONTENT_FIELDSET, ]
admin.site.register(Page, PageAdmin)
If you modify the page admin this way, I suggest you also add the SEO extension to your own project, and remove the `modeladmin.add_extension_options` part.This also means that you have to pass your own extension instead of 'feincms.module.extension.seo' to register_extensions.I hope this is helpful.Best regards,Matthias
Page.register_extensions( 'website.cms_extensions.page.seo', 'feincms.module.page.extensions.navigation',)
class Extension(extensions.Extension): def handle_model(self): self.model.add_to_class('meta_keywords', models.TextField( _('meta keywords'), blank=True, help_text=_('Keywords are ignored by most search engines.'))) self.model.add_to_class('meta_description', models.TextField( _('meta description'), blank=True, help_text=_('This text is displayed on the search results page. ' 'It is however not used for the SEO ranking. ' 'Text longer than 140 characters is truncated.')))
def handle_modeladmin(self, modeladmin): modeladmin.extend_list( 'search_fields', ['meta_keywords', 'meta_description'], )
...
from feincms.module.page.models import Page
Hi Matthias,And after revisiting the admin page, it does not work anymore :-( Fieldset gone, tab returned...