the removal of the $icmsModule variable was part of the cleanups that were marked as 'to remove in 1.4' I remember. The fix for the modules should be to use icms::$module if I'm not mistaken.
The global variable that was coming up empty was $impresscms (and sometime $icmsModule). I'm not sure where the disconnect occurred. It may have been assigned an old variable somewhere. Better to figure it out now.
It is true that I did some major cleaning up of supposedly no-longer used attributes and functions in the core. Normally tests should have shown regressions, but no manual test is faultless I'm afraid.
The missing global is strange, I didn't change anything concerning that, as far as I know the content module did work during my latest tests.
Found the sorting issue - a global was no longer available and needed to be replaced with icms:: static object. Discovered it as I was testing with the Content module - the admin page for it would not load after installing.
Some additional findings that are not add-in library specific: sorting tables by clicking on the header link in a column is not working for custom tags, ratings, symlinks (pages), block positions, blocks, mimetypes, autotasks, and userranks. I verified these are working in 1.4.4. Trying to track it down now. I'm suspecting something with the IPF table class or filtering in the admin panel. What's missing in all of the links is "fct=" and the object name.
Currently working through some of the PHP7+ errors and requirements and removing some things that aren't used, at least in a new install (msyql support during install, for example). I've been testing with PHP7.0 to start with.
Just navigating through the administration panel, the version checker does not work on PHP7.0. The version of SimplePie (1.8) now in this release requires PHP7.2. SimplePie 1.7 will run on PHP7.0 and will also run on PHP8
Later than planned, but here is a first try : https://github.com/ImpressCMS/impresscms/pull/1429
That's certainly a viable solution. I'll take care of that this evening.
I was thinking along the lines of using the existing UA field and having it do some double duty. Do nothing and we assume, based on the format of the tag, that it's for UA. If you have switched to GA4, include the G- at the beginning of the tag and we'll load the proper snippet.
Using the preloads is a good idea - I think we should go that route for this round. The next phase will be to find a better way to insert and manage them from the control panel.
Short term : can't we simply add an extra field to the ACP where users can put their GA4 number? That would allow both Universal Analytics and GA4 to coexist for the time being.
The idea of custom tags it not bad, but configuration of these features should always be kept limited to the ACP, so even if you define a custom tag to include GA4 or Fathom or any other service, we will need to figure out a way to define these identifiers freely in the ACP as well.
I was thinking - Custom Tags already provides a lot of the flexibility to add other snippets anywhere. What it still requires is a way to insert your tag without having to manually edit a template, if you want something to be in the header of your pages. If it can go in the body, you're set.
I think turning this into module would be a great idea.
Yes, many use Google but not everyone. Sometimes other analytics tools are better.
This could turn into a whole lot of different scenarios and options to handle through the core admin UI. Or, we can add documentation on how to add preloads that each admin would need to customize before deploying on their sites. Even now, I think of a preload generator that would allow an admin to paste in the code snippet from the other provider, select where it loads, and be able to manage it that way. That's for a later release.
For immediate consideration is what do we put into the new 2.0 release? My first reaction is to keep it simple - provide a GA4 preload template that admins can customize with their tag and include on their sites. The UA portion would remain and not interact with the GA4 plugin. Admins would need to determine the impact of having both active on a site. We deprecate the UA code with this release and move towards a more easily customized solution, removing the UA portions in a later release this year.
Universal Analytics will be deactivated in a few months. If your site uses it, you will have received already quite a few reminders about moving to Google Analytics 4. But keep in mind that the data cannot be transferred.
Sunsetting a product is always a risk to retain users, as at that moment you force them to think about their needs, and perhaps they arrive at the conclusion that their needs are better met elsewhere.
ImpressCMS has been solely supporting UA in the past (we even come from the predecessor, but that's a long time ago). Perhaps in the future we should look into opening up this interface and making it possible to easily add new analytics products, and to have multiple analytics options simultaneously active.
But for now, let's make it so that users are supported in migration from UA to GA4
I agree with the Google UA towards Google Analytics 4 migration need. In the current stage, we can easily work with preloads. The issue should be discussed further though.
Perhaps we also include a warning in the admin panel for the upcoming deactivation of UA and instructions on how to switch their ImpressCMS site once they have made the switch with Google.
I was also thinking this release should address Google Analytics 4 over Universal Analytics - UA will stop working/reporting in 4 months (July 1).
This is kind of tricky, since we can't determine if a site has been converted, or if the new GA4 property tag has been created. Going through this for myself, the ID is different, so both the code and the ID need to be updated for a site.
I see you have implemented this as a plugin on this site, @fiammybe, and removed the section cf the core code that inserts the ga snippet into every page. Maybe we do that for both options - create preload plugins and have the administrator activate the one they use. Assume they are using UA (since that is what the core is injecting) and move that to preloads with the upgrade. Provide an alternative for GA4.
Things we can't verify -
That sounds like a great OpenAI idea. Didn't they have a generator for this type of images? Show me my photo how i'd look like captain picard?
I'll have a look, sounds like a fun project.
Of course, I forgot that valentine's day is more of less the black Friday for the flower business.
I will update the estimated date on the Github milestone.
Just to make sure, what are precisely the situations to test? Php 7.0 until php 8.0?
Upgrade from 1.4.4?