Search Engine Friendly URLs
As there doesn't seem to be any doc pages on this i'll add notes here about where the code is at the moment, much of this could do with some refactoring and improvements, but this is how things stand as of Tiki 17.x
There is also this page Search engine optimization which seems to contain notes also about SEFURLs, not SEO (TODO tidy up)
In Principle
The rules for Tiki's SEFURL system currently exist in two places (bad), one is in the database table called tiki_sefurl_regex_out which processes "raw" non-|SEFURL links (such as tiki-index.php?page=FooBar and makes that just FooBar or tiki-view_tracker_item.php?itemId=42 and makes that item42)
These rules are then sort of duplicated in route.php which takes an inout path of item42 and steers that to tiki-view_tracker_item.php with $_GET'itemId' = 42.
Administration
There is a "master" preference feature_sefurl and it has it's own control panel admin/include_sefurl.php and corresponding tpl file.
Page Slugs
In Tiki 13 (?) wiki pages got specifiable page slugs and new Wiki URL Schemes (pref "wiki_url_scheme") and can be set to urlencode (Tiki Classic), underscore or dash which became the default in Tiki 17.0.
Code Locations
-
tiki-sefurl.php
This file (should be a library in lib somewhere, but isn't) contains the function filter_out_sefurl which takes a raw URL and converts it to a SEFURL using the tiki_sefurl_regex_out table and some extra code for unusual cases.
-
route.php
As stated above, this converts a short URL back to the script name and input parameters. It used to all happen in the .htaccess file but this was converted to PHP for better portability.
-
lib/smarty_tiki/modifier.sefurl.php
This is the most widely used Smarty modifier that converts an object "reference" into either a SEFURL of unfriendly one if the feature is disabled.
-
lib/smarty_tiki/function.sefurl.php
Annoyingly used in the Structures header only, needs to be refactored and removed (one day)
-
lib/core/Tiki/Wiki/SlugManager.php
Plus the generators in lib/core/Tiki/Wiki/SlugManager handle the wiki page slugs dependent on pref wiki_url_scheme.
-
lib/smarty_tiki/function.object_link.php
Related Smarty function for generating links to objects of most kinds. Uses smarty_modifier_sefurl internally.
Open
[-]
Pending
[+]Closed
[+]Related
Alias names for this page:
SEF URLs | SEFURLs | SEF URL | SEFURL | sefurl | sefurls | Search Engine Friendly URLS | Search Engine Friendly | SEF