உங்கள் வலைப்பதிவின் உள்ளடக்கப் பிரிவை உருவாக்க தளவமைப்புகள் தீமினைப் பயன்படுத்தினால் படங்கள், பிளாக்ரோல் போன்ற பக்க உறுப்புகளைச் சேர்ப்பதற்கு விட்ஜெட்களைப் பயன்படுத்தலாம்.
குறிச்சொற்களின் வகைகள்
முடிவுக் குறிச்சொற்களுக்குள் நீங்கள் பயன்படுத்தக்கூடிய HTMLலை இந்தப் பிரிவு விவரிக்கிறது.
Includesஸை எப்போது பயன்படுத்துவது
குறியீட்டின் பிரிவை வெவ்வேறு இடங்களில் மீண்டும் பயன்படுத்த விரும்பினாலோ குறிப்பிட்ட சூழ்நிலைகளில் மட்டும் சேர்க்க விரும்பினாலோ அவ்வாறு செய்வதற்கு Includes மிகவும் பயன்படும்.
இதைச் செய்ய, b:includable
குறியீட்டிற்குள் உள்ளடக்கத்தை எழுதி அது தோன்ற வேண்டுமென விரும்பும் இடங்களில் b:include
குறியீட்டைப் பயன்படுத்தவும்.
வடிவம்
<b:includable id='main' var='thiswidget'>
[insert whatever content you want here]
</b:includable>
பண்புக்கூறுகள்
- ஐடி (அவசியம்): எழுத்துகளையும் எண்களையும் கொண்ட பிரத்தியேகமான அடையாளங்காட்டி. ஒவ்வொரு விட்ஜெட்டிலும் id='main' என்பதைக் கொண்ட ஒரு Includable இருக்க வேண்டும்.
- மாறி (விரும்பினால்) இந்தப் பிரிவிற்குள் தரவை மேற்கோள் காட்டுவதற்காக எழுத்துகளையும் எண்களையும் கொண்ட அடையாளங்காட்டி.
வெவ்வேறு ஐடிகளைக் கொண்ட அதிக Includablesஸை உருவாக்கினால் அவை தானாகக் காட்டப்படாது. எனினும் id='new'
குறியீட்டைக் கொண்ட Includableளை உருவாக்கினால் நீங்கள் அதை <b:include name='new' />
மூலம் உங்கள் முக்கிய Includableளில் மேற்கோள் காட்டலாம். அவ்வகையில் அது காட்டப்படும்.
b:include குறிச்சொல்லுக்கான பண்புக்கூறுகள் பின்வருமாறு:
- பெயர் (அவசியம்): எழுத்துகளையும் எண்களையும் கொண்ட அடையாளங்காட்டி. அதே விட்ஜெட்டில் ஏற்கெனவே உள்ள
b:includable
ளின் ஐடியுடன் இது பொருந்த வேண்டும். - தரவு (விரும்பினால்): Includable பிரிவிற்கு அனுப்பும் கோவை/தரவின் பகுதி. இது அந்த Includableளில் மாறியின் பண்புக்கூறின் மதிப்பாக மாறும்.
- நிபந்தனை (விரும்பினால்) இதன் முடிவு True ஆக இருக்கும்போது மட்டுமே Includeடைச் செயல்படுத்தும் கோவை. இதுவும் b:if என்பதிலுள்ள நிபந்தனைப் பண்புக்கூறும் ஒன்றாகும்.
எடுத்துக்காட்டு
b:includable
, b:include
ஆகியவற்றை எப்படிப் பயன்படுத்துவது என்பதைக் காண்பிக்கும் எடுத்துக்காட்டு இங்குள்ளது.
"இடுகைப்" பிரிவு எப்படிப் "பிரதான" பிரிவில் அடங்குகிறது என்பதுதான் இங்கே புரிந்துகொள்ள வேண்டிய முக்கிய விஷயம். "p" என அழைக்கின்ற இடுகையைக் கடந்துசெல்லும். மேலும் Included பிரிவு இதை அதன் மாறி "post" என்பதாக மேற்கோளிட்டு, பிறகு தலைப்பை அச்சிடும்.
கவனத்திற்கு: 10க்கும் குறைவான பொருளடக்கம் இருக்கும்போது மட்டுமே Include இயங்குகிறது. எனவே இந்த எடுத்துக்காட்டில் அதிகபட்சம் 10 இடுகைகள் மட்டுமே ரென்டரிங் செய்யப்படும் (பொருளடக்கம் 0 இல் தொடங்குகிறது).
<b:includable id='main'>
<b:loop var='p' index='index' values='posts'>
<b:include name='post' data='p' cond='index < 10'/>
</b:loop>
</b:includable>
<b:includable id='post' var='post'>
Title: <data:post.title/>
</b:includable>
எடுத்துக்காட்டுகள்
-
<data:title/> ஒரு விட்ஜெட்டின் தலைப்பை அச்சிடும்
-
<data:photo.url/> - Size: <data.photo.width /> x <data.photo.height /> படத்தின் பண்புக்கூறுகளை அச்சிடும். URL, உயரம், அகலம் போன்ற கூறுகள் படத்தில் இருக்கலாம். "." குறியீட்டைப் பயன்படுத்துவது வேறொன்றைச் சேர்ந்த URLலை விட இந்தப் படத்திற்கான URL எங்களுக்குத் தேவை என்பதைச் சுட்டிக்காட்டுகிறது.
மேலும் உதாரணங்களைப் பார்க்கவும்
ஆதரிக்கப்படுகின்ற தளவமைப்புகள் தரவுக் குறிச்சொற்களின் முழுமையான பட்டியலைப் பார்க்கவும்.
b:loop குறிச்சொல்லை எப்போது பயன்படுத்துவது?
b:loop
குறிச்சொல் ஒரு பிரிவு உள்ளடக்கத்தைப் பல முறை தொடர்ந்து இயக்க உங்களை அனுமதிக்கும். கொடுக்கப்பட்டுள்ள பக்கத்திற்கான இடுகைகளின் பட்டியலிலுள்ள ஒவ்வொரு இடுகையையோ ஒவ்வொரு கருத்தையோ ஒவ்வொரு லேபிளையோ அச்சிடுவதற்கு இது பொதுவாகப் பயன்படுத்தப்படுகிறது.
வடிவம்
லூப்களைப் பயன்படுத்துவதற்கான பொதுவான வடிவமைப்பு இது:
<b:loop var='identifier' values='set-of-data'>
[repeated content goes here]
</b:loop>
'அடையாளங்காட்டி' (i) எனும் பகுதி நீங்கள் தேர்வுசெய்யும் எந்தவொரு பெயராகவும் இருக்கலாம். லூப் வழியாகச் செல்லும் ஒவ்வொரு முறையும் பட்டியலிலுள்ள ஒவ்வொரு புதிய ஆவணத்திற்குமான மாற்றாக இது பயன்படுத்தப்படும். மதிப்புகளுக்காக நீங்கள் குறிப்பிடும் தரவுத் தொகுப்பு ஆனது ஆவணங்களின் பட்டியலாகத் தரவுக் குறிச்சொற்கள் கட்டுரையில் விவரிக்கப்பட்டுள்ள எந்தவொரு தரவுப் பகுதியாகவும் இருக்கலாம்.
உதாரணமாக வலைப்பதிவு இடுகைகள் விட்ஜெட்டில் posts
ஒரு பட்டியல் ஆகும். பின்வருவது போன்ற குறியீடு ஒவ்வொரு இடுகையிலும் லூப் செய்யப்படும் மேலும் ஒவ்வொன்றிற்குமான தலைப்பை அது சம்பந்தமான மேற்குறிப்புக் குறிச்சொற்களுடன் அச்சிடும்.
<b:loop var='i' values='data:posts'>
<h2><data:i.title/></h2>
</b:loop>
அடுத்தடுத்து ஒவ்வொரு இடுகையின் மதிப்பையும் "i" எப்படிக் கையாளுகிறது என்பதைக் கவனிக்கவும். இதனால் ஒவ்வொன்றிலிருந்தும் நீங்கள் தலைப்பைப் பெறலாம்.
எண் வரம்பு
‘1 முதல் 3', ‘-3 முதல் -9', போன்ற அந்த எண்களும் உள்ளடங்கும் எண் வரம்பு முழுவதும் திரும்பச் செய்ய லூப் குறிச்சொல் உங்களை அனுமதிக்கும், இதில் எண்ணின் மதிப்பை மாறியின் மதிப்பு எடுத்துக்கொள்ளும். பின்வரும் உதாரணம் 1, 2, 3 ஆகியவற்றின் வரிசையற்ற பட்டியலை உருவாக்கும்.
<b:loop var='i' values='1 to 3'>
<li><data:i /></li>
</b:loop>
பொருளடக்கப் பண்புக்கூறு
லூப் குறிச்சொற்களில் விருப்பத்தேர்வுக்குரிய பொருளடக்கப் பண்புக்கூறும் உள்ளது. இது லூப் வழியாக நடப்பு மறுநிகழ்வின் பூஜ்ஜியம் சார்ந்த பொருளடக்கத்தை வழங்கும்.
<ul>
<b:loop var='number' index='index' values='9 to 7'>
<li>Index: <data:index />, எண்: <data:number /></li>
</b:loop>
</ul>
இந்த உதாரணம் இவற்றின் வரிசையற்ற பட்டியலை உருவாக்கும்:
- பொருளடக்கம்: 0, எண்: 9
- பொருளடக்கம்: 1, எண்: 8
- பொருளடக்கம்: 2, எண்: 7
if, elseif, else போன்றவற்றை எப்போது பயன்படுத்துவது?
குறிப்பிட்ட உள்ளடக்கத்தைக் குறிப்பான சூழ்நிலைகளிலும் பிற உள்ளடக்கத்தைப் பிற சூழ்நிலைகளிலும் காட்டுவதற்கு b:if
, b:elseif
, b:else
ஆகிய குறிச்சொற்களைப் பயன்படுத்தலாம். உதாரணமாக முகப்புப்பக்கத்தில் குறிப்பிட்ட உரையையும் தனிப்பட்ட இடுகைகளைப் பார்க்கும்போது வேறு உரையையும் காட்டுவதற்கு நீங்கள் விரும்பக்கூடும்.
வடிவம்
<b:if cond='condition'> [content to display if condition is true] <b:elseif cond='another condition'/> [
முந்தைய if அல்லது elseif நிபந்தனைகள் எதுவும் True என இல்லாமல் இந்த elseif நிபந்தனை True என இருந்தால் காட்டப்பட வேண்டிய உள்ளடக்கம்] <b:else/> [content to display if no if or elseif conditions are met] </b:if>
b:elseif
மற்றும் b:else
ஆகிய குறிச்சொற்களை விரும்பினால் பயன்படுத்தலாம். அவை இல்லாமல் முடிவானது b:if பிரிவில் பட்டியலிடப்பட்ட உள்ளடக்கமாக இருக்கும் அல்லது எதுவும் இருக்காது. எனினும் ஒவ்வொரு சூழ்நிலையிலும் நிறைவு செய்யும் </b:if>
குறியீட்டைப் பயன்படுத்த வேண்டும்.
"நிபந்தனைக்கு" True/False என மதிப்பிடும் எதையும் சேர்க்கலாம். சில தரவுக் குறிச்சொற்கள் தாமாகவே True/False மதிப்புகளைக் கொண்டுள்ளன, எ.கா. இடுகையிலுள்ள allowComments
. True/False மதிப்பைப் பெறுவதற்கு, தரவின் பிற பகுதிகளுடன் குறிப்பிட்ட மதிப்புகளை ஒப்பிடலாம். சில எடுத்துக்காட்டுகள் இதோ:
<b:if cond='data:post.showBacklinks'>
பின்னிணைப்புகளைக் காட்டுமாறு தற்போதைய இடுகையை அமைத்திருந்தால் True.<b:if cond='data:blog.pageType == "item"'>
தற்போதைய பக்கம் ஓர் ஆவணப் பக்கமாக (இடுகைப் பக்கம்) இருந்தால் True.<b:if cond='data:blog.pageType == "item" and data:post.showBacklinks'>
தற்போதைய பக்கம் ஓர் ஆவணப் பக்கமாக (இடுகைப் பக்கம்) இருந்து, பின்னிணைப்புகளைக் காட்டுமாறு தற்போதைய இடுகை அமைக்கப்பட்டிருந்தால் True.<b:if cond='data:displayname != "Fred"'>
இது Fredன் காட்சிப் பெயர் இல்லை எனில் True.<b:if cond='data:displayname == "Fred" or data:blog.pageType == "static_page"'>
Fred என்பது காட்சிப் பெயர்தான் என்றாலோ தற்போதைய பக்கம் ஒரு நிலையான பக்கம் (அதாவது இடுகைப் பக்கம் அல்ல) என்றாலோ True.<b:if cond='data:post.numComments > 1'>
தற்போதைய இடுகையில் ஒன்றுக்கு மேற்பட்ட கருத்துகள் இருந்தால் True.<b:if cond='data:blog.pageType in {"static_page", "item"}'> அல்லது <b:if cond='{"static_page", "item"} contains data:blog.pageType'>
தற்போதைய பக்கம் ஒரு குறிப்பிட்ட இடுகை அல்லது ஒரு பக்கம் எனில் True.
ஸ்விட்ச்சை எப்போது பயன்படுத்தலாம்?
பல b:elseif
குறிச்சொற்களைக் கொண்டிருக்கும் b:if
குறிச்சொல்லை நீங்கள் பயன்படுத்த விரும்புவது போலவே b:switch
குறிச்சொல்லைப் பயன்படுத்தலாம். மாறியின் பெயரை மீண்டும் உள்ளிட வேண்டியதில்லை என்பதே ஸ்விட்ச் பிராஞ்சைப் பயன்படுத்துவதன் நன்மை ஆகும். ஒவ்வொரு சூழ்நிலையையும் வரையறுப்பது என்ன என்பதையும் இயல்பான சூழ்நிலை என்ன என்பதையும் பார்க்க நீங்கள் அவற்றை எளிதில் படித்துக்கொள்ளலாம்.
வடிவம்
<b:switch var='[Data expression]'>
<b:case value="[Value 1]" />
[Output if evaluation of var is equal to Value 1]
<b:case value="[Value 2]" />
[Output if evaluation of var is equal to Value 2]
[… any other values]
<b:default />
[Output if evaluation of var is not equal to any other stated b:case]
</b:switch>
எடுத்துக்காட்டு
ரென்டரிங் செய்யப்படும் பக்கத்தின் வகையின் அடிப்படையில் வேறொரு மேற்குறிப்பை எப்படி வெளியிடுவது என்பதை இந்த எடுத்துக்காட்டு காட்டுகிறது.
<b:switch var='data:blog.pageType'>
<b:case value="static_page" />
<h1>பக்கம்</h1>
<b:case value="item" />
<h1>இடுகை</h1>
<b:default />
<h2>வலைப்பதிவு இடுகைகள்</h2>
</b:switch>
கோவைகளை எப்போது பயன்படுத்துவது?
தரவு அகராதியிலுள்ள மதிப்புகளின் அடிப்படையில் பண்புக்கூறு மதிப்புகளை அமைக்க கோவை பண்புக்கூறைப் பயன்படுத்தலாம்.
எடுத்துக்காட்டுகள்
<a expr:href='data:blog.homepageUrl'>முகப்பு</a>
வலைப்பதிவின் முகப்புப்பக்கத்திற்கான urlலைக் கொண்ட முகப்பு இணைப்பு.<a expr:href='data:blog.homepageUrl + "feeds/posts/default"'>இடுகைகள் RSS</a>
வலைப்பதிவின் இடுகை RSS ஊட்ட urlலைக் கொண்ட இணைப்பு. ‘+' செயலி இரண்டு வார்த்தைகளை ஒன்றிணைக்கும்.<a expr:class='data:post.allowComments ? "comment" : "no-comment">கருத்து</a>
கருத்துகளைத் தெரிவிக்க அனுமதிக்கும்போது "கருத்து" என்ற வகுப்பையும் அனுமதிக்காதபோது "கருத்து வேண்டாம்" என்ற வகுப்பையும் கொண்ட இணைப்பு. மூன்றாம் நிலைச் செயலி (?:) கொடுக்கப்பட்டுள்ள பூலியன் மதிப்பைப் பெறுவதோடு பூலியன் True ஆக இருந்தால் முதல் மதிப்பையும் (?க்குப் பின்னால்) பூலியன் False ஆக இருந்தால் இரண்டாம் மதிப்பையும் (:க்குப் பின்னால்) தேர்வுசெய்யும்.
ஆய்வு செய்யப்பட்ட கோவையை எப்போது பயன்படுத்துவது?
வழக்கமான தரவுக் குறிச்சொல்லை விட அதிக சிக்கலான கோவையை ஆய்வு செய்வதற்கு b:eval
குறிச்சொல்லைப் பயன்படுத்தலாம்.
வடிவம்
<b:eval expr='[Expression]' />
எடுத்துக்காட்டுகள்
- min-height:
<b:eval expr="data:newWidth * data:height / data:width" />
px;
புதிய அகல மதிப்பின் அடிப்படையில் கணக்கிடப்படும் தொடர்புடைய உயரத்தை வெளியிடும். <b:eval expr="data:post.labels[0].url" />
முதல் இடுகை லேபிளின் urlலை வெளியிடும்.<b:eval expr='data:post.allowComments ? "Comment" : "Comments Disabled" />
கருத்துகளைத் தெரிவிக்க அனுமதித்தால் “கருத்து” எனவும் அனுமதிக்கப்படாவிட்டால் “கருத்துகள் முடக்கப்பட்டுள்ளன” எனவும் வெளியிடும். இந்தக் கோவை மூன்றாம் நிலைச் செயலியைப் பயன்படுத்துகிறது என்பதைக் கவனத்தில் கொள்க.
மாறி மாற்றுப்பெயரை எப்போது பயன்படுத்துவது?
கணக்கிடப்பட்ட கோவையின் மதிப்பைத் தற்காலிகமாகச் சேமிப்பதற்கும் சிக்கலான இன்லைன் கோவைகளைத் தவிர்ப்பதற்கும் b:with
குறிச்சொல்லைப் பயன்படுத்தலாம்.
வடிவம்
<b:with var='myComputedValue' value='[Data expression]' />
எடுத்துக்காட்டுகள்
தரவு மாறிகளின் அடிப்படையில் சிக்கலான நடைப் பண்புக்கூறுக்கு, உள்ளாக இடப்படும் HTMLலை எளிதாகப் படிக்கும் வகையில் மீதியுள்ள HTML வெளியீட்டிற்கு முன்னர் இதை நீங்கள் கணக்கிடலாம்.
<b:with var='style'
value='"background-image: url(\"" + data:sourceUrl "\"); "
+ " width: " + data:width + "px; " '>
<div id='header-outer'>
<div id='header-inner' expr:style='data:style'>
<h1>எனது மேற்குறிப்பு</h1>
</div>
</div>
</b:with>
b:with
குறிச்சொல்லின் உபநிலை நோடுகளுக்கு மட்டும் அந்த மாறி இருக்கும் என்பதைக் கவனத்தில் கொள்க.உதாரணத்தைக் காண்க
உங்கள் வலைப்பதிவில் PageList விட்ஜெட்டிற்கான HTMLலில் இந்தக் குறிச்சொற்கள் அனைத்தும் எப்படிப் பயன்படுத்தப்படுகின்றன என்பது குறித்த உதாரணத்தைப் பார்க்கக் கிளிக் செய்யவும்.
இந்த விட்ஜெட்டில் b:widget
, b:includable
(மற்றும் b:include
), b:if
(மற்றும் b:else
) மற்றும் b:loop
ஆகிய குறிச்சொற்களைப் பயன்படுத்துவது குறித்த உதாரணத்தைப் பார்க்கலாம்.
<b:widget id='PageList1' locked='false' title='Pages' type='PageList'> <b:includable id='main'> <b:if cond='data:title != ""'>
<h2><data:title/>
</h2></b:if>
<div class='widget-content'><b:if cond='data:mobile'>
<selectexpr:id='data:widget.instanceId + "_select"'
><b:loop values='data:links' var='link'> <b:if cond='data:link.isCurrentPage'>
<optionexpr:value='data:link.href'
selected='selected'><data:link.title/></option><b:else/>
<optionexpr:value='data:link.href'
><data:link.title/></option></b:if> </b:loop>
</select> <span class='pagelist-arrow'>&#9660;</span><b:else/>
<ul><b:loop values='data:links' var='link'> <b:if cond='data:link.isCurrentPage'>
<li class='selected'> <aexpr:href='data:link.href'
><data:link.title/>
</a> </li> <b:else/> <li> <aexpr:href='data:link.href'
><data:link.title/>
</a> </li></b:if> </b:loop>
</ul></b:if>
<b:include name='quickedit'/> </div></b:includable> </b:widget>