{"id":386823,"date":"2026-10-17T03:45:21","date_gmt":"2026-10-17T03:45:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/datpilot-connector\/"},"modified":"2026-10-17T03:44:55","modified_gmt":"2026-10-17T03:44:55","slug":"datpilot-connector","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/datpilot-connector\/","author":23585811,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.6.0","stable_tag":"1.6.0","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"DatPilot Connector","header_author":"DatPilot","header_description":"\u0110i\u1ec3m s\u1ee9c kho\u1ebb web, sao l\u01b0u th\u1ee7 c\u00f4ng, qu\u00e9t m\u00e3 \u0111\u1ed9c, ghi l\u1ed7i PHP nghi\u00eam tr\u1ecdng. K\u1ebft n\u1ed1i DatPilot (tu\u1ef3 ch\u1ecdn) \u0111\u1ec3 \u0111\u01b0\u1ee3c b\u00e1o khi web s\u1eadp. DatPilot ch\u1ec9 \u0111\u1ecdc th\u00f4ng tin v\u00e0 t\u1ea1o b\u1ea3n sao l\u01b0u, kh\u00f4ng c\u00f3 l\u1ec7nh qu\u1ea3n tr\u1ecb t\u1eeb xa.","assets_banners_color":"2b251d","last_updated":"2026-10-17 03:44:55","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/datpilot.com\/bao-tri","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":46,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.6.0":{"tag":"1.6.0","author":"datpilot","date":"2026-10-17 03:44:55","revision":3751376}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3751376,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3751376,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3751376,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3751376,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.6.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[151,34356,732,163531,5603],"plugin_category":[52,54,59],"plugin_contributors":[287181],"plugin_business_model":[],"class_list":["post-386823","plugin","type-plugin","status-publish","hentry","plugin_tags-backup","plugin_tags-health-check","plugin_tags-maintenance","plugin_tags-malware-scan","plugin_tags-monitoring","plugin_category-performance","plugin_category-security-and-spam-protection","plugin_category-utilities-and-tools","plugin_contributors-datpilot","plugin_committers-datpilot"],"banners":{"banner":"https:\/\/ps.w.org\/datpilot-connector\/assets\/banner-772x250.png?rev=3751376","banner_2x":"https:\/\/ps.w.org\/datpilot-connector\/assets\/banner-1544x500.png?rev=3751376","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/datpilot-connector\/assets\/icon-128x128.png?rev=3751376","icon_2x":"https:\/\/ps.w.org\/datpilot-connector\/assets\/icon-256x256.png?rev=3751376","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>DatPilot Connector works on its own, with no account and nothing sent outside your site, and can optionally be connected to <a href=\"https:\/\/datpilot.com\">DatPilot<\/a>, a WordPress maintenance service for Vietnamese site owners. The admin screens are in Vietnamese.<\/p>\n\n<p><strong>Works without connecting (all features, free):<\/strong><\/p>\n\n<ul>\n<li><strong>Health score<\/strong> in Settings \u2192 DatPilot: outdated core\/plugins\/themes, PHP version, debug output, HTTPS, risky settings, admin accounts, backup age. Read only.<\/li>\n<li><strong>Manual backup<\/strong> of the database and wp-content, run in small steps so cheap hosting does not time out. Backups stay on your hosting (in a randomly named, access-denied folder under uploads); the database dump is encrypted when the sodium extension is available. Download or delete them from the same screen.<\/li>\n<li><strong>Malware and spam scan<\/strong> (read only): compares WordPress core and plugins downloaded from WordPress.org against the official checksums, looks for common backdoor patterns in themes, premium plugins and the uploads folder, and finds posts injected with gambling\/casino spam or hidden links.<\/li>\n<li><strong>PHP fatal error log<\/strong>: records fatal errors (white screen, \"critical error\") without enabling WP_DEBUG, in the same protected folder as the backups. Server paths, emails, phone numbers and quoted values are removed from the message, and only the page path (no query string) is kept.<\/li>\n<\/ul>\n\n<p><strong>When connected to DatPilot<\/strong> (you paste a connection key from your DatPilot account), the service can alert you by Telegram when the site is down or throws fatal errors, send a monthly report, run scheduled backups and weekly scans.<\/p>\n\n<p>The connection is limited to monitoring and data. DatPilot can only send a fixed list of signed, read-mostly commands: site information, health check, the read-only scans above, reading the PHP error log, purging the page cache, and creating, listing or deleting backups. This plugin gives DatPilot <strong>no administrative actions<\/strong>: it cannot install, activate, deactivate or update plugins, themes or WordPress core, restore backups, change settings, manage users or run code. Disconnect or deactivate the plugin at any time to stop all access.<\/p>\n\n<p><strong>Ti\u1ebfng Vi\u1ec7t:<\/strong> Plugin ki\u1ec3m tra s\u1ee9c kho\u1ebb web, sao l\u01b0u th\u1ee7 c\u00f4ng, qu\u00e9t m\u00e3 \u0111\u1ed9c v\u00e0 spam SEO, ghi l\u1ed7i PHP nghi\u00eam tr\u1ecdng, d\u00f9ng mi\u1ec5n ph\u00ed kh\u00f4ng c\u1ea7n t\u00e0i kho\u1ea3n. K\u1ebft n\u1ed1i DatPilot (tu\u1ef3 ch\u1ecdn) \u0111\u1ec3 \u0111\u01b0\u1ee3c b\u00e1o qua Telegram khi web s\u1eadp, nh\u1eadn b\u00e1o c\u00e1o th\u00e1ng v\u00e0 d\u00f9ng g\u00f3i b\u1ea3o tr\u00ec.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin can talk to the following services. Nothing is sent before you act as described.<\/p>\n\n<p><strong>DatPilot (datpilot.com)<\/strong> \u2014 only after you paste a connection key in Settings \u2192 DatPilot.<\/p>\n\n<ul>\n<li>On connect, the plugin sends your site ID, home URL, REST URL, WordPress, PHP and plugin versions to <code>https:\/\/app.datpilot.com\/api\/v1\/connector\/hello<\/code>.<\/li>\n<li>Afterwards DatPilot sends signed commands (Ed25519, single-use nonce, 5-minute window) to your site's REST endpoint <code>\/wp-json\/datpilot\/v1\/run<\/code> and receives the results: version lists, health check flags, scan findings (suspicious file paths, IDs and titles of posts that look like spam), PHP fatal errors (type, file, line, page path without query string, message with personal data removed), backup status. Backups themselves stay on your hosting and are never sent to DatPilot. Automated reports contain no customer, order or member data.<\/li>\n<li>Terms of use: https:\/\/datpilot.com\/dieu-khoan<\/li>\n<li>Privacy policy: https:\/\/datpilot.com\/chinh-sach-bao-mat#connector<\/li>\n<\/ul>\n\n<p><strong>WordPress.org<\/strong> \u2014 only when you (or DatPilot, if connected) run a deep scan.<\/p>\n\n<ul>\n<li>Official core checksums from <code>https:\/\/api.wordpress.org\/core\/checksums\/1.0\/<\/code> (through WordPress' <code>get_core_checksums()<\/code>).<\/li>\n<li>Plugin checksums from <code>https:\/\/downloads.wordpress.org\/plugin-checksums\/&lt;slug&gt;\/&lt;version&gt;.json<\/code>. Only the plugin slug and version are sent.<\/li>\n<li>WordPress.org privacy policy: https:\/\/wordpress.org\/about\/privacy\/<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install from Plugins \u2192 Add New, or upload the zip, then activate.<\/li>\n<li>Open Settings \u2192 DatPilot to see the health score, make a backup or run a scan.<\/li>\n<li>Optional: to connect, create a free account at datpilot.com, add your site under \"Web c\u1ee7a t\u00f4i\" and paste the connection key.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20send%20anything%20without%20connecting%3F\"><h3>Does the plugin send anything without connecting?<\/h3><\/dt>\n<dd><p>No. Without a connection key the only outside requests are the WordPress.org checksum lookups when you click a scan button.<\/p><\/dd>\n<dt id=\"does%20the%20scan%20delete%20or%20change%20files%3F\"><h3>Does the scan delete or change files?<\/h3><\/dt>\n<dd><p>No. The scan only reads files and the database and lists what looks suspicious.<\/p><\/dd>\n<dt id=\"where%20are%20backups%20stored%3F\"><h3>Where are backups stored?<\/h3><\/dt>\n<dd><p>In a randomly named folder inside wp-content\/uploads with access denied by .htaccess\/web.config. At most 5 backups are kept. Download one to your computer for safekeeping.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens when I delete the plugin?<\/h3><\/dt>\n<dd><p>The connection key, settings and the backup folder (with the error log) are removed.<\/p><\/dd>\n<dt id=\"can%20datpilot%20change%20my%20site%20through%20this%20plugin%3F\"><h3>Can DatPilot change my site through this plugin?<\/h3><\/dt>\n<dd><p>No. The plugin only answers read commands and creates, downloads or deletes its own backups. It has no command to install, update, activate or deactivate anything, restore a backup or change settings.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.6.0<\/h4>\n\n<ul>\n<li>Remote administrative commands removed: DatPilot can no longer update, install, activate or deactivate plugins, themes or core, restore backups or change hardening settings through this plugin.<\/li>\n<li>No more file in wp-content\/mu-plugins; fatal errors are caught by the plugin itself.<\/li>\n<li>All names now use the <code>datpco<\/code> prefix (existing settings and connection are migrated automatically).<\/li>\n<li>Admin JavaScript moved to an enqueued file; database dump uses $wpdb-&gt;prepare() with identifier placeholders (requires WordPress 6.2).<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>The mu-plugin error catcher is now opt-in (button on the settings page, or enabled by DatPilot after you connect).<\/li>\n<li>Escaping and nonce checks cleaned up for the WordPress.org review; readme with external service disclosure.<\/li>\n<\/ul>\n\n<h4>1.4.2<\/h4>\n\n<ul>\n<li>PHP fatal error log, page sampling for update screenshots.<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Malware, backdoor and SEO-spam scan.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Backups and restores run in small steps; Ed25519 signed commands.<\/li>\n<\/ul>","raw_excerpt":"Site health score, manual backups, malware and SEO-spam scan, PHP fatal error log. Optional connection to the DatPilot maintenance service.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/386823","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=386823"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/datpilot"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=386823"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=386823"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=386823"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=386823"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=386823"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=386823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}