Q: Does OFeedback work without jQuery?
A: The frontend widget and admin both require jQuery. WordPress includes jQuery by default; OFeedback enqueues it as a dependency.
Q: Can I style the widget to match my brand?
A: Yes. Set a hex color in Settings → Widget Appearance → Button Color. For full CSS control, target .ofb-widget-trigger and .ofb-widget-panel.
Q: Will the widget slow down my site?
A: The ofb-frontend-v2.js file is under 12 KB uncompressed. html2canvas (the screenshot library, ~300 KB) is only loaded on demand when a user clicks "Attach Screenshot" — it is not part of the initial page load.
Q: Can I use the form on multiple pages?
A: Yes. Add [ofeedback] to as many pages as you like. Each renders an independent form.
Q: What happens when a submission is archived?
A: Status changes to "archived". The screenshot file (if any) is queued for deletion 30 days later. The submission data itself remains in the database until manually deleted.
Q: Can I export all data before uninstalling?
A: Yes. Use the CSV Export button in the Inbox (leave type and status filters blank for all data), then delete the plugin.
Q: Is there a limit on submissions?
A: No built-in limit. Rate limiting prevents the same IP from submitting more than once per 5 minutes.
Q: Does it work with caching plugins?
A: Yes. AJAX endpoints bypass page caching. The wp_create_nonce call is inside wp_enqueue_scripts which runs per-request (not cached).
Q: Can I integrate with Zapier / Make?
A: Use the ofeedback_submission_created action hook to POST to a webhook URL:
phpadd_action( 'ofeedback_submission_created', function( $id, $data ) {
wp_remote_post( 'https://hooks.zapier.com/...', [
'body' => wp_json_encode( array_merge(['id' => $id], $data) ),
'headers' => ['Content-Type' => 'application/json'],
]);
}, 10, 2 );
