Hindi Lumalabas ang Button na “Edit with Page Builder Sandwich”
Kung hindi mo makita ang button na “Edit with Page Builder Sandwich” sa frontend ng iyong site, narito ang ilang bagay na maaari mong subukan:
Siguraduhing Nakikita ang Iyong Admin Bar
Ang edit button para sa PB Sandwich ay available sa admin bar sa iyong frontend. Siguraduhing nakikita ang admin bar sa pamamagitan ng pagpunta sa iyong administration at pag-navigate sa Users > Your Profile at i-double check kung may tsek ang kahon para sa Show Toolbar when viewing site.

Siguraduhing Nasa Isang Page, Post o Custom Post Type Ka
Tanging ang Posts, Pages & Custom Post Types lang ang mae-edit sa Frontend. Mae-edit mo lang ang mga bagay sa frontend kung mae-edit mo ang mga ito gamit ang content editor ng WordPress sa backend. Ang iba pang mga area ng iyong site – hal. ang listahan ng blog posts sa frontpage, listahan ng lahat ng blog post, mga listing ng kategorya, 404 pages, search pages – ay mga dynamic page na ginawa ng WordPress kasama ng theme na iyong ginagamit at hindi mae-edit gamit ang PB Sandwich.
Ang isang palatandaan kung mae-edit ang kasalukuyang webpage ay kung may nakikita kang “Edit Post” o “Edit Page” sa iyong admin bar.
Siguraduhing Hindi Dynamically Generated ng Iyong Theme o Plugin ang Iyong Nilalaman
Kung ang iyong page/post ay dynamically generated ng isang theme o plugin, hindi ito mae-edit gamit ang Page Builder Sandwich (at malamang sa iba pang page builder din). Kung mapapansin mo na walang laman ang iyong content editor sa backend, ngunit kapag tiningnan ang iyong page sa frontend ay puno ito ng content, magandang palatandaan ito na dynamically generated ang iyong page.
Para tingnan kung dynamically generated ang iyong page, tingnan ang source ng iyong webpage (mag-right click at piliin ang “View Page Source”). Hanapin ang tekstong “pbs-main-wrapper”, kung wala kang makitang ganoong teksto kahit saan, dynamically generated ang iyong page.
Narito ang ilang halimbawa ng dynamically generated na content:
- Ang iyong page ay binubuo ng maraming widget na idinaragdag/ine-edit mo gamit ang Customizer,
- Ang iyong page ay binubuo ng iba’t ibang page na pinagsama-sama ng isang “one page” theme (sa sitwasyong ito maaari mo pa ring i-edit ang bawat indibidwal na page, ngunit hindi ang pinagsamang page), o
- Ang iyong page ay binubuo ng mga pinakabagong blog post.
Subukang Magdagdag Muna ng Ilang Nilalaman
May mga pagkakataon kung saan hindi talaga ipinapakita ng theme ang content kung blangko ito, at naging dahilan ito para mapagkamalan ng PBS na hindi mae-edit ang page. Para tingnan kung ito nga ang nangyayari, i-edit ang iyong page/post sa backend editor, subukang magdagdag ng anumang teksto sa iyong content (halimbawa “hello”), pagkatapos ay i-click ang button na “Edit with Page Builder Sandwich” mula roon.
Salamat kay Mathias Hellquist para sa tip na ito!
Siguraduhing Hindi “Pagmamay-ari” ng Ibang Page Builder ang Iyong Page
Pinapapili ka ng ilang page builder kung gagamitin ang default na content editor ng WordPress, o ang sariling editor ng page builder. Kung na-edit mo na ang iyong page gamit ang ibang page builder, posibleng “naangkin” na ng page builder na iyon ang content, at hindi na gagana ang iba pang content hook/filter. Dahil dito, kung minsan ay hindi matutukoy ng Page Builder Sandwich kung nasaan ang iyong content at hindi nito ipapakita ang edit button dahil walang mae-edit.
Para ayusin ito, piliin lang na huwag gamitin ang page builder na iyon para sa partikular na page/post na iyon, at piliing gamitin na lang ang default na content editor ng WordPress.
Siguraduhing Mayroon Kang Kakayahang Mag-edit sa Page
Hindi lalabas ang edit button kung hindi mo maaaring i-edit ang page. Halimbawa, kung ikaw ay isang editor o contributor at nakakapagsulat ka ng mga blog post at artikulo sa site, hindi ito nangangahulugang maaari mo ring i-edit ang front page o ang iyong contact us page. Kung nakikita mo ang button na “Edit Post” sa iyong admin bar, dapat ay kaya mo rin itong i-edit gamit ang PB Sandwich. Humingi ng mga pribilehiyo sa pag-edit sa administrator ng iyong site kung kailangan mo ang mga ito.
Maaaring May Javascript Error na Pumipigil sa PB Sandwich Gumana
Madalas at malawakang gumagamit ng Javascript ang PB Sandwich. Kung may mga Javascript error na nagmumula sa iba pang mga script sa iyong site, maaari nitong pigilan ang PB Sandwich na gumana. Para tingnan kung ito ang nangyayari, maaari mong buksan ang developer console sa iyong browser para maghanap ng mga error.
Inirerekomenda kong gamitin ang Chrome para rito. Mag-right click sa kahit saan sa page, pagkatapos ay i-click ang opsyong “Inspect”. Magbubukas ito ng bagong panel sa ibaba ng iyong browser, i-click ang tab na “console”. Kung mayroon kang mga error, dapat may makita kang katulad nito:

Kung may error ka nga, maaari ka ring makakuha ng pahiwatig kung saan ito nanggagaling sa pamamagitan ng pag-click o pagtutok ng mouse sa pangalan ng script:

Ang mga error na ito ay maaaring magmula sa iyong theme o iba pang mga plugin na mayroon ka. Ang pag-aayos sa mga error na iyon ay maaaring magpagana muli sa PB Sandwich.
Kung ang iyong theme o isa sa iyong mga plugin ang sanhi ng Javascript error, mangyaring ipaalam sa amin sa pamamagitan ng email sa [email protected] at gagawin namin ang aming makakaya para ayusin ang isyu 🙂
Kung Gumagamit Ka ng CloudFlare, Siguraduhing Naka-off ang Rocket Loader
Ang CloudFlare ay isang malawakang ginagamit na libreng DNS CDN. Mahusay ito, ngunit kasalukuyang may mga problema ang PBS pagdating sa feature na Rocket Loader. Pinapabilis ng Rocket Loader ang oras ng pag-load ng mga Javascript file, ngunit sinisira nito ang dependency at pagkakasunod-sunod ng pagtawag sa mga script ng PBS. Kung naka-on ang Rocket Loader, hindi lalabas ang edit button para sa Page Builder Sandwich (at walang lalabas na Javascript console error).
Para tingnan kung gumagamit ang iyong site ng Rocket Loader ng CloudFlare, tingnan ang source ng iyong webpage (mag-right click at piliin ang “View Page Source”), at pagkatapos ay hanapin ang tekstong “rocketscript”, kung makita mo ang tekstong iyon, naka-on ang Rocket Loader.

Basahin ang artikulo sa CloudFlare & Rocket Loader Compatibility para sa buong mga tagubilin kung paano ito i-off.
Ginawa Ko Na ang Lahat ng Iyon at Wala Pa Rin ang Edit Button!
Sige sa puntong ito, kung wala sa mga solusyon sa itaas ang gumana, maaaring oras na upang ipaliwanag kung bakit hindi ito lumalabas at kung ano ang gagawin tungkol dito. Handa na? Tara!
Ang Dahilan o “Bakit” (sa Hindi Teknikal na Pananalita)
Kailangang malaman ng Page Builder Sandwich kung nasaan ang content ng iyong page/post. Ginagawa namin ito sa pamamagitan ng pagsubaybay kapag ini-load ng WordPress ang content ng post at “pagmamarka” sa lugar na iyon, para kapag na-load na ang lahat ay mahahanap namin kung nasaan ang content.
Kung minsan, ino-override o bina-bypass ng ilang plugin ang prosesong ito at sa halip ay sinusubukang i-load ang content sa sarili nilang paraan. Kung minsan ay ayos lang ito, ngunit sa ilang partikular na sitwasyon, lalo na kapag sangkot ang pag-load sa content ng pangunahing post, maaari itong maging sanhi ng paghinto sa paggana ng ilang plugin. Kapag bina-bypass ng ibang plugin ang proseso ng pag-load na ito, maaaring mawala ang mga “pagmamarka” na ginawa namin, at kapag oras na para pumasok ang editor, hindi na nito mahanap kung nasaan ang iyong content. Kaya, hindi lumalabas ang edit button! Maaari mo ring mapansin na ang ilang plugin na nagdaragdag ng content sa iyong page, tulad ng ilang social sharing plugin, ay maaari ding huminto sa paggana dahil sa mismong bagay na ito.
Ang Dahilan o “Bakit” (sa Teknikal na Pananalita)
Kailangang malaman ng Page Builder Sandwich kung nasaan ang content ng iyong page/post, at ginagawa nito ito sa pamamagitan ng pag-hook sa the_content na filter at nagdaragdag ng wrapper sa paligid ng iyong pangunahing content. Maaaring i-override ito ng ilang plugin at sa halip ay i-overwrite ang content gamit ang function na get_the_content() sa bandang huli. Sa kasamaang-palad, ang paggawa nito ay pumipigil sa LAHAT ng filter na the_content na matawag at dahil dito ay nawawala ang wrapper ng PBS. Ang mga pagbabago rin ng iba pang plugin ay mawawala rin.
Walang masama sa paggamit ng get_the_content() per se, ngunit maaaring magkaroon ng masasamang epekto kung gagamitin ito sa main query at sa loob ng single post template page sa halip na sa normal na tawag sa the_content() kung saan pinapatakbo ang lahat ng the_content na filter.
Ano ang Dapat Gawin Tungkol Dito
Maaari mong tingnan kung wala ang mga “marka” ng Page Builder Sandwich sa pamamagitan ng pagbisita sa iyong page/post sa frontend at pagtingin sa page source habang naka-log in. Maghanap sa kumpol ng code kung mahahanap mo ang string:
data-name="main-content"
Kung mahahanap mo ito, maaaring may problema lang sa Javascript sa kung saan at ipaalam lang sa amin ang theme at mga plugin na iyong ginagamit at maaari naming ayusin iyon.
Ngunit kung hindi mo ito mahanap, maaaring ang iyong theme lang (o isang plugin, ngunit malamang na ang theme kung ito ay isang page o blog post) ang may ginagawa sa content ng post. Kung ito ang sitwasyon, dapat kang makipag-ugnayan sa may-akda ng theme at ipaalam sa kanila ang problema! Maaari mo ring ipakita sa kanila ang teknikal na paliwanag sa “bakit” sa itaas, makatutulong ito sa pag-debug 🙂
Kung tiwala ka sa iyong sarili sa pagkalikot sa PHP, maaari mong subukang ayusin ito sa pamamagitan ng paghahanap sa template file na humahawak sa content ng post. Ang isang solusyon na aming naranasan ay sa pamamagitan ng pagpapalit ng mga tawag para sa:
$content = get_the_content();
ng:
ob_start(); the_content(); $content = ob_get_clean();<br>
Paalala: Maaaring mag-iba ang PHP variable sa iyo, ngunit dapat ay pareho ang konsepto. Kung gumana ito, mas mabuti rin kung makakagawa ka ng child theme sa halip na direktang ipatupad ang pagbabagong ito sa iyong theme. Maaari ding magkaroon ng mga side-effect dahil sa pagbabago, kaya mas mabuting sumangguni ka sa may-akda ng iyong theme tungkol dito.