{"id":401715,"date":"2026-11-12T16:49:51","date_gmt":"2026-11-12T16:49:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/nakogda\/"},"modified":"2026-11-12T16:49:29","modified_gmt":"2026-11-12T16:49:29","slug":"nakogda","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/nakogda\/","author":23602341,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.4","requires":"6.3","requires_php":"8.2","requires_plugins":null,"header_name":"\u041d\u0430\u041a\u043e\u0433\u0434\u0430 (NaKogda) \u2014 \u043e\u043d\u043b\u0430\u0439\u043d-\u0437\u0430\u043f\u0438\u0441\u044c \u0438 \u0447\u0430\u0442","header_author":"\u041d\u0430\u041a\u043e\u0433\u0434\u0430","header_description":"\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u043d\u043b\u0430\u0439\u043d-\u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u0447\u0430\u0442\u0430 \u041d\u0430\u041a\u043e\u0433\u0434\u0430 \u0447\u0435\u0440\u0435\u0437 \u0431\u043b\u043e\u043a, \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0439 \u043a\u043e\u0434 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0441\u0430\u0439\u0442\u0430.","last_updated":"2026-11-12 16:49:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/nakogda.ru\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":71,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"nakogda","date":"2026-11-12 16:49:29","revision":3798841}},"upgrade_notice":{"1.0.0":"<p>Initial release. Remove previously installed manual embed code for these widgets before enabling the connection.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3798841,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3798841,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3798841,"resolution":false,"location":"assets","locale":false}},"assets_banners":[],"assets_blueprints":{},"all_blocks":{"nakogda\/booking":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"nakogda\/booking","version":"1.0.0","title":"\u0417\u0430\u043f\u0438\u0441\u044c \u041d\u0430\u041a\u043e\u0433\u0434\u0430","category":"widgets","icon":"calendar-alt","description":"\u041e\u043d\u043b\u0430\u0439\u043d-\u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u0443\u044e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044e \u041d\u0430\u041a\u043e\u0433\u0434\u0430.","textdomain":"nakogda","attributes":{"widgetUid":{"type":"string","default":""},"style":{"type":"object","default":{}}},"supports":{"html":false,"customClassName":false,"customCSS":false},"editorScript":"nakogda-booking-editor","editorStyle":"file:.\/editor.css"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3798841,"resolution":"1","location":"assets","locale":"","width":1440,"height":1375},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3798841,"resolution":"2","location":"assets","locale":"","width":1440,"height":1080},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3798841,"resolution":"3","location":"assets","locale":"","width":1440,"height":1127}},"screenshots":{"1":"Connection settings: organization and widget UIDs, service data information and a separate chat switch.","2":"Two booking blocks in the editor, with individual widget selection, widget CSS and a documentation link in the sidebar.","3":"Online booking and floating chat on a demonstration WordPress page."}},"plugin_section":[],"plugin_tags":[8132,269,2379,268],"plugin_category":[40],"plugin_contributors":[292340],"plugin_business_model":[],"class_list":["post-401715","plugin","type-plugin","status-publish","hentry","plugin_tags-appointments","plugin_tags-booking","plugin_tags-live-chat","plugin_tags-scheduling","plugin_category-calendar-and-events","plugin_contributors-nakogda","plugin_committers-nakogda"],"banners":[],"icons":{"svg":"https:\/\/ps.w.org\/nakogda\/assets\/icon.svg?rev=3798841","icon":"https:\/\/ps.w.org\/nakogda\/assets\/icon.svg?rev=3798841","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/nakogda\/assets\/screenshot-1.png?rev=3798841","caption":"Connection settings: organization and widget UIDs, service data information and a separate chat switch."},{"src":"https:\/\/ps.w.org\/nakogda\/assets\/screenshot-2.png?rev=3798841","caption":"Two booking blocks in the editor, with individual widget selection, widget CSS and a documentation link in the sidebar."},{"src":"https:\/\/ps.w.org\/nakogda\/assets\/screenshot-3.png?rev=3798841","caption":"Online booking and floating chat on a demonstration WordPress page."}],"raw_content":"<!--section=description-->\n<p>Connect the existing <a href=\"https:\/\/nakogda.ru\/\">NaKogda<\/a> online booking and chat service to your WordPress site. Set up your organization in the service dashboard, copy its standard embed code or booking page URL and import it in Settings \u2192 NaKogda. Review the recognized public identifiers (UIDs) and the external service information, then save your settings to connect the organization.<\/p>\n\n<p>Add the booking block (<code>nakogda\/booking<\/code>) or the <code>[nakogda_booking]<\/code> shortcode to a page. To select a particular booking widget, use the block setting or <code>[nakogda_booking widget=\"WIDGET_UID\"]<\/code>. Floating chat is enabled separately and can work without a booking widget. The plugin interface is currently in Russian. A Russian user guide is included as <code>readme-ru.txt<\/code>.<\/p>\n\n<ul>\n<li>Connect one organization per WordPress site and place multiple booking widgets on a page.<\/li>\n<li>Load the booking script only when booking is rendered, and the chat script only when chat is enabled.<\/li>\n<li>Show a local placeholder card in the editor without loading the external service.<\/li>\n<li>Use WordPress blocks, the Settings API and WordPress-provided editor libraries.<\/li>\n<li>Parse standard NaKogda embed code or a booking page URL without executing or saving the input or requesting the URL.<\/li>\n<\/ul>\n\n<p>The plugin is free and licensed under the GPL. A NaKogda account is required. Use of the hosted service is subject to its current <a href=\"https:\/\/nakogda.ru\/#pricing\">service plans<\/a>. A service subscription is not included with the plugin. Service features, data processing and plan limits are provided by NaKogda.<\/p>\n\n<h3>External services<\/h3>\n\n<p>The plugin connects to <a href=\"https:\/\/nakogda.ru\/\">NaKogda<\/a>, an external service that provides online booking and live chat. The hosted booking and chat applications handle availability, booking submissions and conversations.<\/p>\n\n<p>To connect the service, a site administrator saves an organization UID. The settings page displays the data exchange notice before saving. On a fresh installation, activation alone does not connect the service. Importing a link or embed code only fills in the form in WordPress.<\/p>\n\n<ul>\n<li>On public pages that display a booking block or shortcode, the visitor's browser loads <code>https:\/\/time.nakogda.ru\/widget\/v1\/widget.js<\/code>. The widget uses the public organization UID and, if selected, the widget UID to request the booking form and availability from NaKogda.<\/li>\n<li>When the administrator separately enables floating chat, the visitor's browser loads <code>https:\/\/time.nakogda.ru\/chat\/v1\/chat.js<\/code> on public pages. Chat uses the public organization UID to route conversations to the right organization and a real-time connection to receive messages.<\/li>\n<li>These requests go to NaKogda and disclose the visitor's IP address and browser information. The widgets may send the page URL and referral source to associate enquiries with the site and organization. Booking and chat share a client session. The hosted components handle its technical identifiers.<\/li>\n<li>When the visitor makes a booking, the widget sends the selected service, appointment time, customer details and completed form fields to NaKogda. When the visitor uses chat, it sends the messages, contact details and attachments the visitor submits to NaKogda.<\/li>\n<\/ul>\n\n<p>Connection settings in WordPress contain the public organization UID, optional booking widget UID and the separate chat switch. Individual widget choices and optional block CSS are stored in page content. The plugin does not store NaKogda passwords, private keys, client sessions, bookings, conversations or a copy of the customer database. The plugin has no installation telemetry, advertising pixels or hidden referral parameters. Site owners should provide appropriate information about the external service and configure any consent required for their use case. This version has no dedicated integration with consent managers.<\/p>\n\n<ul>\n<li>Service dashboard and registration: https:\/\/cabinet.nakogda.ru\/<\/li>\n<li><a href=\"https:\/\/nakogda.ru\/offer\/\">Terms of service<\/a><\/li>\n<li><a href=\"https:\/\/nakogda.ru\/privacy\/\">Privacy policy<\/a><\/li>\n<li>Current service plans: https:\/\/nakogda.ru\/#pricing<\/li>\n<li>Support: support@nakogda.ru<\/li>\n<\/ul>\n\n<p>The service controls its own platform attribution according to the organization's plan. The plugin does not add public advertising links or change those attribution rules. The hosted booking and chat application is not included in the plugin ZIP.<\/p>\n\n<h3>Source code<\/h3>\n\n<p>The plugin ZIP includes the editable source files. The block editor JavaScript is in <code>blocks\/booking\/index.js<\/code>, with its icon in <code>blocks\/booking\/logo.svg<\/code> and its editor CSS in <code>blocks\/booking\/editor.css<\/code>. The public block styling script is in <code>blocks\/booking\/styles.js<\/code>. The PHP source is in <code>nakogda.php<\/code>, <code>uninstall.php<\/code> and <code>includes\/<\/code>.<\/p>\n\n<p>WordPress runs these PHP and JavaScript files directly. No build or minification step is needed to run or modify the plugin.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP through Plugins \u2192 Add New Plugin \u2192 Upload Plugin, then activate it.<\/li>\n<li>Open Settings \u2192 NaKogda and follow the link to the service dashboard.<\/li>\n<li>Register or sign in, then configure your organization, services, staff, resources and schedule.<\/li>\n<li>Open the <a href=\"https:\/\/cabinet.nakogda.ru\/widget\/\">Widget section<\/a> (\u0412\u0438\u0434\u0436\u0435\u0442) and copy the code from the \u201cPlace the container where needed\u201d (\u041f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0432 \u043d\u0443\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e) section. Paste it into the \u201cCode from dashboard, booking URL or personal chat address\u201d (\u041a\u043e\u0434 \u0438\u0437 \u043a\u0430\u0431\u0438\u043d\u0435\u0442\u0430, \u0441\u0441\u044b\u043b\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438\u043b\u0438 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0447\u0430\u0442\u0430) field in WordPress and click \u201cRecognize code or URL\u201d (\u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u043a\u043e\u0434 \u0438\u043b\u0438 \u0441\u0441\u044b\u043b\u043a\u0443). You can also import a booking page URL as described below, standard chat embed code or a personal chat address.<\/li>\n<li>Review the recognized UIDs. Import only fills in the form; it does not save settings or connect the service, and chat is unchecked in the form after import. You can also enter the public UIDs manually.<\/li>\n<li>Remove any previously installed manual embed code for these widgets. Review the data exchange information and linked terms and privacy policy, optionally enable chat, then save the settings. Saving a valid organization UID is the step that connects the service.<\/li>\n<li>Add the booking block (<code>nakogda\/booking<\/code>) or <code>[nakogda_booking]<\/code> to a page. Publish it and check the public page as a visitor.<\/li>\n<\/ol>\n\n<p>Changing settings requires the <code>manage_options<\/code> capability. With WordPress Multisite, activate and configure the plugin separately on each site. Network activation is not supported.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20use%20it%20without%20a%20nakogda%20account%3F\"><h3>Can I use it without a NaKogda account?<\/h3><\/dt>\n<dd><p>Booking and chat require a NaKogda account and an organization. The plugin connects the existing hosted service to your site.<\/p><\/dd>\n<dt id=\"how%20do%20i%20select%20another%20booking%20widget%3F\"><h3>How do I select another booking widget?<\/h3><\/dt>\n<dd><p>Enter its public UID in the block setting (<code>widgetUid<\/code>) or the shortcode's <code>widget<\/code> attribute. Selection priority is: the individual block or shortcode, then the common widget UID in plugin settings, then the organization's main widget selected by the service. The widget must belong to the connected organization. Format validation does not confirm ownership, existence or availability under the service plan.<\/p><\/dd>\n<dt id=\"can%20i%20use%20chat%20without%20booking%3F\"><h3>Can I use chat without booking?<\/h3><\/dt>\n<dd><p>Yes. Enter the organization UID, enable floating chat and save the settings. A booking block or shortcode is not needed for chat. To stop chat alone, clear its separate checkbox and save.<\/p><\/dd>\n<dt id=\"which%20code%20or%20url%20can%20i%20import%3F\"><h3>Which code or URL can I import?<\/h3><\/dt>\n<dd><p>A booking container on its own or with the standard loader, standard chat embed code, or a personal chat address such as <code>https:\/\/time.nakogda.ru\/chat\/v1\/ORGANIZATION_UID.js<\/code>, on its own or inside a script tag.<\/p>\n\n<p>You can also paste a booking page URL on its own: <code>https:\/\/time.nakogda.ru\/ORGANIZATION_UID<\/code> or <code>https:\/\/time.nakogda.ru\/ORGANIZATION_UID?widget=WIDGET_UID<\/code>. Replace the placeholders with the public UIDs from your service account. A single trailing slash before the optional query is allowed. The path supplies the organization UID; the optional <code>widget<\/code> parameter supplies the widget UID. Without it, the imported widget UID is empty and the service uses the organization's main widget. Named organization addresses cannot be resolved to a UID by this plugin.<\/p>\n\n<p>UIDs contain 1\u201364 ASCII letters, digits, hyphens or underscores. Booking URLs must use HTTPS and the exact host <code>time.nakogda.ru<\/code>, with no port, user information, fragment, encoding, extra path segments or additional query parameters. Only one <code>widget<\/code> parameter is allowed. Booking page URLs are accepted only as standalone text, not as a script source or mixed with HTML. Conflicting UIDs, arbitrary HTML, inline JavaScript, event handlers, other domains and local addresses are rejected. Import does not request the URL, execute or save the input. Format validation does not confirm that the organization or widget exists or that its service plan allows use.<\/p><\/dd>\n<dt id=\"why%20is%20booking%20not%20visible%3F\"><h3>Why is booking not visible?<\/h3><\/dt>\n<dd><p>Check that the organization UID has been saved, that the page has a booking block or shortcode, and that the organization's settings and current service plan allow booking. Successful import does not save settings or confirm that an organization exists. Check whether your site's content security policy, a script optimizer or a browser extension blocks the loaders. Clear your caching plugin's cache after changing settings. A rejected settings submission leaves the previous saved configuration in place.<\/p><\/dd>\n<dt id=\"can%20i%20style%20the%20booking%20form%20with%20css%3F\"><h3>Can I style the booking form with CSS?<\/h3><\/dt>\n<dd><p>On WordPress 7.0 or later, the block's \u201cWidget appearance\u201d (\u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0432\u0438\u0434\u0436\u0435\u0442\u0430) panel provides a \u201cWidget CSS\u201d (CSS \u0432\u0438\u0434\u0436\u0435\u0442\u0430) field for users with <code>edit_css<\/code>. Enter declarations such as <code>color: red;<\/code>, or rules such as <code>.nakogda-widget-style .nkw-submit { border-radius: 4px; }<\/code>. The CSS applies inside that block's booking form; it does not style the editor card or other widgets. Open the page preview to see it. Existing per-block <code>style.css<\/code> values are preserved.<\/p>\n\n<p>The panel links to <a href=\"https:\/\/cabinet.nakogda.ru\/docs\/widget\/#widget-style-categories\">CSS selectors and examples<\/a>. The local styling script loads only for blocks with CSS. On older WordPress versions the booking integration remains available; use the NaKogda appearance settings and the documentation's site stylesheet method.<\/p><\/dd>\n<dt id=\"what%20happens%20without%20javascript%20or%20when%20the%20service%20is%20unavailable%3F\"><h3>What happens without JavaScript or when the service is unavailable?<\/h3><\/dt>\n<dd><p>With JavaScript disabled, the booking output includes a link to the organization's public booking page. That page also depends on NaKogda availability. The rest of your WordPress page works independently of the widgets.<\/p><\/dd>\n<dt id=\"can%20i%20connect%20several%20organizations%3F\"><h3>Can I connect several organizations?<\/h3><\/dt>\n<dd><p>This version connects one organization per site. Individual blocks can select different widgets of that organization. Changing the organization does not automatically carry over the old common widget UID. Also review widget UIDs set in individual blocks and shortcodes.<\/p><\/dd>\n<dt id=\"how%20do%20i%20update%20the%20plugin%3F\"><h3>How do I update the plugin?<\/h3><\/dt>\n<dd><p>Back up your WordPress site and saved connection values. Upload the new official ZIP through WordPress and confirm replacement of the installed version, or use the normal update mechanism when the plugin is available in the directory. After updating, clear relevant page caches and check the public booking page and chat. Version 1.0.0 is the first release.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20disable%20or%20delete%20it%3F\"><h3>What happens when I disable or delete it?<\/h3><\/dt>\n<dd><p>To stop both booking and chat, clear the organization UID and save, or deactivate the plugin. To stop chat alone, clear its separate checkbox and save. Deactivation preserves settings; reactivation resumes the saved configuration. Deletion removes only the plugin's own settings in WordPress, including on Multisite sites. Your NaKogda organization, bookings, conversations, account and subscription remain. Manage or cancel your service subscription separately in NaKogda.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: safe embed code and booking URL import, shared settings for one organization, dynamic booking block, shortcode and independent floating chat.<\/li>\n<\/ul>","raw_excerpt":"Connect NaKogda online booking and chat with a booking block, shortcode and floating chat. A NaKogda service account is required.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/401715","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=401715"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/nakogda"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=401715"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=401715"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=401715"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=401715"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=401715"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=401715"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}