рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг

Asyntai рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ

рд╢реБрд░реВ рдХрд░рдирд╛
рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЬреНрдЮрд╛рди рдЖрдзрд╛рд░ AI рдЖрдкрдХреА рд╕рд╛рдордЧреНрд░реА рддрдХ рдХреИрд╕реЗ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдЕрдкрдирд╛ AI рдЯреЗрд╕реНрдЯ рдХрд░реЗрдВ рд╡реЗрдмрд╕рд╛рдЗрдЯреЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ
Customization
рдЪреИрдЯ рдмрдЯрди рдбрд┐рдЬрд╝рд╛рдЗрди рдЪреИрдЯ рдмрдЯрди рдЖрдЗрдХрди рд╡рд┐рдЬреЗрдЯ рд░рдВрдЧ AI рд╕рд╣рд╛рдпрдХ рдирд╛рдо рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрджреЗрд╢ рд╡рд┐рдЬреЗрдЯ рд╕реНрдерд┐рддрд┐ рдСрдЯреЛ-рдЯреНрд░рд┐рдЧрд░ рдЕрднрд┐рд╡рд╛рджрди рдмрдмрд▓ рдЕрдкрдард┐рдд рдмреИрдЬ рдирд┐рд░реНрджреЗрд╢ рдореЛрдб рдкреНрд░рд╢реНрди рдкреВрдЫреЗрдВ рдЗрдореЛрдЬреА рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рднрд╛рд╖рд╛рдУрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рдИрдореЗрд▓ рдПрдХрддреНрд░ рдХрд░реЗрдВ рдлрд╝реЛрди рдирдВрдмрд░ рдПрдХрддреНрд░ рдХрд░реЗрдВ рд╕реНрдорд╛рд░реНрдЯ рд▓реАрдб рдХреИрдкреНрдЪрд░ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдмреНрд░рд╛рдВрдбрд┐рдВрдЧ рдЫреБрдкрд╛рдПрдВ рдЧреЛрдкрдиреАрдпрддрд╛ рд▓рд┐рдВрдХ рдХрд╕реНрдЯрдо рдиреЛрдЯрд┐рд╕ рд▓рд┐рдВрдХ рдЙрд╕реА рдЯреИрдм рдореЗрдВ рдЦреЛрд▓реЗрдВ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдирдИ рдмрд╛рддрдЪреАрдд рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рдЗрддрд┐рд╣рд╛рд╕ рдЯреИрдЧрд▓рд╛рдЗрди рдФрд░ рд╕реНрдерд┐рддрд┐ рдмрд┐рдВрджреБ рд╕реНрдкреАрдЪ рдЯреВ рдЯреЗрдХреНрд╕реНрдЯ рдЪреИрдЯ рдЖрдЗрдХрди рдХрдВрдкрдиреА рд▓реЛрдЧреЛ рд╡рд░реНрдг рд╕реАрдорд╛ рддрд╛рдкрдорд╛рди
AI рдирд┐рд░реНрджреЗрд╢ рд╕реБрдЭрд╛рд╡ рджреВрд╕рд░реЗ рдЪреИрдЯрдмреЙрдЯ рд╕реЗ рдмрджрд▓рд╛рд╡ рдкреНрд▓рд╛рди рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ
рд╕реБрд╡рд┐рдзрд╛рдПрдВ
Ask AI рдмрд╛рд░ AI рд╕рд░реНрдЪ рдмрд╛рд░ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреНрд░реЙрд▓ рдЬреНрдЮрд╛рди рдЕрдВрддрд░рд╛рд▓ рдЙрддреНрдкрд╛рдж рдХрд╛рд░реНрдб рдЧрддрд┐рд╢реАрд▓ рдЙрддреНрдкрд╛рдж рдХрд╛рд░реНрдб рдЧрддрд┐рд╢реАрд▓ рдЫрд╡рд┐рдпрд╛рдБ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрджрд░реНрдн рдХрд╕реНрдЯрдо рдЯреВрд▓ рд▓рд┐рдВрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рдХреНрд░рд┐рдп рд╕рдВрджреЗрд╢ рд▓рд╛рдЗрд╡ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдорд╛рдирд╡ рдЯреЗрдХрдУрд╡рд░ рдПрд╕реНрдХреЗрд▓реЗрд╢рди AI рд╕реВрдЪрдирд╛рдПрдБ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реВрдЪрдирд╛рдПрдБ рджреИрдирд┐рдХ рд░рд┐рдкреЛрд░реНрдЯ рд░рд┐рдпрд▓-рдЯрд╛рдЗрдо рдбреЗрдЯрд╛ рдлрд╝реАрдб рд░рд┐рдпрд▓-рдЯрд╛рдЗрдо рдбреЗрдЯрд╛ рдлрд╝реАрдб рдореИрдХреНрд╕ рдЯреАрдо рд╕рджрд╕реНрдп Single Sign-On рджреНрд╡рд┐-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЗрдореЗрдЬ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ рдЗрдореЗрдЬ рд╡рд┐рдЬрд╝рди рдЕрдиреБрд╡рд╛рдж рд╡рд┐рдЬреЗрдЯ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг AI рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рд▓реАрдбреНрд╕ рд╕реНрдорд╛рд░реНрдЯ рд▓реАрдб рдХреИрдкреНрдЪрд░ рд╕рдкреЛрд░реНрдЯ рдЯрд┐рдХрдЯ рдЪреИрдЯ рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ рдмреБрдХрд┐рдВрдЧ рд╡реЙрдЗрд╕ рдПрдЬреЗрдВрдЯ рдПрдореНрдмреЗрдб рдкреЗрдЬ рдмрд╛рд╣рд░ рд░рдЦреЗрдВ рдмреНрд▓реЙрдХ рдХрд┐рдП рдЧрдП IP рдбреЗрдЯрд╛ рдкреНрд░рддрд┐рдзрд╛рд░рдг рдиреАрддрд┐ рд╢реВрдиреНрдп рд╕рдВрдЧреНрд░рд╣рдг рдореЛрдб PII рдорд╛рд╕реНрдХрд┐рдВрдЧ рдЙрддреНрддрд░ рд╡рд░реНрдЧреАрдХрд░рдгрдХрд░реНрддрд╛ Access Tags рд╡рд┐рдЬреЗрдЯ рд╕рдВрд╕реНрдХрд░рдг рдкрд┐рдирд┐рдВрдЧ рдСрдбрд┐рдЯ рд▓реЙрдЧ рдЙрддреНрддрд░ рд╕реБрдЭрд╛рд╡ рдлрд╝реЙрд▓реЛ-рдЕрдк рд╕рдВрджреЗрд╢ рд╕реНрдкреАрдЪ рдЯреВ рдЯреЗрдХреНрд╕реНрдЯ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдПрдореНрдмреЗрдбреЗрдб рдЪреИрдЯ iframe рд╕реЗ рдПрдореНрдмреЗрдб

ProcessWire рдореЗрдВ Asyntai AI рдЪреИрдЯрдмреЙрдЯ рдХреИрд╕реЗ рдЬреЛрдбрд╝реЗрдВ

ProcessWire CMS рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЪрд░рдг-рджрд░-рдЪрд░рдг рдЧрд╛рдЗрдб

рдПрдореНрдмреЗрдб рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

рдЪрд░рдг 1: рдЕрдкрдирд╛ рдПрдореНрдмреЗрдб рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдкрдиреЗ Asyntai рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдиреАрдЪреЗ "Embed Code" рдЕрдиреБрднрд╛рдЧ рддрдХ рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВред рдЕрдкрдирд╛ рдпреВрдирд┐рдХ рдПрдореНрдмреЗрдб рдХреЛрдб рдХреЙрдкреА рдХрд░реЗрдВ, рдЬреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>

рдиреЛрдЯ: рдКрдкрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдбреИрд╢рдмреЛрд░реНрдб рд╕реЗ рдЕрдкрдирд╛ рдЕрджреНрд╡рд┐рддреАрдп рдПрдореНрдмреЗрдб рдХреЛрдб рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдЖрдкрдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдЬреЗрдЯ ID рд╣реЛрддреА рд╣реИред

рдЪрд░рдг 2: рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ (рдЕрдиреБрд╢рдВрд╕рд┐рдд)

ProcessWire site/templates/ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рд╕реНрдерд┐рдд PHP рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдПрдореНрдмреЗрдб рдХреЛрдб рдХреЛ рд╕реАрдзреЗ рдЕрдкрдиреА рдореБрдЦреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реИ:

  1. FTP, SSH, рдпрд╛ рдЕрдкрдиреЗ рдлрд╝рд╛рдЗрд▓ рдореИрдиреЗрдЬрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреА ProcessWire рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рддрдХ рдкрд╣реБрдБрдЪреЗрдВ
  2. site/templates/ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ
  3. рдЕрдкрдиреА рдореБрдЦреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ — рдпрд╣ рдЕрдХреНрд╕рд░ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ _main.php рдпрд╛ basic-page.php рд╣реЛрддреА рд╣реИ
  4. рдпрджрд┐ рдЖрдк delayed output strategy (рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд╛рдЗрдЯ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ _main.php рдЦреЛрд▓реЗрдВ
  5. рдХреНрд▓реЛрдЬрд╝рд┐рдВрдЧ </body> рдЯреИрдЧ рдЦреЛрдЬреЗрдВ
  6. рдЗрд╕рдХреЗ рдареАрдХ рдкрд╣рд▓реЗ рдЕрдкрдирд╛ Asyntai рдПрдореНрдмреЗрдб рдХреЛрдб рдкреЗрд╕реНрдЯ рдХрд░реЗрдВ:
<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>
</body>

рд╕реБрдЭрд╛рд╡: рдХреНрд▓реЛрдЬрд┐рдВрдЧ </body> рдЯреИрдЧ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░рдЦрдиреЗ рд╕реЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЪреИрдЯрдмреЙрдЯ рдкреЗрдЬ рдХрдВрдЯреЗрдВрдЯ рдХреЗ рдмрд╛рдж рд▓реЛрдб рд╣реЛ, рдЬреЛ рдЗрд╖реНрдЯрддрдо рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкреЗрдЬ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЛ рдзреАрдорд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 1: _foot.inc рдпрд╛ _main.php рдПрдкреЗрдВрдб рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ

рдпрджрд┐ рдЖрдкрдХреА ProcessWire рд╕рд╛рдЗрдЯ рдЕрдкреЗрдВрдб рдлрд╝рд╛рдЗрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ (рдХрдИ рд╕рд╛рдЗрдЯ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп), рддреЛ рдЖрдк рд╕рд╛рдЭрд╛ рдлрд╝реБрдЯрд░ рдЗрдиреНрдХреНрд▓реВрдб рдореЗрдВ рдПрдореНрдмреЗрдб рдХреЛрдб рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:

  1. site/templates/ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ
  2. _foot.inc (рдпрд╛ рдЕрдкрдиреА рд╕рдордХрдХреНрд╖ рдлрд╝реБрдЯрд░ рдЗрдиреНрдХреНрд▓реВрдб рдлрд╝рд╛рдЗрд▓) рдЦреЛрд▓реЗрдВ
  3. рдХреНрд▓реЛрдЬрд╝рд┐рдВрдЧ </body> рдЯреИрдЧ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рдЕрдкрдирд╛ Asyntai рдПрдореНрдмреЗрдб рдХреЛрдб рдкреЗрд╕реНрдЯ рдХрд░реЗрдВ
  4. рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреЗрдВ

ProcessWire рдХреА delayed output strategy рдЖрдорддреМрд░ рдкрд░ рддреАрди рдкреНрд░рдореБрдЦ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ:

  • _init.php — рд╣рд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдкрд╣рд▓реЗ рдЪрд▓рддрд╛ рд╣реИ, рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИ
  • рдЖрдкрдХреА рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ (рдЬреИрд╕реЗ, basic-page.php) — рдХрдВрдЯреЗрдВрдЯ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рднрд░рддреА рд╣реИ
  • _main.php — рдЙрди рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдВрддрд┐рдо HTML рдорд╛рд░реНрдХрдЕрдк рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреА рд╣реИ

рдпрджрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рддреЛ </body> рд╕реЗ рдкрд╣рд▓реЗ _main.php рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣рд░ рдкреЗрдЬ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗред

рдиреЛрдЯ: The file names _init.php and _main.php are configured рдЕрдкрдиреЗ site/config.php via the $config->prependTemplateFile and $config->appendTemplateFile settings. Check your config if your files are named differently.

рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 2: $config->scripts рдРрд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ

ProcessWire provides a $config->scripts FilenameArray that you can use to manage JavaScript files. In your _init.php or individual template file, add:

<?php
$config->scripts->add('https://asyntai.com/static/js/chat-widget.js');
?>

рдлрд┐рд░ рдЕрдкрдиреЗ _main.php (рдпрд╛ рдлрд╝реБрдЯрд░ рдЗрдиреНрдХреНрд▓реВрдб) рдореЗрдВ, рдЙрдиреНрд╣реЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдРрд░реЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реВрдк рдХрд░реЗрдВ:

<?php foreach($config->scripts as $file): ?>
<script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>

рдорд╣рддреНрд╡рдкреВрд░реНрдг: The $config->scripts approach handles the script src attribute, but the data-asyntai-id attribute needs to be handled separately. You will need to either add the data attribute manually in the loop output, or use the direct script tag method from Step 2 instead for the simplest setup.

рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдзрд┐ 3: рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ (ready.php)

рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП, рдЖрдк рд╣рд░ рдкреЗрдЬ рдореЗрдВ рдЪреИрдЯрдмреЙрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ProcessWire рдХреЗ рд╣реБрдХ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдкрдиреА site/ready.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВ:

<?php
$wire->addHookAfter('Page::render', function(HookEvent $event) {
    $html = $event->return;
    $script = '<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>';
    $html = str_replace('</body>', $script . '</body>', $html);
    $event->return = $html;
});
?>

рдпрд╣ рд╣реБрдХ рд╣рд░ рдкреЗрдЬ рдХреЗ рд░реЗрдВрдбрд░ рдХрд┐рдП рдЧрдП HTML рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреНрд▓реЛрдЬрд┐рдВрдЧ </body> рдЯреИрдЧ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ Asyntai рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рддрд╛ рд╣реИред

рд╕реБрдЭрд╛рд╡: рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╣рд░ рдкреЗрдЬ рдкрд░ рдЪреИрдЯрдмреЙрдЯ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ ready.php рд╣реБрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрджрд░реНрд╢ рд╣реИред рдпрд╣ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдФрд░ рдереАрдо рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж рднреА рдмрдирд╛ рд░рд╣рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд╣рд░ рд░рд╣рддрд╛ рд╣реИред

рдЪрд░рдг 3: рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ

рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрддрди рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рдПрдХ рдирдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЯреИрдм рдпрд╛ рдЗрдирдХреЙрдЧреНрдирд┐рдЯреЛ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЕрдкрдиреА ProcessWire рд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рдПрдБред рдЖрдкрдХреЛ рдиреАрдЪреЗ рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ рдЪреИрдЯ рд╡рд┐рдЬреЗрдЯ рдмрдЯрди рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдЦреБрд▓рддрд╛ рд╣реИ рдФрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╡рд┐рдЬреЗрдЯ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣рд╛? рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдиреЗ рд╕рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╣реЗрдЬ рд▓рд┐рдпрд╛ рд╣реИред рдЕрдкрдирд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдпрд╛ рдЗрдирдХреЙрдЧреНрдирд┐рдЯреЛ рд╡рд┐рдВрдбреЛ рдореЗрдВ рджреЗрдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдпрджрд┐ ProcessWire рдХрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреИрд╢ рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ рдЖрдкрдХреЛ Modules → Core → Template Engine Cache рдкрд░ рдЬрд╛рдХрд░ рдпрд╛ рдЕрдкрдиреЗ URL рдореЗрдВ ?nocache=1 рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рднреА рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреА рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрди рдкреЗрдЬреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред