(Opgelost) HTML Blok alleen weergeven als hij ingevuld is

Nederlandse ondersteuning voor CMS Made Simple

Moderator: velden

Post Reply
pasmaskas
Power Poster
Power Poster
Posts: 509
Joined: Tue Nov 29, 2011 10:42 am

(Opgelost) HTML Blok alleen weergeven als hij ingevuld is

Post by pasmaskas »

Beste CMSMS Leden,

Is er een manier om een HTML Blok met bijvoorbeeld de naam twitter alleen weer tegeven als hij bestaat of ingevuld is? Dus dat je geen error krijgt omdat hij niet bestaat maar dat er nix komt te staan.

Bijvoorbeeld:

Code: Select all

{if "speciaale code"}

<div class="twitter">
{global_content name='twitter'}
</div>

{else}

<!-- leeg -->

{/if}
Dus dat je dan de Div waar het HTML Blok in moet ook verbergt.

Alvast bedankt gr Pascal.
Last edited by pasmaskas on Wed Jul 16, 2014 3:00 pm, edited 1 time in total.
Jos
Support Guru
Support Guru
Posts: 4020
Joined: Wed Sep 05, 2007 8:03 pm

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by Jos »

Zoiets denk ik

Code: Select all

{global_content name='twitter' assign='twitterblok'}
{if !empty($twitterblok)}
<div class="twitter">
{$twitterblok}
</div>
{else}

<!-- leeg -->

{/if}
pasmaskas
Power Poster
Power Poster
Posts: 509
Joined: Tue Nov 29, 2011 10:42 am

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by pasmaskas »

Bedantk voor de reactie jos!

Als ik deze regel gebruik:

Code: Select all

            {global_content name='twitter' assign='twitterblok'}
            {if !empty($twitterblok)}
            <div class="split-column border">
            <div class="headerbox"><p>Vind ons op Twitter</p></div>
            {$twitterblok}
            </div>
            {else}
            <!-- Twitter -->
            {/if}
Laat hij niet zien <!--Twitter--> maar dat de blok niet bestaad met de html code:

Code: Select all

 <div class="split-column border">
            <div class="headerbox"><p>Vind ons op Twitter</p></div>
            <!-- Html blob 'twitter' does not exist  -->
            </div>
Ik wil juist als de htmlblok niet bestaad dat hij niets laat zien ook de html niet. Hoe krijg ik dat voor elkaar?

Gr Pascal
Njit
Forum Members
Forum Members
Posts: 55
Joined: Wed Jun 25, 2014 9:03 am

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by Njit »

Volgens mij dien je daar de Smarty Capture voor te gebruiken.
Als je eenmaal content in een variabele hebt staan dan kun je er van alles mee doen.. bijv. afhankelijk van de grootte van de inhoud de breedte aanpassen..

Code: Select all

{capture assign="my_content"}{content}{/capture}
<div class="{if $my_content|word_count < 10}narrow{else}wide{/
if}">{$my_content}</div>
Zie ook http://www.smarty.net/docs/en/language. ... apture.tpl
pasmaskas
Power Poster
Power Poster
Posts: 509
Joined: Tue Nov 29, 2011 10:42 am

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by pasmaskas »

Bedantk Njit! Het werkt.

Code: Select all

{capture assign="twitterblok"}{global_content name='twitter'}{/capture}

<div class="{if $twitterblok|count_characters < 10}hide{else}show{/if}">
<div class="split-column border">
<div class="headerbox"><p>Vind ons op Twitter</p></div>
{$twitterblok}
</div>
</div>
Ik heb count_characters gekozen omdat word_count niet werkte ) denkt dat dat cound_words moest zijn maar dat gaf ook niet het goede resultaat).

Zo ben ik tevrede!

Bedankt voor de hulp!
chandra

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by chandra »

There's no need to use additional capture - both tags ({content}, {global_content}) supports the assign parameter himself ;).
pasmaskas
Power Poster
Power Poster
Posts: 509
Joined: Tue Nov 29, 2011 10:42 am

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by pasmaskas »

Thnx chandra!

Indeed, that works well. And less code!

Gr Pascal
User avatar
Jo Morg
Dev Team Member
Dev Team Member
Posts: 1974
Joined: Mon Jan 29, 2007 4:47 pm

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by Jo Morg »

... and, for the record, its faster and more efficient too! ;)
"There are 10 types of people in this world, those who understand binary... and those who don't."
* by the way: English is NOT my native language (sorry for any mistakes...).
Code of Condut | CMSMS Docs | Help Support CMSMS
My developer Page on the Forge
GeekMoot 2015 in Ghent, Belgium: I was there!
GeekMoot 2016 in Leicester, UK: I was there!
DevMoot 2023 in Cynwyd, Wales: I was there!
pasmaskas
Power Poster
Power Poster
Posts: 509
Joined: Tue Nov 29, 2011 10:42 am

Re: HTML Blok alleen weergeven als hij ingevuld is

Post by pasmaskas »

Bedankt voor de hulp! ik heb het verwerkt in mijn nieuwe tutorial

http://forum.cmsmadesimple.org/viewtopi ... 82#p313982
Post Reply

Return to “Dutch - Nederlands”