typoJe retire tout ce que j’ai pu dire sur les limites de Typo en ce qui concerne les thèmes utilisateurs : loin de me limiter au XHTML généré par défaut par rails dans /app/views/..., le système de thèmes utilisé par Typo me permet de surcharger les fichiers .rhtml, pour mon plus grand plaisir.

Il me suffit pour cela de placer le fichier .rhtml à utiliser dans /themes/montheme/views/.... Il était autrefois possible de définir soi-même la sortie XHTML des plugins utilisés dans la barre latérale, mais depuis que ceux-ci sont passés dans /vendor/plugins/, ça ne semble plus aussi évident. Mais je sens que je vais trouver…

[edit]

La révision 1263 de la version de développement de Typo autorise à nouveau la modification du rendu des greffons de la barre latérale au niveau du thème. Pour une version de Typo antérieure supportant le déplacement des greffons dans /vendor/plugins, il suffit de remplacer la fonction render_sidebar() qui se trouve dans /app/helpers/ par :

    
    def render_sidebar(sidebar)
        if sidebar.view_root
            view_root = File.expand_path(sidebar.view_root) 
            rails_root = File.expand_path(RAILS_ROOT) 
            if view_root =~ /^#{Regexp.escape(rails_root)}/ 
                new_root = view_root[rails_root.size..-1] 
                new_root.sub! %r{^/?vendor/}, "" 
                new_root.sub! %r{/views}, "" 
                new_root = File.join(this_blog.current_theme.path, "views", new_root) 
                view_root = new_root if File.exists?(File.join(new_root, "content.rhtml")) 
            end 
            render_to_string(:file => "#{view_root}/content.rhtml", 
                :locals => sidebar.to_locals_hash)
        else
            render_to_string(:partial => sidebar.content_partial,
                :locals => sidebar.to_locals_hash)
        end
    end

Perry the Platypus wants you to subscribe now! Even if you don't visit my site on a regular basis, you can get the latest posts delivered to you for free via Email: