Hello. The way it is structured phpBB is not very well optimized for SEO, and also a bit difficult for us as developers to manage this. So here's what I think could be useful to implement:
1. Each page should have a single and unique h1 tag, but phpBB has the same h1 across all pages, representing the website name. That should be visible only on the index. Example: FAQ page h1 should be
L_FAQ_TITLE, login page h1 should be L_LOGIN , and so on.
2. Including the page title inside overall_header.html would very useful as UI point of view, because trying to get the page title right now is overwhelming and not compatible with all dynamic, plugins created titles.
Example: the page title right now is placed as h2 and inside .page-body element. Most of the themes/websites have the page title inside a section( full-width ) > .container > h1.
But in this case, the page title is already inside .page-body container starting inside overall-header and impossible to expand. Not to mention that if for example we'll include a sidebar (also placed inside overall-header so we can have it everywhere) the title width will be limited to page-body's width.
A better approach would be to have the page title as h1 and placed right below the .headerbar ( and below this the breadcrumbs ). See the picture below for more details:
3. Using the page title as a general variable, just like WordPress does. This could be very useful if let's say you guys won't implement the above suggestion and this way we could easily pull the title without using all those conditionals like:
{% if SCRIPT_NAME == 'viewforum' %}{FORUM_NAME}{% elseif SCRIPT_NAME == 'viewtopic' %} {TOPIC_TITLE} {% elseif S_IN_MCP %}{L_MCP}{% endif %} |
and so on. The list becomes huge and as I said not very practical if we design a custom theme for a client and later on he will use an extension to create a new page.
Idea: Define page title on every page
$page_title = echo 'the page title'; |
or something similar so we can easily pull it by using only one variable, without using all those conditionals I mentioned before.