Contents

Troubleshooting — Plugixa Testimonial

Common issues and how to fix them. If your problem isn’t here, collect the debug info at the bottom and contact support.

Plugin not appearing in admin

Symptom: You installed and activated the plugin but no Plugixa Testimonial menu appears.

Causes & fixes:

  • User role — only users with manage_options or one of the five plugin capabilities (plugixa_testimonial_manage, _edit, _delete, _approve, _settings) see the admin menu. Grant the capability or use an admin account.
  • Another plugin is suppressing it — switch to a default theme and deactivate all other plugins to isolate.
  • Autoloader failed — check the error log for Class "PlugixaTestimonial\Plugin" not found. Delete vendor/ and re-download the plugin ZIP to re-run Composer.

Shortcode prints as raw text

Symptom: The page shows [plugixa_testimonials] literally instead of rendered testimonials.

Fixes:

  • Confirm the plugin is active: Plugins → Installed Plugins.
  • Check that quotes are straight (") not curly (""). The WP visual editor sometimes converts them — paste from a plain-text editor.
  • If you’re using a page builder, use the builder’s Shortcode widget, not a raw HTML block.
  • Verify the shortcode name — it’s [plugixa_testimonials] (plural), not [plugixa_testimonial].

No testimonials displayed

Symptom: Empty space where testimonials should be.

Run through this checklist:

  1. Approved testimonials existPlugixa Testimonial → Testimonials with status filter approved.
  2. Correct category IDs — typos are the #1 cause. Category filter uses IDs, not slugs.
  3. Featured filterfeatured="1" requires testimonials with the featured flag on.
  4. Min ratingmin_rating="4" excludes testimonials below 4 stars.
  5. Language filter — if Multilingual is active, testimonials in other languages are hidden. Try language="en" explicitly.
  6. Limit is 0 or negativelimit="0" returns nothing; limit="-1" returns all.

Styles not loading

Symptom: Testimonials render but look unstyled — no borders, wrong colors, broken layout.

Causes & fixes:

  • CSS not enqueued — the plugin only loads CSS on pages with a shortcode. If you use do_shortcode() in a template file, enable Settings → Display → Load Assets Globally.
  • CSS cache — clear browser cache. Purge any caching plugin (WP Rocket, W3 Total Cache, LiteSpeed, Cloudflare).
  • Theme CSS override — the theme’s CSS may be more specific. Use browser DevTools to find the overriding rule, add a fix in Settings → General → Custom CSS.
  • TailwindCSS not built — rare in production. Confirm assets/frontend/build/css/frontend.css exists and is enqueued.

Slider not working

Symptom: Slider layout shows testimonials stacked vertically or arrows/dots are missing.

Fixes:

  • Swiper not loading — the slider depends on Swiper 11.x. Check the browser console for Swiper errors. View the page source and confirm swiper-bundle.min.js is enqueued.
  • Another plugin includes a different Swiper version — check the console for version conflicts.
  • JavaScript error blocking execution — any earlier JS error can prevent Swiper from initializing.
  • View layout is not slider — check the view config.
  • Only one testimonial — Swiper may not initialize with a single slide. Add more testimonials or set loop=true in the view.
  • Multi-row + loop — Swiper can’t loop multi-row grids. The view form disables loop when rows > 1.

Submission form errors

Symptom: The frontend submission form shows errors, fails to submit, or reCAPTCHA breaks.

“reCAPTCHA verification failed”

  • Verify Site Key and Secret Key in Settings → Submission.
  • Keys must match the selected version (v2 keys don’t work with v3).
  • Check your domain is registered in the Google reCAPTCHA admin console.
  • For v3, the default score threshold is 0.5. If legitimate users are blocked, lower to 0.3.

reCAPTCHA widget not appearing (v2)

  • Console errors from the reCAPTCHA script block the render — fix those first.
  • Confirm the site key is for reCAPTCHA v2 (checkbox), not v2 invisible or v3.

Form does not submit

  • Browser console for JS errors.
  • Form enabled in Settings → Submission → Enable Submission Form?
  • Test with other plugins deactivated.

Photo upload fails

  • File size ≤ max_photo_size MB (default 2 MB).
  • File type in allowed_photo_types list (default jpg,jpeg,png,webp,gif).
  • PHP upload_max_filesize and post_max_size are high enough.

Admin panel blank or broken

Symptom: The Plugixa Testimonial admin page is blank, shows a white screen, or has broken UI.

  • JavaScript errors — F12 → Console. The SPA is React 19 + MUI 7; a single error can blank the panel.
  • Plugin or theme conflict — another plugin loading conflicting React / MUI versions. Deactivate plugins one at a time.
  • PHP errors — enable WP_DEBUG and WP_DEBUG_LOG, check wp-content/debug.log.
  • Insufficient memory — raise WP_MEMORY_LIMIT to 256M in wp-config.php.
  • HMR port blocked (development only) — if includes/admin/class-hmr.php exists, port 5177 must be reachable. Delete class-hmr.php for production builds.

Photos not displaying

Symptom: Cards show a broken image icon or photos are missing.

  • Attachment deleted — testimonials store photos as WP Media Library attachment IDs. If the media file was deleted, re-upload.
  • File permissionswp-content/uploads typically 755 for directories, 644 for files.
  • Site migration — URLs may be broken. Run a search-and-replace tool (WP-CLI wp search-replace) on the DB.
  • Initials fallback not showing — CSS conflict with .pxt-custom-fallback. Inspect the element to see if the container is present but hidden.

Schema not outputting

Symptom: JSON-LD structured data isn’t appearing in the page source.

  • Schema disabled — check Settings → Schema → Enable Schema.
  • Per-shortcode disabled — the shortcode’s schema attribute (or saved config’s schema field) must be 1. Both global and per-shortcode must be on.
  • No approved testimonials on the page — schema only renders when testimonials are rendered.
  • View the page source (Ctrl+U or Cmd+U) and search for application/ld+json. Also try Google’s Rich Results Test.
  • Cache — purge page cache if you enabled schema after the page was cached.

Multilingual issues

I see the same testimonial in every language

  • Check the testimonial has a non-empty language_code. Empty values show in every language.
  • Deactivate/reactivate the plugin to re-run the activator’s backfill.

Translation not showing up

  • Each translation has its own status — all translations must be approved.
  • The language_code must match the URL language exactly (fr not fr_FR).
  • Categories must also be translated — a translated testimonial with only EN categories may be filtered out by a translated category filter.

Multilingual filter doesn’t appear

  • WPML or Polylang must be active.
  • The plugin is set to auto in Settings → Multilingual (not off).
  • If multilingual plugin was installed after Plugixa Testimonial, deactivate and reactivate Plugixa Testimonial to refresh.

Testimonial requests issues

Emails not arriving

  • Install WP Mail Logging plugin to verify wp_mail() is firing.
  • Check spam folders.
  • Configure SPF / DKIM records for the sending domain.
  • Install an SMTP plugin (WP Mail SMTP, Fluent SMTP) for reliable delivery.

Token “Invalid”

  • Already submitted (token consumed).
  • Expired (past expires_at).
  • Copied incorrectly — tokens are case-sensitive.

AI generator returns “API error” PRO

  • 401 — API key is wrong or revoked. Regenerate in the provider dashboard.
  • 429 — rate-limited. Wait, or upgrade your provider plan.
  • 400 — prompt is too long. Lower the batch size or provide less context.
  • 5xx — the provider is down. Retry in a few minutes.

See AI Generator → Troubleshooting.

Google Reviews issues PRO

  • “API key invalid” — the Places API isn’t enabled in Google Cloud Console; or the referrer / IP restriction is blocking.
  • “No reviews found” — the place has fewer than 5 reviews; or wrong place selected.
  • Only 5 reviews imported — Google’s API limit, not a plugin limit.

See Google Reviews → Troubleshooting.

Pro features not unlocking after license activation PRO

Symptom: You’ve activated your license but Pro features still show upgrade cards.

  • Disk state — verify wp-content/plugins/plugixatestimonial/pro/ contains files. Freemius downloads the Pro ZIP on license activation — if the download failed, the directory is empty.
  • Manually trigger the updatePlugixa Testimonial → Account → Sync license.
  • Permissions — the pro/ directory must be writable by the web-server user.
  • Cache — object cache plugins (Redis, Memcached) can cache the license state. Flush the cache.
  • Opcache — if PHP OPcache is aggressive, reset it from the admin (e.g., Opcache Manager plugin).

Admin login issue

If you can’t access wp-admin due to a plugin fatal error:

  1. FTP/SSH into the site.
  2. Rename wp-content/plugins/plugixatestimonial to plugixatestimonial.disabled.
  3. Log in — the plugin is now deactivated.
  4. Rename back, re-activate, and check the error log.

WP login screen — for admin recovery flows

HMR / dev server not loading assets

Symptom: Admin panel is blank or loading-spinner-forever (development setup only).

  • Confirm the Vite dev server is running: cd assets/backend/app && npm run dev.
  • Confirm port 5177 is reachable.
  • To use production assets, delete includes/admin/class-hmr.php. The presence of that file toggles HMR mode.

“Permission denied” on REST API

Symptom: REST calls return 403.

  • The endpoint requires edit_posts, manage_options, or a plugin capability. Log in as admin.
  • Nonce — custom front-end callers must include the wp_rest nonce in the X-WP-Nonce header.
  • Pro endpoints on a free install return 403 with a message pointing to the upgrade URL — that’s expected.
  • Free views quotaPOST /views returns 403 views_limit_reached when free users hit the 2-view limit.

WooCommerce tab not showing

  • WooCommerce active? Plugins screen.
  • Tab enabled in Settings → WooCommerce?
  • Shortcode assigned? Product edit → Plugixa Testimonial meta box.
  • Theme override — some themes replace WC tabs entirely. Test with Storefront to isolate.

Debug mode

Add to wp-config.php:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Errors write to wp-content/debug.log. Reproduce your issue, attach the relevant lines to your support request.

What to include in a support request

To get help fast, provide:

  1. Plugin version and license tier (Free / Pro).
  2. WordPress version, PHP version, MySQL version — from Tools → Site Health.
  3. Active theme and list of active plugins.
  4. The exact shortcode or steps to reproduce.
  5. Browser console output if the problem is frontend.
  6. Relevant debug.log excerpt if the problem is backend.
  7. Screenshots or screen recording where helpful.

Quick Links