Jump to content

Mike Rockett

  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Mike Rockett

  1. Apologies guys, I seem to have skipped 0.6.0, which was sitting on develop for quite some time. That's fine though, because if there are no issues, I'd like to bump it to v1.0. Given that it's not there yet, I've marked the module as Beta. If anyone does bump into funny stuff, let me know and I'll get it sorted as soon as I can.
  2. I'm about to release 0.7.0, which has the following changes: Bumps PHP minimum version to 7.1 (should be 7.2, but I'll do that next year) Bumps PW minimum version to 3.0.16 Fixes an issue with regards to null configs Sitemap cache policies Sets the correct installer directory for Composer
  3. @Sascha Nos You're very welcome! ?
  4. @bbeer – if you are getting URLs with the encoded %23, then I think that htaccess would be your best bet until JL2 is ready (working on it as I write this). It must be that the CRM is encoding the hash when storing the URL (bad move, CRM), which the browser then sends to the server, which sees it as part of the actual URI. The browser will never send it if it is not encoded. If htaccess is too messy, then you could perhaps append the source with {all}, which would catch everything after the last 'segment' – the destination could then just ignore this. Not the best solution I know, but seems like it could work for the time being…
  5. @teppo @Jason Huck – In JL1, this unfortunately requires two jumplinks – one for including the query string, and the other for excluding it. I know, it really sucks, but JL2 solves this problem by using optional parameters and a little bit of internal trickery. I do still need to add in a boolean flag on jumplinks to indicate whether or not they should even care about the query string. I would prefer to not implement this flag, but sometimes it's useful when you don't care about it so much that you'd rather not even make mention of it in the source.
  6. Hi @Marco Ro – Thanks, I'll need to look into this. It isn't the first time it's happened. Internally, I use a package that generates the sitemap using a 'fluent' interface, and this issue has crept up with that package a few times in the past.
  7. @gebeer It'll likely be executeCommit as executeEntity returns the view. However, the 'routes' will be split out in v2 (namely, executeStore, executeUpdate, executeDisable, executeEnable, the first two of which will probably be used to trigger a cleanup).
  8. @PWaddict – Sorry for the delay in getting back to you. From looking at the lines affected there, it seems like the sitemap configuration saved for each page vanished. Note entirely sure what could have caused that, though. Will give it a look-see on Sunday.
  9. @gebeer – Thanks ? This hasn't been addressed in v1, as the plan was to carry the behaviour into v2 (sorry it's taken so long…) by way of the separate module. I picked up the project again recently and was giving it some thought. I might just include the 404 logger in JL v2, but am still 50/50 on it. @teppo @adrian – You know, I should have truncated that alongside truncation of the request_uri. Going to see if I can squeeze this in over the weekend while I work on v2’s frontend.
  10. @xportde Hi Thomas, I'm quite sure it's possible, but I don't quite know how useful that will be as Google will likely find the page and index it anyway…
  11. Progress Update: I'd like to drop debug mode in favor of a testing tab that I'm quite sure has been brought up before. The idea is to not have to throw your entire site in to JL debug mode just to test one thing in production. I've added this tab now, seems to work well.
  12. I have indeed – and I dig it from the perspective of rapid development. As I understand it though, it comes with a runtime that contains things that may or may not be used. Sure, the Alpine runtime is small, but the build file I have in Svelte is looking a bit smaller (so far). That aside, enjoying Svelte so far – this is the first time I'm exploring all of its features.
  13. Progress update: Have managed to throw in a few hours on v2. The frontend is being rebuilt in Svelte, because I simply don't use jQuery/Datatables anymore. By not using any of these, I'm free to code this thing the way I want, without having to use a bunch of dependencies that are simply frustrating to build things with. Datatables in particular is hell to work with. (As an aside, I primarily work with Vue, but Svelte is a little more suited here. No runtime, much smaller bundle.) Anyways, here's a preview of the redesigned jumplinks list. Newly built styles, consistent in both the default and UIKit themes (should be fine in custom themes too) and scoped to the Svelte container. Have carried over the behaviours, however instead of fetching all jumplinks, they're now fetched as a paginated collection. I'm sure there are a few sites out there with many jumplinks, and fetching them all is just too much. As mentioned in a previous preview post (such a long time ago!), you'll be able to turn off the colour helpers if you don't like/need them.
  14. Super sorry for missing your post! If my-page exists, then Jumplinks will not take effect. It only responds to 404 events within ProcessWire.
  15. @a-ok Jumplinks 1 doesn't have built in support for automatically dealing with query strings. This is planned for Jumplinks 2, but I simply haven't had the time to complete it. For the time being, I'd be inclined to use the {all} wildcard on the end. Source: chance-to-dance[/]{all} Destination: somewhere/{all} or {!all} to skip wildcard cleaning
  16. @uiui Ah you're quite right. Unfortunately, I don't have enough time to implement this right now... If you (or anyone else) would like to take a stab at it, please feel free to submit a PR to the repo. If I find some time, I'll take a look. ?
  17. Thanks @teppo – looks good, so I'll merge it in and push a release. Thanks for spotting that as well – evidently didn't cross my mind ?
  18. @joe_ma – Apologies for not getting back to you, I didn't see your post until now ? I'm not quite sure why you're getting those errors, though it seems like something else is interfering with the module output and or your pages. Could you share a list of the other modules you are using and perhaps any custom code/hooks that are at play? That might help me find out what the problem is, which is important as this issue hasn't come up before and I'd like to ensure it doesn't happen to others too. Thanks! @uiui – The module supports sites with the multisite and language support modules installed. I haven't tested it it in a while, so if you have any issues, please let me know. ?
  19. @2hoch11 - Thanks. So the reason for the redirect is to take the page away from index.php so that it isn't seen as the home page. You simply need to change the source to index_php/{id}.
  20. @Andi – interesting… I'm sure this could be achieved with a hook that gets triggered when iterating pages. Haven't worked with the hook system in a while, but I guess that adding support for addHookBefore('Sitemap::page') would be a decent idea. Unfortunately though, I don't have the time to get to this right now. If you or anyone else is willing to look into implementing this, please feel free to sumit a PR. If that hasn't happened and I find some time in the next week or so, then I'll jump on it. As a last resort, there's always the getAdditionalPages hook that was recently added. It would mean that you exclude your posts from the sitemap and use that hook to add all your posts with the correct paths.
  21. @2hoch11 – please could you share your jumplink source and destination, the htaccess code, and the debug log (debug mode is in the module config)?
  22. Hi @HerTha - you're very welcome. I really do wish I had more time to work on JL2, which would solve this problem off the bat, but I just can't squeeze it in right now. With this specific issue, I might land up having to do some trickery in relation to checking if the column exists. Means I need to dig into the information_schema table, which I hate doing. MariaDB supports alter/modify if not exists, but there's obviously no point in me adding something that will crash for most users. I'm still baffled as to why it's running that schema update in the first place. The only possible thing is that the schema version somehow got 'lost' and so it re-ran it. I'm also a little puzzled as to why the _nf table had to be deleted – that doesn't seem to have anything to do with the issue at hand, which is in relation to the main table. Before you update production, could you check the module configuration in the database for me? In the moduels table, there will be an entry for ProcessJumplinks – in the data column, there will be a _schemaVersion in the JSON payload – the value for that is what I'm looking for. I'll also need the current version of JL that you're running on the production site. Based on that, I might be able to diagnose. If we're lucky, it might resort to a simple correction of the schemaVersion, in case it didn't successfully update before.
  23. @teppo – I've pushed an update to the develop branch that adds an update policy config option. I think the sensible default is to set it to guests only, which is what I've done here. Let me know if you feel it should be the other way around. The HTTP headers now also provide a reason for skipping the cache. Would you be happy to test it out? Regarding templates without sitemap access, the idea is to only target pages. Built it way back when, so can't really remember why I did it this way, but I do remember having a reason. We could well add an option to also say that children of these templates should be excluded... ? -- There are other issues on the repo at the moment, some of which discuss features people would like to see. Unfortunately, my time is very limited and so I invite module developers to contribute if they feel up to it (I'd be super grateful). Happy to spend time discussing things and reviewing PRs and issuing quick bug fixes, but am not able to get to feature development on this module right now…
  24. @teppo – fair enough, you're actually quite right. So the options are then to either have the option to turn off caching for authed users or use use role-based caching for authed users, or perhaps even dictate some more fine grained rules behind which pages can be added to the sitemap. At the end of the day, the sitemap should always resemble publicly-viewable content only, so perhaps that's a better option (though I don't know how feasible it is from an implementation perspective). Another thing to note is that individual pages can be turned off from their Sitemap settings, though perhaps in some cases, that could be quite a chore (depending on the tree-structure and whether or not said pages are all common to one parent).
  25. @teppo, interesting idea indeed. In my opinion though, I feel like that defeats the purpose of a sitemap, which is really designed for guest and search engine access (in which case, only templates of those pages should be added to the config in the first place). I don't see why items should be conditionally added based on role if the consumer won't make much use of it… If you can see a reason how/why they would, then I'm happy to add it in.
  • Create New...