
Shortcodes යනු WordPress හි ඇති ප්රධානතම සුවිශේෂතා අතුරින් එකකි. Shortcodes යනු සංවර්ධකයින් (developers) සහ වෙබ් අඩවි නිර්මාණකරුවන් අතර පාලම වන අතර, එමඟින් මිනිසුන්ට ඔවුන් කැමති ඕනෑම තැනක පාහේ විස්තීර්ණ අන්තර්ගතයන් ඇතුළත් කිරීමට ඉඩ සලසයි. ප්ලගීන නිර්මාණකරුවන් shortcodes වලට බෙහෙවින් ප්රිය කරන්නේ, එමඟින් තම පරිශීලකයින්ට ඔවුන්ගේ අන්තර්ගතය ප්රදර්ශනය කරන්නේ කෙසේද සහ කොතැනද යන්න පිළිබඳ වැඩි නම්යශීලී බවක් ලබා දෙන බැවිනි.
ඔබ shortcodes යනු මොනවාද සහ ඒවා මොන වගේද කියා නොදන්නේ නම්, ඒවා කොටු වරහන් තුළ ඇති කේතයක් වැනි පෞරාණික පාඨයන්ය. ඒවා මෙවැනි දෙයක් මෙන් පෙනේ:
මෙම විශේෂිත එක embed shortcode ලෙස හඳුන්වනු ලබන අතර එය WordPress හි පෙරනිමියෙන්ම ඇතුළත් කර ඇත. මෙම විශේෂිත එක මඟින් URL හි ඇති වීඩියෝව ඔබේ අන්තර්ගතයට ඇතුළත් කරයි. ඔබට එය අත්හදා බැලීමට අවශ්ය නම් ඉහත shortcode එක ඔබේ වෙබ් අඩවියේ පිටපත් කර අලවන්න.
තිරය පිටුපස සිදුවන්නේ, WordPress ඔබේ අන්තර්ගතය තුළ shortcode එකක් හමු වූ විට, එය සකසා වෙනත් දෙයකට පරිවර්තනය වීමයි. අපගේ ඉහත අවස්ථාවේදී,
shortcode එකක් හඳුනාගත් විට, WordPress එම shortcode හි ඇති URL එක ලබාගෙන එය සතුව ඇති අන්තර්ගත සපයන්නන් කිහිපයක් සමඟ පරීක්ෂා කරයි. එකක් සොයාගත් විට, එය ඊට ගැළපෙන iframe embed කේතය ලබාගෙන ඒ වෙනුවට එය ප්රදර්ශනය කරයි.
එසේනම් මෙහි ඇති ගැටලුව කුමක්ද? එය ප්රමාණවත් තරම් පහසු බව පෙනේ, ඔබ වරහන් සහිත කෙටි පාඨයක් ඇතුළත් කළ විට වැඩේ අවසන්ය.
Shortcode API වෙත පිවිසෙමු..
Shortcodes බහුලත්වය
Shortcode API මඟින් සංවර්ධකයින්ට shortcodes නිර්මාණය කිරීමේ හැකියාව විවෘත කරයි. මේ නිසා, සංවර්ධකයින්ට ඔවුන්ගේ ප්ලගීන තුළ ඔවුන්ගේම shortcodes එක් කළ හැක.
මෙය විශිෂ්ටයි, දැන් කෙටි කේත කොටසක් මඟින් පමණක් (“shortcode” යන නම ලැබුණේ ඒ නිසාය), ආධුනිකයින්ට සහ උසස් පරිශීලකයින්ට තමන් කැමති ඕනෑම ආකාරයක අන්තර්ගතයක් ඕනෑම තැනක පාහේ තැබිය හැක.
සාමාන්යයෙන් WordPress හි ඇත්තේ shortcodes ස්වල්පයක් පමණි. ඒවායින් ඇත්තේ ඉතා සුළු ප්රමාණයක් නිසා මතකයෙන් ඒවා ටයිප් කිරීම පහසුය. නමුත් ඔබ ප්ලගීන කිහිපයක් ස්ථාපනය කළහොත්, shortcodes ගණන ඉක්මනින් දුසිමක් හෝ ඊට වැඩි ගණනක් දක්වා ඉහළ යන අතර සමහර අවස්ථාවල සියයකට වඩා වැඩි වේ. සෑම shortcode එකකටම තමන්ගේම attributes මාලාවක් සහ ඒවා භාවිතා කරන්නේ කෙසේද යන්න පිළිබඳ උපදෙස් ඇත. බොහෝ විට සෑම ප්ලගීනයකම පාහේ ඒවායේ සියලුම shortcodes ක්රියා කරන ආකාරය පිළිබඳ ලේඛනගත කිරීමක් ඇති අතර ඒ ඒ එකෙහි ඇති සියලුම parameters ලැයිස්තුගත කර ඇත. නමුත් ඔබ සියලු shortcodes සහ ඒවායේ attributes මතක තබා ගැනීමට උත්සාහ කළහොත් ඔබට පිස්සු හැදෙනු ඇත.
ගැටලුව වන්නේ ඔබේ වෙබ් අඩවියේ ඇති සියලුම shortcodes සහ ඒවා භාවිතා කරන්නේ කෙසේද යන්න සොයා ගැනීමට හැකි කේන්ද්රීය ස්ථානයක් නොමැති වීමයි.
සමහරු ගැටලුව විසඳීමට උත්සාහ කරති
සමහර ප්ලගීන මඟින් පහසුවෙන් ප්රවේශ විය හැකි ඩ්රොප් ඩවුන් එකක තමන්ගේම සියලු shortcodes ඉදිරිපත් කිරීමෙන් මෙම ගැටලුව විසඳීමට උත්සාහ කරයි. ඉන්පසු එකක් මත ක්ලික් කිරීමෙන් ඒ සඳහා විය හැකි සියලුම attributes සමඟින් shortcode එක ප්රදර්ශනය වේ. තවදුරටත් එය මතක තබා ගැනීමේ අවශ්යතාවයක් නැත, එය හොඳ දෙයකි.

සමහරු ඊටත් වඩා ඉදිරියට ගොස් shortcode හි attributes පිරවීම සඳහා චෙක්බොක්ස් සහ කලර් පිකර්ස් සහිත සැකසුම් පොප්අප් ෆෝරමයක් එක් කරති.

මෙම විසඳුම යම් දුරකට සාර්ථක වේ. කෙසේ වෙතත්, සෑම ප්ලගීනයක්ම ලැයිස්තුගත කරන්නේ තමන්ගේම shortcodes පමණි. එබැවින් සෑම ප්ලගීනයක්ම තමන්ගේම ආකාරයේ shortcode තෝරා ගැනීමේ ක්රමයක් නිර්මාණය කරන්නේ නම්, ඔබේ තිරය මත shortcode pickers කිහිපයක් තිබෙන අවස්ථාවන්ට මුහුණ දීමට ඔබට සිදු වනු නොඅනුමානය (මෙය මීට පෙර මට සිදුවී ඇත).

වෙනත් වචන වලින් කිවහොත්, සෑම ප්ලගීනයක්ම තමන්ට රිසි දේ කරන අතර ඔවුන්ගේම shortcodes සඳහා ඔවුන්ගේම විසඳුමක් ක්රියාත්මක කරයි. සමහර ප්ලගීන “Add Media” බොත්තම අසල නව බොත්තමක් හෝ TinyMCE තුළ අලුත් එකක් එක් කරයි.
ඉතින් දැන් ඔබ සිතනවා විය හැකියි, “අනෙකුත් ප්ලගීන වල shortcodes ද එකතු කර ඒවා ඔබේ ඩ්රොප් ඩවුන් / shortcode picker එකට ඇතුළත් නොකරන්නේ ඇයි?” කියා. ඔව්, මටත් සිතුණේ හරියටම ඒ දේමයි. නමුත්, මෙය කියන තරම් ලෙහෙසි නැත. මම මඳකින් එයට හේතුව පැහැදිලි කරන්නම්, නමුත් පළමුව අපි කදිම විසඳුමක් කෙබඳු විය හැකිදැයි බලමු.
කදිම විසඳුම
පරිපූර්ණ සැලැස්ම වනුයේ ඔබේ වෙබ් අඩවියේ ඇති සියලුම shortcodes එකතු කර, ඔබට එම ලැයිස්තුව ඉදිරිපත් කරන සහ සියලුම attributes පිරවීමට ඔබට උපකාර කරන ප්ලගීනයක් නිර්මාණය කිරීමයි. තවද ඔබ නව ප්ලගීනයක් ස්ථාපනය කරන සෑම අවස්ථාවකම, අලුතින් හඳුන්වා දුන් එම සියලු shortcodes ද ඔබට ඉදිරිපත් කෙරෙනු ඇත.
පහසුවෙන් ප්රවේශ වීම සඳහා ඔබගේ සියලු shortcodes තැන්පත් කර ඇති කේන්ද්රීය ස්ථානයක් ගැන සිතන්න. සෑම shortcode එකකින්ම ඒවා කරන්නේ කුමක්ද සහ ඒවා අයත් වන්නේ කුමන ප්ලගීනයටද යන්න විස්තර කරනු ඇත. ඉන්පසු එක් එක් පවතින attribute එක සඳහා ලේබලයක්, ඒ සඳහා අගයක් තෝරා ගැනීමට නිසි ක්රමයක් සහ විස්තරයක් තිබේ යැයි සිතන්න. ඔබට ඩ්රොප් ඩවුන්, කලර් පිකර්, රේඩියෝ බොත්තම්, ටොගල් ආදී බොහෝ දේ පෙන්වනු ඇත.
මෙවැනි දෙයක් වෙබ් අඩවි සහ අන්තර්ගත නිර්මාණකරුවන් ලෙස අපගේ ජීවිතය පහසු කරනු ඇත. ඔබට භාවිතා කිරීමට අවශ්ය ස්ලයිඩරයක් සඳහා ජනනය කරන ලද shortcode එකක් පිටපත් කර ගැනීමට පමණක් විවිධ ලියකියවිලි හෝ ඔබේ පරිපාලක පැනලයේ විවිධ කොටස් පරීක්ෂා කිරීම තවදුරටත් අවශ්ය නොවේ.
ඇති බාධාව
අවාසනාවකට මෙන්, මේ මොහොතේ එවැනි දෙයක් කිරීම බෙහෙවින් අපහසුය. shortcode එකක සියලු විස්තර දැන ගැනීමට ස්ථිර ක්රමයක් නොමැත. ඔබට සියලුම shortcodes ලැයිස්තුවක් ලබා ගත හැක්කේ ඒවායේ නියම ටැග්/නම් පමණි; attributes ලැයිස්තුවක්, ඒවා කරන්නේ කුමක්ද සහ string එකක්, පාටක් හෝ අංකයක් වැනි ඒවායේ වර්ග මොනවාද යන්න පිළිබඳ කිසිදු අමතර විස්තරයක් ඔබට ලබා ගත නොහැක. එක් එක් attribute එක සඳහා විස්තරයක් පවා ලබා ගැනීමට නොහැකිය.
එහි සිටින සංවර්ධකයින්ගේ අවධානයට: ඔව්, shortcode_atts ශ්රිතය සඳහා අලුතින් එක් කරන ලද තුන්වන argument එකක් ඇත, නමුත් එය අනිවාර්ය argument එකක් නොවේ. එබැවින් ලෝකයේ සෑම ප්ලගීන සංවර්ධකයෙකුම එය ක්රියාත්මක නොකරන්නේ නම්, shortcode එකක සියලුම attributes තීරණය කිරීමට තවමත් අපට ස්ථිර ක්රමයක් නොලැබෙනු ඇත.
Shortcode API මඟින් shortcode විස්තර එකතු කිරීම, attributes සඳහා type casting කිරීම හෝ attribute විස්තර එකතු කිරීම සඳහා කිසිදු පහසුකමක් සපයන්නේ නැත. තවද WordPress විසින්ම shortcodes වෙත ප්රවේශ වීම සඳහා කේන්ද්රීය ප්රදේශයක් එක් කරන්නේ නම් මිස, මෙම පහසුකම නිර්මාණය වනු ඇතැයි මම සැක කරමි.
නිගමනය
දැනට shortcodes සංවිධානය කිරීමේ කාර්යය එක් එක් සංවර්ධකයාට භාර වී ඇත. WordPress තුළ කේන්ද්රීය ක්රමයක් සංවර්ධනය නොකළහොත්, ඔබේ පසුතලයේ “Add Shortcode” බොත්තම් කිහිපයක් දිගටම දැකීමට බලාපොරොත්තු වන්න. මෙවැනි දෙයක් WordPress Core වෙත එකතු කළ යුතුද නැද්ද යන්න තවත් විශාල සාකච්ඡාවකි.
විකල්පයක්
මෙම ගැටලුව වෙනස් ආකාරයකින් විසඳන page builder ප්ලගීන තිබේ. ක්රමලේඛනගතව shortcodes හඳුනාගැනීම වෙනුවට, පරිශීලකයින්ට shortcode එකක සෑම විස්තරයක්ම අතින් ඇතුළත් කළ හැකි shortcode mappers ඒවා සතුව ඇත. එය අවසන් වූ පසු, එය page builder එක තුළ ලබා ගත හැක. මෙය ක්රියාත්මක වන මුත්, ඒවා ලබා ගත හැක්කේ ඔබේම වෙබ් අඩවියේ පමණි.
Page Builder Sandwich හි සිටින අප මෙම shortcode ප්රහේලිකාව විසඳිය හැකි යමක් නිර්මාණය කරමින් සිටිමු. අපගේ ප්රගතිය පිළිබඳ දැනුවත් වීමට පහතින් අපගේ ප්රවෘත්ති පත්රයට දායක වන්න.