Extended functionality of canonical plugin for e107
What is comming in version 1.4
- admin area
23.8.2018 Updated version 1.3.2
(problem with forum pagination was fixed, so I removed workaround)
Version 1.4.0 in development
- added field title to manual canonical urls because this plugin is planned to use for gsitemap
New in version 1.3.1:
- added possibility to set 301 redirect. Mainly used for 404 urls added in manual canonical urls. Default redirect was 302.
New in version 1.3.0
- added redirect
- added support for download plugin
Duplicate content and canonical URLs.
Based on discussion on forum I spent some time reading a lot of articles about this topic - duplicate content and canonical URLs. Some advices are exactly opposite, so it's on you. This plugin just helps to solve some issues.
It's based on the canonical plugin in e107Inc directory. I couldn't get that plugin to work, but at the end I was able to fix it too. So this plugin uses the same table (and next two ones) as original plugin.
BE AWARE - canonical URLs are not redirects! They just point search engines to the same content if more versions of the same page is available. (It’s imply saying, it's more complicated, but point is - Canonical URL must exist!, it's not like sef-url field, where engine does all rewritings)
So how this plugin works? There are 3 types of canonical URLs:
- manually created and combined with existing links (first priority)
- related to e107 tables. At this time only for news.
- generated from e107 constants
I use it for homepage (https://www.e107sk.com/, https://www.e107sk.com/index.php) and for news homepage - news.php, news/, news - without backslash... - in debug mode type:canonical_request_URLs (Yes, I know, terrible name, but I was focused to get it work, I will solve cosmetics details later).
With news there is new tab Canonical and there you should insert absolute (full) canonical address. After this all version of that news (after changing sef-url, after using old menu with legacy link) will have the same canonical url. In debug mode type:related_URLs
Be aware that after changing way how news URL is created, you will do it again (if you don’t use legacy links). Or you will choose the right setting :) See as example: https://e107.sk/news/view/13/freelancer-theme-for-e107-2-1-4
This option can be set ON/OFF in Settings. This code is moved from theme.php where was originally tested during our discussion with Evgura about this topic.
What are rules for generating?
- it ignores gallery plugin (try to look at constants with this plugin)
- with forum plugin it uses e_REQUEST_URL . You should use SEF-URL option with forum plugin. I tried to put it OFF, but some functionality is missing then and it always returned somehow back...
- if there is available e_URL_LEGACY constant, it uses it for canonical URL (it is set for plugins using simple e_url.php for rewritting)
- if there are available e_PAGE and e_QUERY constants, it uses them for canonical URL
- you can set all plugin ON/OFF without uninstallation. If something is wrong, just deactivate it
- you can set ON Run Check - for your canonical link it returns if they are available (200 vs 404 values). It takes some time, I just needed quick check if all links exist.
- you can set Display Debug info on Frontend - it displays needed values for main admins without need to set debug developer mode or debug browser extension. This is probably the best feature for me, it was annoying to open source code or to scroll full list of e107 constants to check existing values)
- you can set OFF generating of legacy URLs.
And again here: I am sure it can be written better way, so just do it. I do what I know and I am aware that my code is far far from perfection. You are welcome to write better plugin.
PS. I would put bigger image into text, but I use on this site version with TinyMce issues.
MUST TO BE plugin for community site
There is just awesome plugin by Arun [arunshekher]
Quote from its description: (with my English it's easier just copy things).
This plugin converts user mentions (usernames prepended with '@' sign) in comments, chatbox posts, and forum posts to matching user-profile links in your e107 powered websites. It also helpfully renders a username auto completion/suggestion popup-list as you start to type-in a username followed by an '@' sign in plugin supported text areas.
This is one of must to be plugin for any community site. You can download it from Plugin Manager.
You should use this plugin with php 7 or at least php 5.6 .
Based on GDPR rules, opt-in and opt-out option
On this site is used opt-out version. So if you decline cookies, with each page refresh all cookies will be deleted before saving (so login and registration will not work)
The cookie banner is displayed only for guests, any registered (logged in) user of any CMS should be clever enough to know that without technical cookies any CMS can't work.
On this site Gold System Plugin is tested
Just be aware that this is just testing. My local enviroment is PHP 5.6 and this one use PHP 7.0. No money are needed for golds.
I am trying to learn more from the best plugin author I know (or I best understand it's code) and to get his code to work under new version.
I never used this plugin with 0.7 version and I really don't know from where I have source code - I just found it while cleaning my old 1.0.4 repository.
I published PhpMyReservation plugin on github. It's ported php script by olejon
Link to download:
Just cleaning, solved async calling
Posted on https://e107.org/ (waiting for approval). Or you can download it from :