[pmwiki-users] Custom block link : <a href...>short html code rather than strict text link</a>
Petko Yotov
5ko at 5ko.fr
Fri Oct 15 09:13:46 PDT 2021
Indeed, this is not possible with core PmWiki markup.
In the past, the HTML standards required links to be inline elements
which could not contain block-level elements like paragraphs or
headings.
So in PmWiki markup, you can have 2 links, one in the heading, the other
in the text like this:
!!!!! [[my link|Title]]
[[my link|Some text]]
Or you can have a specially formatted and styled link text like this:
[[my link| %h5% Title %% Some text]]
then you style .h5 in your pub/css/local.css, for example:
.h5 {
display: block;
font-weight: bold;
font-size: 105%;
}
This will work well in <ul> lists for menus and navigation. I'd go with
this solution id I needed the feature.
Finally, and as usual, you can define your own markup rule to do this.
For example:
Markup('blocklink', 'directives',
'/^\\(:blocklink(end|)(?: (.*?))?:\\)/',
'FmtBlockLink');
function FmtBlockLink($m) {
if($m[1]) return "<:block></a>";
return "<:block>".Keep("<a ".PQA($m[2]).">");
}
Then in a wiki page, you type:
(:blocklink href="https://www.pmwiki.org" class=myclass:)
!!!!! Title
Some text
(:blocklinkend:)
Petko
On 15/10/2021 14:09, ABClf wrote:
> Something I don't know how to do with pmwiki markup, if doable,
> is having an html output like that :
>
> <a href="my link" class="myclass">
> <h5>Title</h5>
> <p>Some text</p>
> </a>
>
> (in order to have the full block working as a link, for easy click in
> bootstrap-like list, and benefit of link's style).
>
> In other words, have some html code embedded in <a> and </a> (not the
> sole text link).
> I believe I can not use regular [[linkadress|linktext]] markup for
> doing that.
>
> Thank you,
> Gilles.
More information about the pmwiki-users
mailing list