One bug that I wouldn’t mind having fixed is the fact that aliases can’t be case sensitive. Ran into a problem with this while dealing with Google’s Site Maps. Here’s what I believe to be a fix for this:
Open save_content.processor.php
Around line 605:
function stripAlias($alias) {
$alias = strip_tags($alias);
$alias = strtolower($alias);
$alias = preg_replace('/&.+?;/', '', $alias); // kill entities
$alias = preg_replace('/[^\.%a-z0-9 _-]/', '', $alias);
$alias = preg_replace('/\s+/', '-', $alias);
$alias = preg_replace('|-+|', '-', $alias);
$alias = trim($alias, '-');
return $alias;
}
Change to:
function stripAlias($alias) {
$alias = strip_tags($alias);
$alias = preg_replace('/&.+?;/', '', $alias); // kill entities
$alias = preg_replace('/[^\.%A-Za-z0-9 _-]/', '', $alias);
$alias = preg_replace('/\s+/', '-', $alias);
$alias = preg_replace('|-+|', '-', $alias);
$alias = trim($alias, '-');
return $alias;
}
Since I removed the strtolower line from the stripAlias function, one of the regular expressions needed to be changed to allow for upper-case letters. By default, a search for a specific string value is case insensitive with MySQL. This is good because if a user enters ’TestPage’ then a search would it would return a result even if the value ’testPage’ or ’testpage’ exists. I tested this and it works like a charm. I’ll be testing this just to make sure.