“Edit with Page Builder Sandwich” බොත්තම දිස් නොවේ

ලිව්වේ

තුළ

, ,

“Edit with Page Builder Sandwich” බොත්තම නොපෙනේ

ඔබේ වෙබ් අඩවියේ ඉදිරිපස (frontend) තුළ “Edit with Page Builder Sandwich” බොත්තම ඔබට නොපෙනේ නම්, ඔබට උත්සාහ කළ හැකි කරුණු කිහිපයක් මෙන්න:

ඔබේ Admin Bar එක පෙනෙන බව තහවුරු කරගන්න

PB Sandwich සඳහා වන සංස්කරණ බොත්තම ඔබේ frontend හි ඇති admin bar එකෙහි තිබේ. ඔබේ පරිපාලන අංශයට (administration) ගොස්  Users > Your Profile වෙත පිවිස Show Toolbar when viewing site සඳහා වන කොටුව සලකුණු කර ඇත්දැයි නැවත පරීක්ෂා කිරීමෙන් admin bar එක පෙනෙන බව තහවුරු කරගන්න.

e5960e581e file w9uN2EeCjm

ඔබ සිටින්නේ Page, Post හෝ Custom Post Type එකක බව තහවුරු කරගන්න

Frontend තුළ සංස්කරණය කළ හැක්කේ Posts, Pages සහ Custom Post Types පමණි. ඔබට frontend හි යමක් සංස්කරණය කළ හැක්කේ backend හි WordPress අන්තර්ගත සංස්කාරකය (content editor) භාවිතයෙන් ඒවා සංස්කරණය කළ හැකි නම් පමණි. ඔබේ වෙබ් අඩවියේ අනෙකුත් කොටස් – උදා. බ්ලොග් සටහන් වල frontpage ලැයිස්තුව, සියලු බ්ලොග් සටහන් ලැයිස්තුව, කාණ්ඩ ලැයිස්තුගත කිරීම්, 404 පිටු, සෙවුම් පිටු – ඔබ භාවිතා කරන තේමාව සමඟ WordPress විසින් නිර්මාණය කරන ලද ගතික පිටු වන අතර ඒවා PB Sandwich භාවිතයෙන් සංස්කරණය කළ නොහැක.

වත්මන් වෙබ් පිටුව සංස්කරණය කළ හැකිද යන්න පිළිබඳ එක් දර්ශකයක් වන්නේ ඔබේ admin bar එකෙහි “Edit Post” හෝ “Edit Page” දැකීමට තිබේද යන්නයි.

ඔබේ අන්තර්ගතය ඔබේ Theme එක හෝ Plugin එකක් මඟින් ගතිකව ජනනය නොවන බව තහවුරු කරගන්න

ඔබේ පිටුව/සටහන තේමාවක් හෝ ප්ලගිනයක් මඟින් ගතිකව ජනනය කරන්නේ නම්, එය Page Builder Sandwich සමඟ (සහ බොහෝ විට අනෙකුත් page builder වලද) සංස්කරණය කළ නොහැක. Backend හි ඔබේ අන්තර්ගත සංස්කාරකය හිස්ව ඇති නමුත්, frontend හි ඔබේ පිටුව බලන විට අන්තර්ගතයෙන් පිරී ඇති බව ඔබ දුටුවහොත්, මෙය ඔබේ පිටුව ගතිකව ජනනය කර ඇති බවට හොඳ දර්ශකයකි.

ඔබේ පිටුව ගතිකව ජනනය කර ඇත්දැයි පරීක්ෂා කිරීමට, ඔබේ වෙබ් පිටුවේ source කේතය බලන්න (දකුණු ක්ලික් කර “View Page Source” තෝරන්න). “pbs-main-wrapper” යන පාඨය සොයන්න, ඔබට එම පාඨය කොතැනකවත් දැකිය නොහැකි නම්, ඔබේ පිටුව ගතිකව ජනනය කර ඇත.

ගතිකව ජනනය වන අන්තර්ගතයන් සඳහා උදාහරණ කිහිපයක් මෙන්න:

  • Customizer භාවිතයෙන් ඔබ එකතු කරන/සංස්කරණය කරන widget කිහිපයකින් ඔබේ පිටුව සමන්විත වීම,
  • “one page” තේමාවක් මඟින් එකට එකතු කරන ලද විවිධ පිටු වලින් ඔබේ පිටුව සමන්විත වීම (මෙම අවස්ථාවේදී ඔබට තනි පිටු සංස්කරණය කළ හැකි නමුත්, ඒකාබද්ධ කළ පිටුව නොවේ), හෝ
  • නවතම බ්ලොග් සටහන් වලින් ඔබේ පිටුව සමන්විත වීම.

පළමුව යම් අන්තර්ගතයක් එක් කිරීමට උත්සාහ කරන්න

අන්තර්ගතය හිස්ව ඇති විට තේමාව එය කිසිසේත් නොපෙන්වූ අවස්ථා ඇති අතර, මෙමඟින් පිටුව සංස්කරණය කළ නොහැකි බව PBS වැරදියට වටහා ගනී. මෙය එසේ දැයි පරීක්ෂා කිරීමට, backend සංස්කාරකය තුළ ඔබේ පිටුව/සටහන සංස්කරණය කර, ඔබේ අන්තර්ගතයට ඕනෑම පෙළක් (උදාහරණයක් ලෙස “hello”) එක් කිරීමට උත්සාහ කරන්න, ඉන්පසු එතැනින් “Edit with Page Builder Sandwich” බොත්තම ක්ලික් කරන්න.

මෙම ඉඟිය සඳහා Mathias Hellquist ට ස්තූතියි!

ඔබේ පිටුව වෙනත් Page Builder එකකට “අයත්” නොවන බව තහවුරු කරගන්න

සමහර page builder මඟින් WordPress හි පෙරනිමි අන්තර්ගත සංස්කාරකය හෝ page builder හිම සංස්කාරකය භාවිතා කිරීමට තෝරා ගැනීමට ඔබට ඉඩ සලසයි. ඔබ දැනටමත් වෙනත් page builder එකක් භාවිතයෙන් ඔබේ පිටුව සංස්කරණය කර ඇත්නම්, එම page builder මඟින් දැනටමත් අන්තර්ගතය “හිමිකම් කියවා” (claimed) තිබිය හැකි අතර, අනෙකුත් අන්තර්ගත hooks/filters තවදුරටත් ක්‍රියාත්මක විය නොහැක. මේ නිසා, සමහර විට Page Builder Sandwich හට ඔබේ අන්තර්ගතය ඇත්තේ කොතැනදැයි හඳුනා ගැනීමට නොහැකි විය හැකි අතර සංස්කරණය කිරීමට කිසිවක් නොමැති බැවින් එය සංස්කරණ බොත්තම නොපෙන්වයි.

මෙය නිවැරදි කිරීම සඳහා, එම නිශ්චිත පිටුව/සටහන සඳහා එම page builder භාවිතා නොකිරීමට තෝරාගෙන, WordPress හි පෙරනිමි අන්තර්ගත සංස්කාරකය පමණක් භාවිතා කිරීමට තෝරන්න.

පිටුවෙහි ඔබට සංස්කරණ හැකියාවන් (Editing Capabilities) ඇති බව තහවුරු කරගන්න

ඔබට පිටුව සංස්කරණය කිරීමට නොහැකි නම් සංස්කරණ බොත්තම නොපෙනේ. උදාහරණයක් ලෙස, ඔබ සංස්කාරකයෙකු (editor) හෝ දායකයෙකු (contributor) වන අතර ඔබට වෙබ් අඩවියේ බ්ලොග් සටහන් සහ ලිපි ලිවිය හැකි නම්, ඉන් අදහස් වන්නේ ඔබට මුල් පිටුව හෝ අප අමතන්න පිටුව සංස්කරණය කළ හැකි බව නොවේ. ඔබේ admin bar එකෙහි “Edit Post” බොත්තම දැකගත හැකි නම්, PB Sandwich භාවිතයෙන්ද එය සංස්කරණය කිරීමට ඔබට හැකි විය යුතුය. ඔබට අවශ්‍ය නම් සංස්කරණ වරප්‍රසාද ලබා දෙන ලෙස ඔබේ වෙබ් අඩවි පරිපාලකගෙන් ඉල්ලා සිටින්න.

PB Sandwich ක්‍රියා කිරීම නවත්වන Javascript දෝෂයක් තිබිය හැක

PB Sandwich විශාල වශයෙන් Javascript භාවිතා කරයි. ඔබේ වෙබ් අඩවියේ ඇති වෙනත් script වලින් එන Javascript දෝෂ තිබේ නම්, මෙය PB Sandwich ක්‍රියා කිරීම වැළැක්විය හැක. මෙය එසේ දැයි පරීක්ෂා කිරීමට, දෝෂ තිබේදැයි බැලීමට ඔබේ බ්‍රව්සරයේ developer console එක විවෘත කළ හැක. 

මේ සඳහා Chrome භාවිතා කිරීමට මම නිර්දේශ කරමි. පිටුවේ ඕනෑම තැනක right click කර, පසුව “Inspect” විකල්පය ක්ලික් කරන්න. මෙය ඔබේ බ්‍රව්සරයේ පහළින් නව ප්‍රදේශයක් ගෙන එනු ඇත, “console” ටැබය ක්ලික් කරන්න. ඔබට දෝෂ තිබේ නම්, ඔබ මෙවැනි දෙයක් දැකිය යුතුය:

4acce143a3 file

ඔබට දෝෂයක් ඇත්නම්, script එකේ නම මත ක්ලික් කිරීමෙන් හෝ ඔබේ මූසිකය ගෙන යාමෙන් එය පැමිණෙන්නේ කොතැනින්ද යන්න පිළිබඳ හෝඩුවාවක් ලබා ගත හැක:

abb5a87c67 file ITjVcdhZQU

මෙම දෝෂ ඔබේ තේමාවෙන් හෝ ඔබ සතුව ඇති වෙනත් ප්ලගීන වලින් පැමිණිය හැක. එම දෝෂ නිවැරදි කර ගැනීමෙන් PB Sandwich නැවත ක්‍රියාත්මක කළ හැක.

ඔබේ තේමාව හෝ ඔබේ ප්ලගීනයක් Javascript දෝෂයට හේතු වන්නේ නම්, කරුණාකර [email protected] වෙත විද්‍යුත් තැපෑලෙන් අපට දන්වන්න, අපි ගැටලුව විසඳීමට උපරිම උත්සාහයක් දරන්නෙමු 🙂

ඔබ CloudFlare භාවිතා කරන්නේ නම්, Rocket Loader ක්‍රියාවිරහිත කර ඇති බව තහවුරු කරගන්න

CloudFlare යනු බහුලව භාවිතා වන නොමිලේ ලැබෙන DNS CDN එකකි. එය විශිෂ්ටයි, නමුත් Rocket Loader විශේෂාංගය සම්බන්ධයෙන් PBS හට දැනට ගැටළු තිබේ. Rocket Loader මඟින් Javascript ගොනු වල load time එක වැඩි දියුණු කරයි, නමුත් එය PBS හි scripts වල පරායත්තතාවය සහ ඇමතුම් අනුපිළිවෙල අවුල් කරයි. ඔබ Rocket Loader ක්‍රියාත්මක කර ඇත්නම්, Page Builder Sandwich සඳහා වන සංස්කරණ බොත්තම නොපෙනේ (සහ Javascript console දෝෂ කිසිවක් නොපෙන්වයි).

ඔබේ වෙබ් අඩවිය CloudFlare හි Rocket Loader භාවිතා කරන්නේ දැයි පරීක්ෂා කිරීමට, ඔබේ වෙබ් පිටුවේ source කේතය බලන්න (දකුණු ක්ලික් කර “View Page Source” තෝරන්න), ඉන්පසු “rocketscript” යන පාඨය සොයන්න, ඔබට එම පාඨය හමු වුවහොත් ඔබ Rocket Loader ක්‍රියාත්මක කර ඇත.

e4dff5b8c0 file tPnWvP09FF

එය ක්‍රියාවිරහිත කරන්නේ කෙසේද යන්න පිළිබඳ සම්පූර්ණ උපදෙස් සඳහා CloudFlare සහ Rocket Loader අනුකූලතාව පිළිබඳ ලිපිය කියවන්න.


මම ඒ සියල්ල කළත් සංස්කරණ බොත්තම තවමත් නැත!

හරි, මෙම අවස්ථාවේදී, ඉහත විසඳුම් කිසිවක් ක්‍රියාත්මක නොවන්නේ නම්, එය නොපෙන්වන්නේ ඇයි සහ ඒ ගැන කුමක් කළ යුතුද යන්න පැහැදිලි කිරීමට කාලය විය හැකිය. සූදානම්ද? අපි පටන් ගනිමු!

“ඇයි” යන්න (තාක්ෂණික නොවන වචන වලින්)

ඔබේ පිටුවේ/සටහනේ අන්තර්ගතය පිහිටා ඇත්තේ කොතැනදැයි Page Builder Sandwich දැනගත යුතුය. අපි මෙය කරන්නේ WordPress විසින් සටහනේ අන්තර්ගතය පූරණය කරන විට ඊට සවන් දී එම ප්‍රදේශය “සලකුණු” කිරීමෙනි, එවිට සියල්ල පූරණය වූ විට හොඳ අන්තර්ගතය ඇත්තේ කොතැනදැයි අපට සොයාගත හැකිය.

සමහර විට, සමහර ප්ලගීන මෙම ක්‍රියාවලිය අභිබවා යමින් හෝ මඟ හරිමින් ඒ වෙනුවට ඔවුන්ගේම ආකාරයෙන් අන්තර්ගතය පූරණය කිරීමට උත්සාහ කරයි. සමහර විට මෙය කමක් නැත, නමුත් ඇතැම් අවස්ථාවලදී, විශේෂයෙන් ප්‍රධාන සටහනේ අන්තර්ගතය පූරණය කිරීමට අදාළ වන විට, මෙය සමහර ප්ලගීන ක්‍රියා කිරීම නැවැත්වීමට හේතු විය හැක. වෙනත් ප්ලගිනයක් මෙම පූරණ ක්‍රියාවලිය මඟ හරින විට, අප විසින් සිදු කරන ලද “සලකුණු” නැති වී යා හැකි අතර, සංස්කාරකය ක්‍රියාත්මක වීමට කාලය පැමිණි විට, ඔබේ අන්තර්ගතය ඇත්තේ කොතැනදැයි සොයා ගැනීමට එයට නොහැකි වේ. එබැවින්, සංස්කරණ බොත්තම නොපෙනේ! මෙම හේතුව නිසාම ඔබේ පිටුවට අන්තර්ගතය එක් කරන සමහර සමාජ මාධ්‍ය බෙදාගැනීමේ ප්ලගීන වැනි සමහර ප්ලගීනද ක්‍රියා කිරීම නැවැත්විය හැකි බව ඔබට පෙනී යනු ඇත.

“ඇයි” යන්න (තාක්ෂණික වචන වලින්)

Page Builder Sandwich හට ඔබේ පිටුවේ/සටහනේ අන්තර්ගතය පිහිටා ඇත්තේ කොතැනදැයි දැනගත යුතු අතර, එය කරන්නේ the_content filter එකට සම්බන්ධ වී (hooking into) ඔබේ ප්‍රධාන අන්තර්ගතය වටා wrapper එකක් එක් කිරීමෙනි. සමහර ප්ලගීන මෙය අභිබවා ගොස් ඒ වෙනුවට පසුව ඇති get_the_content() ශ්‍රිතයක් මඟින් අන්තර්ගතය overwrite කළ හැක. අවාසනාවකට මෙන්, මෙසේ කිරීමෙන් සියලුම the_content filters කැඳවීම වළක්වන අතර එමඟින් PBS හි wrapper එක නැති වී යයි. වෙනත් ඕනෑම ප්ලගිනයක වෙනස්කම්ද නැති වී යනු ඇත.

get_the_content() භාවිතා කිරීමේ කිසිදු වරදක් නැත, නමුත් සියලුම the_content filters ධාවනය වන සාමාන්‍ය the_content() ඇමතුම වෙනුවට ප්‍රධාන විමසුම (main query) තුළ සහ තනි සටහන් ආකෘති පිටුව (single post template page) තුළ මෙය භාවිතා කළහොත් අහිතකර බලපෑම් ඇති විය හැක.

ඒ ගැන කුමක් කළ යුතුද

ලොග් වී සිටින අතරතුර frontend හි ඔබේ පිටුවට/සටහනට පිවිස page source එක බැලීමෙන් Page Builder Sandwich හි “සලකුණු” නොමැති දැයි ඔබට පරීක්ෂා කළ හැක. කේත අතර පහත පේළිය සොයාගත හැකිදැයි සොයන්න:

data-name="main-content"

ඔබට එය සොයාගත හැකි නම්, කොතැනක හෝ Javascript ගැටළුවක් විය හැකි අතර ඔබ භාවිතා කරන තේමාව සහ ප්ලගීන අපට දන්වන්න, අපට එය නිවැරදි කළ හැකිය.

නමුත් ඔබට එය සොයාගත නොහැකි නම්, ඔබේ තේමාව (හෝ ප්ලගිනයක්, නමුත් එය පිටුවක් හෝ බ්ලොග් සටහනක් නම් බොහෝ දුරට තේමාව) සටහනේ අන්තර්ගතය සමඟ යමක් කරනවා විය හැක. මෙය එසේ නම්, ඔබ තේමාවේ කතුවරයා සම්බන්ධ කර ගැටලුව ගැන ඔවුන්ට දැනුම් දිය යුතුය! ඔබට ඉහත තාක්ෂණික “ඇයි” පැහැදිලි කිරීම ඔවුන්ට පෙන්විය හැක, මෙය දෝෂ නිරාකරණයට (debugging) උපකාරී වේ 🙂

PHP හි වෙනස්කම් කිරීමට ඔබට විශ්වාසයක් ඇත්නම්, සටහනේ අන්තර්ගතය හසුරුවන template ගොනුව සොයා ගැනීමෙන් ඔබට එය නිවැරදි කිරීමට උත්සාහ කළ හැකිය. අප මුහුණ දුන් එක් විසඳුමක් වන්නේ මේ සඳහා වන ඇමතුම් ප්‍රතිස්ථාපනය කිරීමයි:

$content = get_the_content();

මේ සමඟ:

ob_start();
the_content();
$content = ob_get_clean();<br>

සටහන: ඔබේ PHP විචල්‍යය (variable) වෙනස් විය හැක, නමුත් සංකල්පය සමාන විය යුතුය. එය ක්‍රියාත්මක වන්නේ නම්, ඔබේ තේමාවේ සෘජුවම මෙම වෙනස ක්‍රියාත්මක කරනවා වෙනුවට child theme එකක් සාදාගත හැකි නම් වඩාත් සුදුසුය. මෙම වෙනස නිසා අතුරු ආබාධද ඇති විය හැක, එබැවින් මේ පිළිබඳව ඔබේ තේමාවේ කතුවරයා සමඟ සාකච්ඡා කිරීම වඩාත් සුදුසුය.