Git Product home page Git Product logo

10up-experience's People

Contributors

barryceelen avatar brentvr avatar burhandodhy avatar christianc1 avatar claytoncollie avatar darylldoyle avatar dependabot[bot] avatar dkotter avatar eflorea avatar felipeelia avatar helen avatar imgbotapp avatar jamesmorrison avatar jeffpaul avatar johnwatkins0 avatar morganestes avatar pcrumm avatar petenelson avatar ritesh-patel avatar s3rgiosan avatar sksaju avatar szepeviktor avatar thrijith avatar tlovett1 avatar tylercherpak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

10up-experience's Issues

readme updates

It's not obvious the level of support provided for this repo, so let's add some clarification.

  • add support level section and badge
  • add release version badge
  • add license file and badge
  • move changelog to its own file

Address the Downsides to Disabling the REST API by Default

I think the feature to disable the REST API for non-authenticated users by default should be revisited. I've seen this create problems on multiple sites where this option was overlooked and it broke critical functionality that wasn't discovered until much later.

I see the following problems with this feature:

  • There is no warning that the REST API has been disabled when activating the plugin.
  • Engineers may not aware the REST API has been disabled until a problem is discovered.
  • You don't always know if third-party plugins use the REST API or if a plugin update will add the use of the API down the road. If you install a plugin six months after you've installed the 10up Experience plugin, you likely won't remember to go back and enable the endpoints. I realize testing could catch these issues, but it's still easy to miss.

I think I understand the purpose behind this feature, but the downsides should be addressed if this continues to be the default functionality.

Some suggestions:

  • Explain this feature clearly in this repo's README
  • Add a prominent warning when installing the plugin.
  • Only disable the REST endpoints that are included with WordPress (if this is possible).

I don't know all the details behind this decision, and there may be better ways to avoid these issues that I'm not aware of, so let me know if there's something I'm missing. I'm also happy to contribute the code changes if a decision is made.

Thanks!

Support for Composer installer paths

Is your enhancement related to a problem? Please describe.

When installing from Packagist, Composer will place this plugin in the vendor folder if the dependency composer/installers is not present in the user/developer's local composer.json, which is required to enable custom path support such as loading this to a plugins directory with installer-paths or for the expected default of wp-content/plugins. This requirement should be present here in the repo's composer.json per Composer's documentation

Describe the solution you'd like

Add "composer/installers": "~1.0", to the requires section of composer.json.

Allow plugin to update from GitHub / non-.org repo

It's fine for this plugin to be publicly available but it shouldn't be distributed through the .org repo.

  • Have plugin check for updates from GitHub
  • Ensure updates actually work
  • Document how to release an update (version bump, use GitHub's releases functionality, notes = changelog)

Provide more information in the Password Protected Posts warning

Is your enhancement related to a problem? Please describe.

<p class="description"><?php esc_html_e( 'Enables password protected content. WordPress default password protected post functionality is insecure and does not work with page caching.', 'tenup' ); ?></p>

Screenshot 2023-10-12 at 15 13 27

It would be nice if this warning changed to suit the context of the site where the plugin is deployed:

  • Is there a known-incompatible page-caching layer or host in use? If so, say so
  • Is there a known-safe host/cache in use? If so, say so

It would also be nice to link to details of the known insecurity.

Designs

No response

Describe alternatives you've considered

I'm also:

  • asking for more advice in Slack
  • searching the docs of the host for the site where I'm currently considering enabling this setting

But I figure it would be nice to capture the information and advice in the admin where the setting is, or at least in this repo.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Highlight prefered method to install the plugin is with Composer

Is your enhancement related to a problem? Please describe.
On my client sites, I noticed that this plugin was still being sourced via git and on further inspection, noticed that this package was published at Packagist. This was confusing, but I assumed these sites were using this plugin before it was published there.

Describe the solution you'd like
Update the readme installation section to highlight a prefered way of using this plugin.

Password reset triggers fatal error

Describe the bug

It looks like resetting the password can trigger a fatal error sometimes. Pasting the output of the error log:

#4 in /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/vendor/bjeavons/zxcvbn-php/src/Matchers/SequenceMatch.php on line 40
#3 /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/includes/classes/Authentication/Passwords.php(266): TenUpExperience\Authentication\Passwords->validate_strong_password(Object(WP_Error), Object(stdClass))
#2 /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/includes/classes/Authentication/Passwords.php(321): ZxcvbnPhp\Zxcvbn->passwordStrength('ptjFN0BLCIxvDaI...')
#1 /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/vendor/bjeavons/zxcvbn-php/src/Zxcvbn.php(73): ZxcvbnPhp\Matcher->getMatches('ptjFN0BLCIxvDaI...', Array)
#0 /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/vendor/bjeavons/zxcvbn-php/src/Matcher.php(39): ZxcvbnPhp\Matchers\SequenceMatch::match('ptjFN0BLCIxvDaI...', Array)
Stack trace:
[02-Nov-2020 19:29:55 UTC] PHP Fatal error:  Uncaught Error: Call to undefined function ZxcvbnPhp\Matchers\mb_ord() in /chroot/home/client/client.com/html/wp-content/plugins/10up-experience/vendor/bjeavons/zxcvbn-php/src/Matchers/SequenceMatch.php:40

Steps to Reproduce

  1. Go to user page
  2. Reset password (I tried with an administrator and a subscriber)
  3. It works for subscriber
  4. It triggered a fatal error with the administrator account

Expected behavior

Password reset should not trigger the error

Screenshots

Environment information

  • Browser and version:
    Chrome
  • WordPress version:
    5.5.2
  • Plugins and version:
+------------------------------------------+----------+------------------------------+-------------------+
| name                                     | status   | update                       | version           |
+------------------------------------------+----------+------------------------------+-------------------+
| 10up-experience                          | active   | none                         | 1.7.3             |
| 10up-photo-essays                        | active   | none                         | 1.0.0             |
| admin-menu-editor                        | active   | none                         | 1.9.7             |
| advanced-ads                             | active   | available                    | 1.20.2            |
| acf-code-field                           | active   | none                         | 1.8               |
| acf-reusable-field-group-master          | inactive | none                         | 1.0.2             |
| advanced-custom-fields-table-field       | active   | none                         | 1.3.10            |
| acf-group-category                       | active   | none                         | 1.0.0             |
| advanced-custom-fields-pro               | active   | available                    | 5.9.1             |
| am2-front-end-editing                    | active   | none                         | 1.0.0             |
| am2-newsletter                           | active   | none                         | 1.0               |
| amp                                      | inactive | none                         | 2.0.5             |
| character-count-for-post-content-excerpt | active   | none                         | 0.1               |
| contact-form-7                           | active   | available                    | 5.2.2             |
| cookiebot                                | active   | available                    | 3.8.0             |
| login-customizer                         | active   | none                         | 2.0.1             |
| debug-bar                                | active   | available                    | 1.0.1             |
| debug-bar-elasticpress                   | active   | none                         | 1.4               |
| elasticpress                             | active   | available                    | 3.4.2             |
| ewww-image-optimizer                     | inactive | available                    | 5.7.1             |
| google-authenticator                     | inactive | none                         | 0.52              |
| image-watermark                          | active   | none                         | 1.6.6             |
| fb-instant-articles                      | active   | none                         | 4.2.1             |
| login-with-ajax                          | active   | none                         | 3.1.10            |
| mailpoet                                 | inactive | available                    | 3.52.0            |
| members                                  | active   | none                         | 3.1.3             |
| mobiloud-truthdig-extension              | active   | none                         | 1.0               |
| mobiloud-mobile-app-plugin               | active   | version higher than expected | 9.9.9.9           |
| wp-newrelic                              | active   | none                         | 1.3.1             |
| pardot                                   | active   | none                         | 1.5.0             |
| post-type-switcher                       | active   | none                         | 3.2.0             |
| publishpress                             | inactive | available                    | 1.20.7            |
| publish-to-apple-news                    | active   | none                         | 2.1.0             |
| regenerate-thumbnails                    | active   | available                    | 3.1.3             |
| restricted-site-access                   | inactive | none                         | 7.2.0             |
| rewrite-rules-inspector                  | active   | none                         | 1.2.1             |
| simple-301-redirects                     | active   | none                         | 1.07              |
| wp-smushit                               | active   | none                         | 3.7.1             |
| stream                                   | active   | none                         | 3.6.0             |
| term-management-tools                    | active   | none                         | 1.1.4             |
| timber-library                           | active   | none                         | 1.18.2            |
| truthdig-authors-search                  | active   | none                         | 0.1.0             |
| user-switching                           | active   | none                         | 1.5.6             |
| woocommerce                              | inactive | available                    | 4.6.0             |
| wp-better-emails                         | active   | none                         | 0.4               |
| wp-missed-schedule-master                | active   | none                         | 2014.1231.2017.12 |
| wp-user-avatar                           | active   | none                         | 2.2.7             |
| wordpress-seo                            | active   | available                    | 15.1              |
| wpseo-news                               | active   | none                         | 12.6              |
| 10up-sso-client                          | must-use | none                         | 1.0.0             |
| acf_fields_auto_generated                | must-use | none                         |                   |
| am2_feedback                             | must-use | none                         |                   |
| am2_google_plus_login                    | must-use | none                         |                   |
| am2_nominate_truthdigger                 | must-use | none                         |                   |
| am2_promos                               | must-use | none                         |                   |
| am2_social_logins                        | must-use | none                         |                   |
| am2_timing                               | must-use | none                         |                   |
| amp-and-new-relic                        | must-use | none                         | 0.1.0             |
| api                                      | must-use | none                         |                   |
| batcache                                 | must-use | none                         | 1.2               |
| caching                                  | must-use | none                         |                   |
| custom_post_types                        | must-use | none                         |                   |
| custom_taxonomies                        | must-use | none                         |                   |
| debug                                    | must-use | none                         |                   |
| helpers                                  | must-use | none                         |                   |
| models                                   | must-use | none                         |                   |
| pre_get_posts                            | must-use | none                         |                   |
| rewrite_rules                            | must-use | none                         |                   |
| managed-services-utils-loader            | must-use | none                         |                   |
| vulnerability-scanner-loader             | must-use | none                         | 0.0.1             |
+------------------------------------------+----------+------------------------------+-------------------+
  • Theme and version:
    Custom theme from the client
  • Site Health Info:

Additional context

Test against WordPress 5.9

Is your enhancement related to a problem? Please describe.

Describe the solution you'd like

  • test WP New Relic on WordPress 5.9
  • open issues for any incompatibilities noted in testing
  • resolve issues identified in testing
  • bump "tested up to" version
  • if code changes needed due to incompatibilities, ship a plugin release, otherwise use "Plugin asset/readme update" action to update "tested up to" version on .org repo

Designs
n/a

Describe alternatives you've considered
None

Additional context

Rewrite Rules cant be flushed when 10up Experience plugin is enabled

Describe the bug
If you update an existing rewrite rule or register a new post type the rewrite rules are not updating when you flush the rewrite rules. It's due to the option failsafe code. In order to flush the rules, you have to disable the plugin first.

Steps to Reproduce

  1. Register a new public post type
  2. Flush the rewrite rules
  3. Create a new post and attempt to view it on the front-end
  4. The content 404's because there are no rewrite rules for it

Expected behavior
Flushing the rewrite rules should fully regenerate the rules instead of pulling them from the cache.

Deprecated error message - plugin v.1.3

Message:
"strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior"

Line:
"wp-content/plugins/10up-experience/vendor/plugin-update-checker/Puc/v4p4/Plugin/UpdateChecker.php:641"

PSR-4

Is your enhancement related to a problem? Please describe.
It's hard to adhere to the Single Responsibility Principle without an auto-loader.

Describe the solution you'd like
The most popular auto-loader in PHP today is the PSR-4 standard provided by Composer. The code will need a little bit of refactoring to accomplish this, but the good side is that the codebase is small and the lift is not huge.

PS: I'm sorry if I'm meddling my nose in an undesirable way in the code. I thought feedback could be wanted, given the open-source nature of the project.

notice for WP_DEBUG mode

Describe the solution you'd like
Show a warning message when WP_DEBUG is activated on the production environment.

Designs
Standard wp notice

Additional context
We could use support monitor's flag for checking against the environment.

Restrict access to the REST API by default

Needs:

  • Return a 403 (assuming this can be done via a function that is hooked on and therefore can be unhooked for code-level management)
  • Admin UI option for admin users
  • Ensure admin UI does not appear if this is disabled on the code level.
  • Ensure other suggested plugins do not break (i.e. they use unauthed REST API access).

Notification for Object Caching

Is your enhancement related to a problem? Please describe.

Via support monitor, 10up experience plugin can provide alert/warning if object caching is not working properly, which can be either due to service down, configuration issue, or the object-cache drop-in missing. This alert/warning can help to avoid degraded performance issue.

Designs

On the systems side, we can check object-caching is working by using the wp-cli command like:

wp cache add zabbix 1

This will add a value 1 in zabbix and we can use below command and it should retrun 1

wp cache get zabbix

And then finally we remove the object by:

wp cache delete zabbix

We can use similar approach on the code side to validate the caching.

Describe alternatives you've considered

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Review plugin suggestions

These are currently pulled from the .org favorites of the 10up user. This seems like a perfectly good system, so the action item here is likely to have that updated and a plan documented for who can update that and how. If we determine that it should pull from a different source, then that should happen in a separate issue for a later milestone.

Remove 10up Author Pages

It's common for 10up user accounts that set up a production website to be indexed on Google once the site has been launched, even if there is no content associated with those users. For example,

https://www.wearesmartertravel.com/author/ben-greeley/
https://www.eagleview.com/author/ben-greeley/

are examples of two sites that have indexed my name. The suggested pull request, #43 creates a 301 redirect for those pages for any users that have a @10up.com or @get10up.com e-mail address, removing them from being indexed.

Autoloaded or big options can be problematic for Redis/Memcache object caches

Describe the bug

We ran into an issue with a client who had define('SUPPORT_MONITOR_DEBUG' , true); and when they saw an increase in traffic this pushed our Redis servers to their bandwidth limits.

The reason for this is that the tenup_support_monitor_log option grew to around 5MB and was autoloaded, causing it to be part of the alloptions cache which is requested frequently.
We switched this option to not be autoloaded any longer and disabled the debug setting for now but it would be good to review all options that are being used (especially the ones which can grow large) and ensure they are not autoloaded (the default for new options when the autoload parameter is omitted when setting the option).

This particular option is set here

update_option( 'tenup_support_monitor_log', $log );

Furthermore, I would suggest truncating this option to not exceed 1 MB in (serialized) size as otherwise, this can have ill effects on common memcache setups which have a SLAB size of 1 MB.

Steps to Reproduce

  • Enable define('SUPPORT_MONITOR_DEBUG' , true); and log a lot of activity so the stored information becomes of reasonable size (in this case 5 MB)
  • Enable object caching with redis or memcache
  • Run a load test on the server through siege or similar
  • Evaluate bandwidth usage on redis/memcache

Screenshots, screen recording, code snippet

No response

Environment information

No response

WordPress information

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Option Failsafes interfering with updating Site Address (URL)

Describe the bug
Using WordPress Core's domain mapping functionality, updating the "Site Address (URL)" on the Edit Site screen "appears" to work, however the Site becomes unusable. Upon closer inspection it is because the home and siteurl options - visible in the "Edit Site Settings" area - have not been updated.

Steps to Reproduce

Please note; this was on a subfolder WordPress MultiSite and requires an additional DNS entry to be fully testable. For example; example.test/sitetest to sitetest.test. This example has been used in the following description.

  1. Go to Network Admin > Sites > Add New.
  2. Create a new website, example.test/sitetest/.
  3. Go to the Edit Site screen for the new site. (The notification will give options for "Dashboard" and "Edit Site" upon successful creation.
  4. On "Edit Site" screen, update the Site Address (URL) to be the mapped domain - https://sitetest.test/ - and click Save Changes.
  5. Site Address (URL) will update to the mapped domain.
  6. Click on the Settings tab.
  7. The home and siteurl are still with the values of example.test/sitetest.

If the above steps are repeated with 10up Experience deactivated, then this functionality works as expected.

Expected behavior
The Site Address (URL) and the home / siteurl should contain the same values, with the latter not including the trailing slash.

Additional Information
The issue seems to be with this code in the plugin;

/**
* Establish a failsafe for a required option.
*
* If WordPress is unable to retrieve a value for a required option, this filter
* will ensure that the required option does not persist in the notoptions cache
* for more than a period defined by the max age, by default, 10 seconds.
*
* @param mixed $default The default value.
* @param string $option The option name.
* @param bool $passed_default Whether the default was passed as a paremeter to get_option.
* @return mixed
*/
function require_option_failsafe( $default, $option, $passed_default ) {
// If we were explicitly passed a default, return the passed default value.
if ( $passed_default ) {
return $default;
}
// Did we look up this value recently?
$last_lookup = (int) wp_cache_get( "option_last_checked_{$option}", 'options' );
$time_since = time() - $last_lookup;
/**
* Filters the maximum age that a required option can be stored in the notoptions cache.
*
* @param int $max_age The max age in seconds, default 10s.
* @param string $option The name of the option that is being checked.
*/
$max_age = apply_filters( 'tenup_experience_required_option_max_age', 10, $option );
// If we checked less than x seconds ago, return whatever we have.
if ( $max_age >= $time_since ) {
return $default;
}
// Record current time as last checked time.
wp_cache_set( "option_last_checked_{$option}", time(), 'options' );
// Remove the required option from notoptions array.
$notoptions = wp_cache_get( 'notoptions', 'options' );
if ( is_array( $notoptions ) && isset( $notoptions[ $option ] ) ) {
unset( $notoptions[ $option ] );
wp_cache_set( 'notoptions', $notoptions, 'options' );
}
// Purge other caches where we might have a bad value.
$alloptions = wp_load_alloptions();
if ( isset( $alloptions[ $option ] ) ) {
unset( $alloptions[ $option ] );
wp_cache_set( 'alloptions', $alloptions, 'options' );
}
wp_cache_delete( $option, 'options' );
// Recheck for the option as it now will not be in the "notoptions" array.
return get_option( $option );
}

And this code in WordPress Core (the issue was noticed in 4.9.12, but the same code is present in 5.3);

https://github.com/WordPress/WordPress/blob/4.9.12/wp-admin/network/site-info.php#L91-L102
https://github.com/WordPress/WordPress/blob/5.3/wp-admin/network/site-info.php#L91-L102

Limit Login Default Plugin Settings

Is your enhancement related to a problem? Please describe.
Currently the WP Limit Logins plugin https://wordpress.org/plugins/wp-limit-login-attempts/ is used on many 10up Managed Hosting sites as well as client websites. By default the plugin is set up to log all IP addresses that are blocked. Over time and after being hammered with attempted login attempts this can fill the options table and slow down queries across a site.

Describe the solution you'd like
Add a default option to the 10up Experience plugin to automatically disable the 'Log IP Address' option to prevent the options table from filling. If a user sets this manually, we would ignore 10up Experience from overriding the option, which could be set by a separate option set in 10up Experience.

Make this a regular plugin

This means:

  • Plugin header
  • Reorganizing / splitting the monolith file
  • Adding warnings about deactivating the plugin (potentially: deactivation hook, list table notice)

10up SSO button disappears after upgrading to PHP 8.1

Describe the bug

The 10up Single Sign On button is not on the wp-admin screen after I upgrade to PHP 8.1

When I downgrade to PHP 8.0, the button re-appears and works as expected.

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������[20-Sep-2022 20:33:18 UTC] PHP Deprecated:  preg_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/html/wp-includes/formatting.php on line 5385
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_signon($credentials = [], $secure_cookie = '') /var/www/html/wp-login.php:1221
[20-Sep-2022 20:33:18 UTC] PHP   3. wp_authenticate($username = NULL, $password = NULL) /var/www/html/wp-includes/user.php:95
[20-Sep-2022 20:33:18 UTC] PHP   4. sanitize_user($username = NULL, $strict = *uninitialized*) /var/www/html/wp-includes/pluggable.php:603
[20-Sep-2022 20:33:18 UTC] PHP   5. wp_strip_all_tags($string = NULL, $remove_breaks = *uninitialized*) /var/www/html/wp-includes/formatting.php:2115
[20-Sep-2022 20:33:18 UTC] PHP   6. preg_replace($pattern = '@<(script|style)[^>]*?>.*?</\\1>@si', $replacement = '', $subject = NULL) /var/www/html/wp-includes/formatting.php:5385
[20-Sep-2022 20:33:18 UTC] PHP Deprecated:  trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/wp-includes/pluggable.php on line 604
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_signon($credentials = [], $secure_cookie = '') /var/www/html/wp-login.php:1221
[20-Sep-2022 20:33:18 UTC] PHP   3. wp_authenticate($username = NULL, $password = NULL) /var/www/html/wp-includes/user.php:95
[20-Sep-2022 20:33:18 UTC] PHP   4. trim($string = NULL) /var/www/html/wp-includes/pluggable.php:604
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1112
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/wp-admin', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1112
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1113
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_sec_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/wp-admin', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1113
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1114
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/wp-content/plugins', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1114
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1115
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_sec_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/wp-content/plugins', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1115
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1116
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_logged_in_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1116
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1117
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_logged_in_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1117
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1120
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wp-settings-0', $value = ' ', $expires_or_options = 1632169998, $path = '/') /var/www/html/wp-includes/pluggable.php:1120
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1121
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wp-settings-time-0', $value = ' ', $expires_or_options = 1632169998, $path = '/') /var/www/html/wp-includes/pluggable.php:1121
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1124
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1124
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1125
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1125
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1126
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_sec_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1126
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1127
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpress_sec_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1127
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1130
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpressuser_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1130
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1131
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpresspass_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1131
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1132
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpressuser_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1132
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1133
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wordpresspass_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1133
[20-Sep-2022 20:33:18 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/pluggable.php:604) in /var/www/html/wp-includes/pluggable.php on line 1136
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. wp_clear_auth_cookie() /var/www/html/wp-login.php:1380
[20-Sep-2022 20:33:18 UTC] PHP   3. setcookie($name = 'wp-postpass_2aba90672a5eac279669f2af1cc60865', $value = ' ', $expires_or_options = 1632169998, $path = '/', $domain = FALSE) /var/www/html/wp-includes/pluggable.php:1136
[20-Sep-2022 20:33:18 UTC] PHP Deprecated:  rtrim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/wp-includes/formatting.php on line 2772
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. login_footer($input_id = *uninitialized*) /var/www/html/wp-login.php:1530
[20-Sep-2022 20:33:18 UTC] PHP   3. do_action($hook_name = 'login_footer') /var/www/html/wp-login.php:392
[20-Sep-2022 20:33:18 UTC] PHP   4. WP_Hook->do_action($args = [0 => '']) /var/www/html/wp-includes/plugin.php:476
[20-Sep-2022 20:33:18 UTC] PHP   5. WP_Hook->apply_filters($value = '', $args = [0 => '']) /var/www/html/wp-includes/class-wp-hook.php:331
[20-Sep-2022 20:33:18 UTC] PHP   6. wp_print_footer_scripts('') /var/www/html/wp-includes/class-wp-hook.php:307
[20-Sep-2022 20:33:18 UTC] PHP   7. do_action($hook_name = 'wp_print_footer_scripts') /var/www/html/wp-includes/script-loader.php:2139
[20-Sep-2022 20:33:18 UTC] PHP   8. WP_Hook->do_action($args = [0 => '']) /var/www/html/wp-includes/plugin.php:476
[20-Sep-2022 20:33:18 UTC] PHP   9. WP_Hook->apply_filters($value = '', $args = [0 => '']) /var/www/html/wp-includes/class-wp-hook.php:331
[20-Sep-2022 20:33:18 UTC] PHP  10. _wp_footer_scripts('') /var/www/html/wp-includes/class-wp-hook.php:307
[20-Sep-2022 20:33:18 UTC] PHP  11. print_footer_scripts() /var/www/html/wp-includes/script-loader.php:2125
[20-Sep-2022 20:33:18 UTC] PHP  12. WP_Scripts->do_footer_items() /var/www/html/wp-includes/script-loader.php:2030
[20-Sep-2022 20:33:18 UTC] PHP  13. WP_Dependencies->do_items($handles = FALSE, $group = 1) /var/www/html/wp-includes/class.wp-scripts.php:679
[20-Sep-2022 20:33:18 UTC] PHP  14. WP_Scripts->do_item($handle = 'password-strength-meter', $group = 1) /var/www/html/wp-includes/class.wp-dependencies.php:136
[20-Sep-2022 20:33:18 UTC] PHP  15. WP_Scripts->print_translations($handle = 'password-strength-meter', $display = FALSE) /var/www/html/wp-includes/class.wp-scripts.php:320
[20-Sep-2022 20:33:18 UTC] PHP  16. load_script_textdomain($handle = 'password-strength-meter', $domain = 'default', $path = NULL) /var/www/html/wp-includes/class.wp-scripts.php:605
[20-Sep-2022 20:33:18 UTC] PHP  17. untrailingslashit($string = NULL) /var/www/html/wp-includes/l10n.php:1018
[20-Sep-2022 20:33:18 UTC] PHP  18. rtrim($string = NULL, $characters = '/\\') /var/www/html/wp-includes/formatting.php:2772
[20-Sep-2022 20:33:18 UTC] PHP Deprecated:  rtrim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/wp-includes/formatting.php on line 2772
[20-Sep-2022 20:33:18 UTC] PHP Stack trace:
[20-Sep-2022 20:33:18 UTC] PHP   1. {main}() /var/www/html/wp-login.php:0
[20-Sep-2022 20:33:18 UTC] PHP   2. login_footer($input_id = *uninitialized*) /var/www/html/wp-login.php:1530
[20-Sep-2022 20:33:18 UTC] PHP   3. do_action($hook_name = 'login_footer') /var/www/html/wp-login.php:392
[20-Sep-2022 20:33:18 UTC] PHP   4. WP_Hook->do_action($args = [0 => '']) /var/www/html/wp-includes/plugin.php:476
[20-Sep-2022 20:33:18 UTC] PHP   5. WP_Hook->apply_filters($value = '', $args = [0 => '']) /var/www/html/wp-includes/class-wp-hook.php:331
[20-Sep-2022 20:33:18 UTC] PHP   6. wp_print_footer_scripts('') /var/www/html/wp-includes/class-wp-hook.php:307
[20-Sep-2022 20:33:18 UTC] PHP   7. do_action($hook_name = 'wp_print_footer_scripts') /var/www/html/wp-includes/script-loader.php:2139
[20-Sep-2022 20:33:18 UTC] PHP   8. WP_Hook->do_action($args = [0 => '']) /var/www/html/wp-includes/plugin.php:476
[20-Sep-2022 20:33:18 UTC] PHP   9. WP_Hook->apply_filters($value = '', $args = [0 => '']) /var/www/html/wp-includes/class-wp-hook.php:331
[20-Sep-2022 20:33:18 UTC] PHP  10. _wp_footer_scripts('') /var/www/html/wp-includes/class-wp-hook.php:307
[20-Sep-2022 20:33:18 UTC] PHP  11. print_footer_scripts() /var/www/html/wp-includes/script-loader.php:2125
[20-Sep-2022 20:33:18 UTC] PHP  12. WP_Scripts->do_footer_items() /var/www/html/wp-includes/script-loader.php:2030
[20-Sep-2022 20:33:18 UTC] PHP  13. WP_Dependencies->do_items($handles = FALSE, $group = 1) /var/www/html/wp-includes/class.wp-scripts.php:679
[20-Sep-2022 20:33:18 UTC] PHP  14. WP_Scripts->do_item($handle = 'user-profile', $group = 1) /var/www/html/wp-includes/class.wp-dependencies.php:136
[20-Sep-2022 20:33:18 UTC] PHP  15. WP_Scripts->print_translations($handle = 'user-profile', $display = FALSE) /var/www/html/wp-includes/class.wp-scripts.php:320
[20-Sep-2022 20:33:18 UTC] PHP  16. load_script_textdomain($handle = 'user-profile', $domain = 'default', $path = NULL) /var/www/html/wp-includes/class.wp-scripts.php:605
[20-Sep-2022 20:33:18 UTC] PHP  17. untrailingslashit($string = NULL) /var/www/html/wp-includes/l10n.php:1018
[20-Sep-2022 20:33:18 UTC] PHP  18. rtrim($string = NULL, $characters = '/\\') /var/www/html/wp-includes/formatting.php:2772

Steps to Reproduce

  1. Create an install running PHP 8.0
  2. Install and activate the plugin
  3. Go to the login screen
  4. Verify SSO button is present
  5. Upgrade to PHP 8.1
  6. Go to the login screen
  7. SSO button is no longer there

Screenshots, screen recording, code snippet

No response

Environment information

No response

WordPress information

`

wp-core

version: 6.0.2
site_language: en_US
user_language: en_US
timezone: +00:00
permalink: /%postname%/
https_status: true
multisite: false
user_registration: 0
blog_public: 1
default_comment_status: open
environment_type: production
user_count: 1
dotorg_communication: true

wp-paths-sizes

wordpress_path: /var/www/html
wordpress_size: loading...
uploads_path: /var/www/html/wp-content/uploads
uploads_size: loading...
themes_path: /var/www/html/wp-content/themes
themes_size: loading...
plugins_path: /var/www/html/wp-content/plugins
plugins_size: loading...
database_size: loading...
total_size: loading...

wp-active-theme

name: Twenty Twenty-Two (twentytwentytwo)
version: 1.2
author: the WordPress team
author_website: https://wordpress.org/
parent_theme: none
theme_features: core-block-patterns, post-thumbnails, responsive-embeds, editor-styles, html5, automatic-feed-links, block-templates, widgets-block-editor, wp-block-styles, editor-style
theme_path: /var/www/html/wp-content/themes/twentytwentytwo
auto_update: Disabled

wp-themes-inactive (2)

Twenty Twenty: version: 2.0, author: the WordPress team, Auto-updates disabled
Twenty Twenty-One: version: 1.6, author: the WordPress team, Auto-updates disabled

wp-plugins-active (1)

10up Experience: version: 1.9.1, author: 10up, Auto-updates disabled

wp-plugins-inactive (2)

Akismet Anti-Spam: version: 5.0, author: Automattic, Auto-updates disabled
Hello Dolly: version: 1.7.2, author: Matt Mullenweg, Auto-updates disabled

wp-media

image_editor: WP_Image_Editor_Imagick
imagick_module_version: 1692
imagemagick_version: ImageMagick 6.9.12-50 Q16 x86_64 17254 https://legacy.imagemagick.org
imagick_version: 3.7.0
file_uploads: File uploads is turned off
post_max_size: 150m
upload_max_filesize: 150m
max_effective_size: 150 MB
max_file_uploads: 20
imagick_limits:
imagick::RESOURCETYPE_AREA: 12 GB
imagick::RESOURCETYPE_DISK: 9.2233720368548E+18
imagick::RESOURCETYPE_FILE: 786432
imagick::RESOURCETYPE_MAP: 12 GB
imagick::RESOURCETYPE_MEMORY: 6 GB
imagick::RESOURCETYPE_THREAD: 1
imagemagick_file_formats: 3FR, 3G2, 3GP, AAI, AI, APNG, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CR3, CRW, CUR, CUT, DATA, DCM, DCR, DCX, DDS, DFONT, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FAX, FILE, FITS, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, GV, H, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, J2C, J2K, JBG, JBIG, JNG, JNX, JP2, JPC, JPE, JPEG, JPG, JPM, JPS, JPT, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAGICK, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, POCKETMOD, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIDEO, VIFF, VIPS, VST, WBMP, WEBM, WEBP, WMF, WMV, WMZ, WPG, X, X3F, XBM, XC, XCF, XPM, XPS, XV, XWD, YCbCr, YCbCrA, YUV
gd_version: 2.3.3
gd_formats: GIF, JPEG, PNG, WebP, BMP, AVIF, XPM
ghostscript_version: not available

wp-server

server_architecture: Linux 5.10.25-linuxkit x86_64
httpd_software: nginx/1.21.1
php_version: 8.1.9 64bit
php_sapi: fpm-fcgi
max_input_variables: 1000
time_limit: 30
memory_limit: 128M
admin_memory_limit: 256M
max_input_time: 60
upload_max_filesize: 150m
php_post_max_size: 150m
curl_version: 7.61.1 OpenSSL/1.1.1k
suhosin: false
imagick_availability: true
pretty_permalinks: true

wp-database

extension: mysqli
server_version: 5.7.35
client_version: mysqlnd 8.1.9
max_allowed_packet: 1073741824
max_connections: 20

wp-constants

WP_HOME: undefined
WP_SITEURL: undefined
WP_CONTENT_DIR: /var/www/html/wp-content
WP_PLUGIN_DIR: /var/www/html/wp-content/plugins
WP_MEMORY_LIMIT: 40M
WP_MAX_MEMORY_LIMIT: 256M
WP_DEBUG: true
WP_DEBUG_DISPLAY: false
WP_DEBUG_LOG: true
SCRIPT_DEBUG: false
WP_CACHE: false
CONCATENATE_SCRIPTS: undefined
COMPRESS_SCRIPTS: undefined
COMPRESS_CSS: undefined
WP_ENVIRONMENT_TYPE: Undefined
DB_CHARSET: utf8
DB_COLLATE: undefined

wp-filesystem

wordpress: writable
wp-content: writable
uploads: writable
plugins: writable
themes: writable

`

Code of Conduct

  • I agree to follow this project's Code of Conduct

No composer.json error

I'm trying to install the plugin with composer and I get this error message when running composer install or composer update

[Composer\Repository\InvalidRepositoryException]
No valid composer.json was found in any branch or tag of https://github.com/10up/10up-experience.git, could not load a package from it.

Use an SVG for the admin bar icon instead of a font

I think this may require inserting a span into the admin menu item, but we should be able to just use a base64-encoded SVG background image for the admin menu item instead of all the files for a single-icon font.

Clarify password-protected content warning in admin

Is your enhancement related to a problem? Please describe.

Screenshot 2023-10-12 at 15 13 27

<p class="description"><?php esc_html_e( 'Enables password protected content. WordPress default password protected post functionality is insecure and does not work with page caching.', 'tenup' ); ?></p>

Enables password protected content. WordPress default password protected post functionality is insecure and does not work with page caching.

This notice is vague:

  • What are the security concerns?
  • "Page caching" is implemented in different ways by different hosts, and this warning may not apply to specific hosts or website architectures.

I'm filing this issue because I couldn't find those answers in this plugin's documentation, or in the WordPress documentation at https://wordpress.org/documentation/article/protect-posts-with-password/ , or in the documentation of the host (WP VIP) for a client project.

Designs

No response

Describe alternatives you've considered

Possible resolutions:

  • expanding this warning on this admin page
  • adding a link to some documentation in this plugin, or elsewhere in 10up's documentation

Code of Conduct

  • I agree to follow this project's Code of Conduct

Do EOL checks for PHP, database, and object cache versions

Is your enhancement related to a problem? Please describe.

Via Support Monitor, the 10up Experience can go beyond plugin and theme checks and provide information about the server environment. This is an opportunity to check on PHP, MySQL, MariaDB, and other applications in a typical LAMP/LEMP stack, and create a central source of information for ensuring project servers are up to date.

Describe the solution you'd like

Include a regular check on these key applications and any potential others to match the version against their EOL schedule, i.e. PHP 7.4 will reach end-of-life on Nov. 28, 2022. 10up Experience could provide an early warning a month or so early, and then warn following the date for 7.4 or earlier versions.

This would require a once-or-twice-yearly update to add the latest EOL information to the plugin.

Hides the WP menu link for the Stream plugin

Activating the 10up Experience plugin hides the top left WordPress dashboard menu link for the Stream user action tracking plugin. (See screenshot) This menu item should appear between "Dashboard" and "Posts," and appears correctly once 10up Experience is deactivated.

Tested on WordPress 5.6.4 but we have observed this across various core versions.

Filtering WP List Table Views by Author Redirects to Home Page When Author Email Domain is a 10up One.

Summary of Bug
When filtering content in any post table list view (within admin dashboard) by author, if said authors' email domain is a 10up domain, the end-user is redirected to the home page as opposed to the filtered list table. This is not the case for non-10up domain users.

Steps to Reproduce

  1. Create a user (of a role capable of creating posts)
  2. Assign an email address of domain 10up.com or get10up.com
  3. Create a few posts using the said user account
  4. Proceed to list table for posts, ensuring that there are some authored by said user
  5. Click on the author name (ensuring it is the newly created user)
  6. You will be redirected to the home page

Expected behavior
I expect to see the content filtered by said author, not to be redirected to the home page.

Environment information

  • Device: All
  • OS: All
  • Browser and version: All
  • WordPress version: 5.5
  • Plugins and version: 1.7.3
  • Theme and version: In House Theme

Consider a more "designed" about page

Right now the about page just uses WordPress styles and is pretty plain. For an about page, I think it's fine to brand a little heavier. Maybe a header, at least.

Check haveibeenpwned API during password reset and account creation

Is your enhancement related to a problem? Please describe.
Attacks on the wp-login brute forcing or using a compromised username and password is the most common way a site will get hacked. Password re-use, where a username and password is used on multiple websites, is a common user behavior and can lead to a WordPress user's account being compromised based on a hack on a separate site. The 10up experience plugin already forces stronger passwords be used, but we should continue to look for ways to protect users and help them choose passwords that will keep their site secure.

Describe the solution you'd like
Haveibeenpwned maintains a database of usernames and passwords that have been exposed in previous hacks https://haveibeenpwned.com/API/v3. When creating a user account or resetting a password, we can make a call to this API to determine if this exact username and password is insecure because it has been exposed in a previous hack. We could also make a call to this API during the login process, but we'd want to set a flag to avoid having to check the same user over and over if we've already checked that their credentials are fine. Maybe that flag should expire monthly or every 3 months to do a recheck as the haveibeenpwned database updates with newer hacks. Checking at account creation and password reset seems to be the best starting point.

There's some existing plugins that we can reference for how to implement this. None of them do exactly what I think we need, but they get close.

https://wordpress.org/plugins/signup-breach-checker/
https://wordpress.org/plugins/user-email-compromised-check/
https://wordpress.org/plugins/disallow-pwned-passwords/
https://wordpress.org/plugins/better-passwords/ (features on this one are pretty good)

Fatal error on login screen: Uncaught TypeError: rawurlencode(): Argument #1 ($string) must be of type string, array given

Describe the bug

I recently encountered a fatal error on the login screen.

Uncaught TypeError: rawurlencode(): Argument #1 ($string) must be of type string, array given
An error of type E_ERROR was caused in line 301 of the file /wp-content/plugins/10up-experience/includes/classes/SSO/SSO.php. Error message: Uncaught TypeError: rawurlencode(): Argument #1 ($string) must be of type string, array given in /wp-content/plugins/10up-experience/includes/classes/SSO/SSO.php:301
Stack trace:
#0 wp-content/plugins/10up-experience/includes/classes/SSO/SSO.php(301): rawurlencode(Array)
#1 wp-includes/class-wp-hook.php(308): TenUpExperience\SSO\SSO->process_client_login('')
#2 wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters('', Array)
#3 wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#4 wp-login.php(527): do_action('login_form_10up...')
#5 {main}
thrown

Steps to Reproduce

  1. Go to the login screen.
  2. Click the SSO button
  3. Do not have access
  4. Get sent back to the login screen

Screenshots, screen recording, code snippet

No response

Environment information

WordPress version 6.2.2
Current plugin: 10up Experience (version 1.10.2)
PHP version 8.0.27

WordPress information

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

admin.css from the experience plugin is showing up as render blocking css in Google Pagespeed Insights

I would consider this a major issue with the Google emphasis on performance:
https://webmasters.googleblog.com/2018/01/using-page-speed-in-mobile-search.html?hl=en-US&utm_source=PSI&utm_medium=incoming-link&utm_campaign=PSI

Many people are using Page Speed Insights to optimize their site to make Google happy and right now, our Experience plugin is showing up as unoptimized CSS that should be fixed. I am going to provide additional context directly to our internal team.

Warning message includes "nn" instead of newline

mestes 2018-08-17 at 11 05 19 am

When the warning message gets passed through esc_js(), it's stripping out the slashes that are part of the escape sequence for newlines, resulting in "dashboard.nnAre you sure" instead of putting the AYS on a new line.

10up SSO Button Doesn't Appear When 10up Exp Plugin Activated Per-Site

Describe the bug

When 10up Experience is installed on a multisite network and is activated per-site (not network-activated) the SSO login button doesn't appear when logging into the site. For example, if the site mysite.com is a multisite and mysite.com/site1 is a site within the multisite, the 10up SSO button doesn't appear when going to mysite.com/site1/wp-admin

Once you network-activate the 10up Experience plugin 10up SSO works as-expected.

cc @tlovett1

Steps to Reproduce

  • Install 10up Experience on Multisite Network
  • Activate plugin on individual site (not network-activate)
  • Go to the wp-admin page for that site
  • Observe the 10up SSO button is missing

Screenshots, screen recording, code snippet

No response

Environment information

No response

WordPress information

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

10up-experience's SSO infinite redirect loop

Describe the bug

Hi,

I found a problem while logging in using SSO for https://site.com/sluis-sector/. The different login URL is handled by a plugin called "perfmatters" and leads 10up-experience's SSO code to an infinite redirect loop. Does anyone here faced a similar problem already? (I realize that the fact this is a paid plugin will drastically reduce my chances to get some snippet to simply paste there but any pointers help)

Steps to Reproduce

1- Go to https://site.com//
2- Login using 10up SSO account
3- Its will give redirect error
4- If I try to login with user name and password it works fine

Screenshots, screen recording, code snippet

No response

Environment information

No response

WordPress information

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.