Forum Replies Created

Viewing 15 replies - 1 through 15 (of 35 total)
  • Hi, your guess is very likely right. That class file (src/Service/Admin/ExportImport/ExportRestController.php) is part of the plugin, in 14.16.16, 14.16.17 and the current 14.16.18, which was released on 23 October. During an update, WordPress removes the old plugin files and copies the new ones, so for a short moment some files are missing. Any request that runs in that moment can throw “class not found”, and it stops once the update has finished.

    So if the errors stopped after the update, there is nothing to fix. You can check by comparing the times of the errors with the time of the update.

    If they come back later, reinstall the plugin: download 14.16.18 from its plugin page, go to Plugins > Add New > Upload Plugin, upload the zip and choose “Replace current with uploaded”. Then clear OPcache or your host’s cache, so PHP does not keep an old copy of the files.

    Did the errors only appear around the time of the update?

    Thanks @lastsplash for checking the logs and confirming it is Cloudflare.

    @jason65, to find the exact rule: in the Cloudflare dashboard open Security > Events (on some dashboards it is the Events tab under Security > Analytics) and filter by that Ray ID. It shows which rule or feature blocked the request. Then allow the Jetpack IP ranges for xmlrpc.php in that rule, as in the Jetpack guide, and let the Jetpack team know so they can test the connection again.

    Hi, yes. The plugin page and the update data on WordPress.org both say 2.29.29 is tested up to WordPress 7.1.3.

    The “Not tested” text on your Updates screen comes from update information your site saved earlier. WordPress shows “Not tested” when that saved data does not have a tested version of 7.1.3 or higher. Go to Dashboard > Updates and click “Check again”, and it should change to “Yes (according to its author)”.

    About security: the changelog for 2.29.19 says “Vulnerability: Reflected Cross-Site Scripting via the ‘seraph_accel_prep’ parameter.” That fix came after your 2.29.8, so 2.29.29 includes it. If that is the issue your scanner reports, updating will fix it.

    Take a backup first, then update. If the scanner still flags something after the update, please share the exact name of the issue it shows.

    Hi, you are right, wp-includes/php-ai-client/ is part of WordPress 7.1.3. The official checksum list for 7.1.3 has 146 files in that folder. So please do not delete them, and do not use “Delete critical & warning unknowns” on them, because that would break your site.

    Security Ninja’s core scanner compares your files with that same official list, so the status it shows tells you what is going on:

    • Modified: the files on your server are not the same as the official ones, for example after an update that did not finish. Fix: Dashboard > Updates > “Re-install version 7.1.3”, then run the scan again.
    • Unknown: the files were not in the list it compared against. Check that the version at the top of the scan results says 7.1.3, and run a fresh scan so you are not looking at older results.

    If you use WP-CLI, wp core verify-checksums gives a second opinion straight from WordPress.org.

    Which status do the php-ai-client files show: Modified, Missing or Unknown?

    Thanks @futtta, happy to help, and thanks for adding the details about line 118 and the inline CSS settings.

    @calliko, I would start with Frank’s first step: in Settings > Autoptimize, uncheck “Inline all CSS?”, save, clear the cache and check the page again. If the notice is still there, check “Keep HTML comments?” next. Let us know which one fixes it for you.

    Hi, this is already fixed. Relevanssi 4.28.5 was released on 23 October, and its changelog says: “Security: Fixes an object injection vulnerability that happened in adding stopwords with Polylang.”

    So just update to 4.28.5 from Dashboard > Updates or the Plugins screen. After that, Patchstack should no longer report it once it rescans your site.

    Hi, Redirection fires these actions when a redirect changes, so the cache plugin can hook into them:

    • redirection_redirect_updated ($id, $redirect): when a redirect is created or updated
    • redirection_redirect_deleted ($redirect): when a redirect is deleted
    • redirection_redirect_enabled and redirection_redirect_disabled ($id): when a redirect is switched on or off

    The source URL to purge is $redirect->get_url(). For the two hooks that only pass the ID, load the redirect first with Red_Item::get_by_id( $id ). For example:

    add_action( 'redirection_redirect_updated', function ( $id, $redirect ) {
    	if ( $redirect && ! $redirect->is_regex() ) {
    		// Purge $redirect->get_url() here with the cache plugin's purge function.
    	}
    }, 10, 2 );

    Two things to tell the cache plugin team:

    • Regex redirects have no single URL, so check $redirect->is_regex() and purge more widely for those.
    • These hooks only fire when redirects are saved through Redirection itself (the admin screen, its REST API or Red_Item::create()). Rows written straight into the database table do not fire them.

    The full list is in the Redirection docs: https://redirection.me/developer/wordpress-hooks/

    How does your sync create the redirects?

    Hi, when the plugin is activated it saves a one time flag (rcfwc_do_activation_redirect), and on the next admin page it deletes the flag and sends you to its settings once. A loop means that flag keeps coming back. The usual reason is a persistent object cache (Redis or Memcached) still holding the old value, or the profiler plugin activating it again on every load.

    To get your admin back and fix it:

    1. With FTP or your host’s file manager, rename wp-content/plugins/recaptcha-woo to recaptcha-woo-off. Your admin will work again.
    2. Make sure the profiler plugin is deactivated.
    3. Flush the object cache: from your cache plugin or hosting panel, or with WP-CLI wp cache flush. With WP-CLI you can also run wp option delete rcfwc_do_activation_redirect.
    4. Rename the folder back to recaptcha-woo and activate the plugin. It should redirect to its settings only once.

    That is also why reCAPTCHA is not showing on checkout and login. The plugin only turns it on there after you complete the key test on its settings page, and the loop stopped you from getting there. Once you can open the settings, complete the test and it will show again.

    Do you have Redis or Memcached on this site, and which profiler plugin did you use?

    Hi, it already works on the front end. If “Auto Apply Sort” is checked in Settings > Post Types Order, the Query Loop block shows your custom order to visitors.

    Only the preview inside the editor still shows the posts by date. The editor loads that preview with a date order request, and the plugin leaves requests with their own order alone. So the editor preview and the live page can look different.

    With Auto Apply Sort on, your custom order always comes first, and the “Order by” setting of the Query Loop block only decides the order of posts that have the same position.

    Can you check the published page while logged out, with any page cache cleared? It should already be in your custom order there.

    Hi Astrid, this comes from the Pods 3.3.9.2 security update. With “Customized”, Pods now only accepts your own function names that start with custom_pods_callback_. Any other name, like my_date, is ignored, which is why adding it again did not help.

    To fix it:

    1. In your snippet, rename the function from my_date to custom_pods_callback_my_date. The code inside stays the same.
    2. In Pods Admin > Settings, keep “Display callbacks” on Customized and put custom_pods_callback_my_date in “Display callbacks allowed”.
    3. Change your magic tag to {@post_date,custom_pods_callback_my_date}.

    The description under “Display callbacks allowed” in the settings explains the same rule.

    Hi, the account and billing for the premium version are kept by WP-PDF, not by WordPress.org, so volunteers here cannot look them up. The quickest way is to contact them directly: https://wp-pdf.com/contact/

    To help them find the account, send them:

    • the site URL
    • the license key: it is saved on the site, usually shown in the PDF Embedder settings, or set in wp-config.php as PDFEMB_LICENSE_KEY
    • the date and amount of the last yearly charge from your card or bank statement

    Please do not post the license key or any account email here, because this forum is public.

    Hi, good news: version 3.0.5 was released on 22 October, a couple of hours after your post, and it is now marked as tested up to WordPress 7.1.3.

    Security plugins usually flag a plugin as abandoned based on its last update date and its “Tested up to” version, so the warning should go away once your security plugin refreshes its data. If it still shows after a day or two, run a new scan.

    Hi Bill, if you used Bulk actions > Move to Trash, the pages are not gone yet:

    1. Go to Pages and click the “Trash” link at the top of the list.
    2. Select the Mail Mint pages and choose Bulk actions > Restore.
    3. Restored pages come back as Drafts, so open each one (or use Quick Edit) and publish it again.

    They keep the same page IDs, and Mail Mint remembers those IDs in its settings, so everything works again without other changes. WordPress empties the Trash after 30 days by default, so do it soon.

    If they were deleted permanently, deactivating and activating the plugin will not create them again, because that only happens on a new install. In that case, create the pages yourself with these shortcodes:

    • Mint Mail Opt-in Confirmation: [optin_confirmation]
    • Mint Mail Preference: [preference_page]
    • Mint Mail Unsubscribe Confirmation: [unsubscribe_confirmation]
    • Mint Mail Unsubscribe Survey: [unsubscribe_survey]

    Then select the new pages again in the Mail Mint settings.

    For the funnel videos, the Mail Mint team can point you to the right one.

    Hi, I looked into this, and the 10 seconds comes from WordPress itself, not from LiteSpeed ignoring your setting.

    LiteSpeed sets the Heartbeat interval through the heartbeat_settings filter, which is only the starting value. After the page loads, WordPress core switches Heartbeat to 10 seconds by itself on these screens, to keep post locks up to date:

    • the block editor
    • the classic editor, when post locks are on
    • the Posts and Pages list screens

    That is the 10 seconds you see there. On the other admin screens the LiteSpeed value should stay.

    Breeze does it differently: in the block editor it adds an extra script that sets its own interval again after WordPress switches it to 10 seconds. LiteSpeed does not do that, so this is a good feature request for the LiteSpeed team.

    A TTL of 0 in LiteSpeed Cache > Toolbox > Heartbeat removes Heartbeat completely on that area, but it also removes autosave and the login expired check, so I would not do that for the editor.

    On which screens do you see the 10 seconds?

    Hi, the plugin cleans up after itself if you remove it in the right order. Take a full backup first, then:

    1. If you used Image Optimization: go to LiteSpeed Cache > Image Optimization and click “Destroy All Optimization Data”. Do this first, because the uninstall does not remove the image optimization table. It reverts the optimized images and deletes the optimization files the plugin made.
    2. Deactivate the plugin on the Plugins screen. This sets WP_CACHE back to false in wp-config.php and removes its object-cache.php drop-in and its .htaccess rules.
    3. Click Delete. The uninstall removes all litespeed.* options, drops its own tables (avatar, crawler, crawler_blacklist, url and url_file) and deletes the wp-content/litespeed folder. On multisite it does this for every site.

    After that, nothing from LiteSpeed Cache should be left in the database, except the litespeed_img_optming table if you skipped step 1.

    If you also used QUIC.cloud, check your QUIC.cloud account too, since that service is outside WordPress.

Viewing 15 replies - 1 through 15 (of 35 total)