Details
-
Sub-task
-
Resolution: Unresolved
-
Major
-
None
-
9.12
-
None
-
Unknown
-
Description
The BlogPostLayoutFull macro displays the path to a post with the following HTML :
<div class="blogrefpath"> <p> Posted in <ol class="breadcrumb" > <li>…</li> </ol> </p> </div>
This XHTML is actually incorrect as a <p> should not contain an <ol> tag.
Looking more in depth into this issue, it turns out that this is related to https://github.com/xwiki-contrib/application-blog/blob/0fbb196dcad438a84ee7b876e45ae0488af15056/application-blog-ui/src/main/resources/Blog/BlogCode.xml#L848 , for which the HTML macro with clean="false" will insert the <ol> block.
The BlogPostLayoutImage macro doesn't have the same issue (even though it is using the same code in Blog.BlogCode as the macro #displayEntryBlogLocation is called from within an HTML macro with clean="false" wiki="true". It turns out that this macro will not produce a paragraph within the <div class="blogrefpath">.
It is possible to check this behavior with the following snippet :
{{velocity}} (%class='blogpostref'%)((( Posted by {{html clean='false' wiki='false'}}<ol><li>Blog</li></ol>{{/html}} ))) ---- {{html wiki="true" clean="false"}} (%class='blogpostref'%)((( Posted by {{html clean='false' wiki='false'}}<ol><li>Blog</li></ol>{{/html}} ))) {{/html}} {{/velocity}}