How do you stop the automatic line break after templates in mediawiki? - mediawiki

In mediawiki, whenever you embed a template into an article, it is always proceeded by a line break (as far as I know). Is there some way to prevent this so that I may place templates next to one another without the second one being on a new line?

Use the <includeonly> tag if you didn't already, and make sure not to put any returns in your template before the </includeonly>
So
<includeonly>This is a template. </includeonly>
makes {{Template}}{{Template}} output as
This is a template. This is a template
But,
<includeonly>This is a template.
</includeonly>
makes {{Template}}{{Template}} output as
This is a template.
This is a template
Even single returns are dangerous. If template A contains:
<includeonly>{{B}}
</includeonly>
and template B contains:
<includeonly>Text
</includeonly>
then when you insert {{A}} into your page, both returns are subsequent and give paragraph break.

Related

Getting a HTML template as a HTML string

consider that I have several HTML templates and they have custom HTML tags. For ex: c-icon, c-text, c-button etc.
For some usecase(Display other content along with innerHTML), I need to access c-icon tag HTML inside c-text and append it to some text so that I can render it with some other html text. In future, I may have another component called c-badge and even I want to refer and render.
Could you please provide any suggestions for achieving the same?

How to target similar classes and their children with CSS?

I use AE Templates in Wordpress to create templates which are used around the website, so I don't have to change every occurrence of a single template every time I need to update some information. In my case I have tens of these templates which are exactly the same apart from some text and an image, so they all have exactly the same CSS except for some unique identifiers in classes.
Here's an example:
.elementor-3464 .elementor-element.elementor-element-380443b9 > .elementor-element-populated{
some-rules;
}
This is a line of CSS which is the same for all templates, except 3464 and 380443b9 change from template to template.
It seems a waste of code to me to load all CSS files for every web page with multiple templates with the same CSS. Is there a way I can target all templates by rewriting the above line to be arbitrary for any ID number/sequence (3464 and 380443b9)?
I was hoping I could use the [class*=...] selector but it doesn't work.
I tried this as a replacement for the above example:
[class^="elementor-"] [class*="elementor-element-"] > .elementor-element-populated{
some-rules;
}
The [class^="elementor-"] will only work if the class list begins with "elementor-". If there is another class before it, e.g. class="elementor elementor-1234" then it will not work.
You might need to use:
[class*="elementor-"] [class*="elementor-element-"] > .elementor-element-populated{
some-rules;
}

TagHelper to supress Razor processing

Is there a possibility to write a tag helper which tells Razor not to process it's content.
I would like to define new <raw> tag and everything between opening and closing "raw" tag should go to result HTML "as is".
For example, the following markup:
<raw>
Some text.
#Something
<some-other-tag-helper />
<raw>
Should go to result HTML exactly as it's listed between <raw> and </raw> without trying to consider #Something as a variable or "unpacking" other tag helpers.

EE Core: How do I pass entry data to an embedded template

I had code like this:
{exp:channel:entrieschannel="blog_channel"limit="10"}
<h1>{entry_title}</h1>
<p>{entry_body}</p>
<p>{entry_author}</p>
{/exp:channel:entries}
Basically I want the HTML content with the exp tags to be made separate and placed in a template file. I attempted this by doing this:
{exp:channel:entries channel="blog_channel"limit="10"}
{embed="blog/post"}
{/exp:channel:entries}
My problem is the output all the tags ({entry_title}, {entry_body} etc etc) are being shown literally and the they are not being treated as a variable.
How can I fix this?
Thanks,
Peter
For what it appears you're looking to do, i might suggest avoiding an embed and instead using a snippet. They're more efficient but still allow you to have the same markup used in more than one template, for example, so you don't have to repeat yourself. Some something like this:
{exp:channel:entries channel="blog_channel" limit="10"}
{sn_blog_post_list}
{/exp:channel:entries}
And then in your snippet, which in this case is called "sn_blog_post_list":
<h1>{entry_title}</h1>
<p>{entry_body}</p>
<p>{entry_author}</p>
This would allow you to use the same snippet for different instances of the entries loop. SO in a different template, you could do something like:
{exp:channel:entries channel="blog_channel" limit="30"}
{sn_blog_post_list}
{/exp:channel:entries}
And so this would again apply the exact same markup to each blog entry, but return 30 entries instead of 10 as with the earlier example without having to repeat the markup.
Hope that helps.

How to show the string inside a tag verbatim?

What tag can I use to prevent any interpretation? I need that because I need to write down some source code and it's result in blogger. I have this code in blogspot, but the code inside the <pre> is processed
The code is as follows:
<pre class='prettyprint'>
$latex \displaystyle S(n)=\sum_{k=1}^{n}{\frac{1}{T_{k}}=\sum_{k=1}^{n}{\frac{6}{k(k+1)(k+2)}$
</pre>
This is the result:
$latex \displaystyle S(n)=\sum_{k=1}^{n}{\frac{1}{T_{k}}=\sum_{k=1}^{n}{\frac{6}{k(k+1)(k+2)}$
When I can replace '$' in <pre> with something equivalent, I could avoid this issue.
I tried <code> and <pre>, but they all interpret the content.
ADDED
I'm trying to use the javascript code found in this post.
If I understand correctly, you are using Replacemath, and its documentation says: “Should you need to to prevent certain $ signs from triggering LaTeX rendering, replace $ with the equivalent HTML <span>$</span> or $, or put the code inside a <pre> or <code> block if appropriate.” Of these, the first method seems to actually work.
That is, replace all occurrences of “$” inside the pre element by <span>$</span>.
I tested this by publishing a test in my blog (which had been dormant for 6 years...). I had to manually break the pre block to fit into the column.