User tests: Successful: Unsuccessful:
While working on #5140, I noticed that we never use the language value of the article when calculating the URL for it. Basically it means that we don't care if an english article is assigned to a french menu item, etc. Long story short: If you want to get the right URL, you need to provide the article ID, the category ID and the language.
Testing instructions: See that Joomla now creates the same and right URLs everywhere. Except for the TOS in the user plugin... Can't fix that one...
This testing instructions actually mean, that this needs a code review rather than a test.
For those looking for numbers: We have 35 files where ContentHelperRoute::getArticleRoute is called. Only in 3 of those files we are using the right language parameter.
Labels |
Added:
?
|
$article. I don't know where that $contact is coming from.
... methink this 3.4.0 will be something interesting ...
Category | ⇒ | SEF |
As @Bakual wrote, the stuff in /components/com_contact/helpers/icon.php most likely should go the other way around... That file most likely is still crap, but maybe its now half correct crap? I honestly would rather delete it and call it a day. That file never worked, so most likely it was never used anywhere...
( ! ) Notice: Undefined property: stdClass::$catid in /Applications/MAMP/htdocs/testwindows/trunkgitnew/plugins/content/pagenavigation/pagenavigation.php on line 190
! ) Notice: Undefined property: stdClass::$language in /Applications/MAMP/htdocs/testwindows/trunkgitnew/plugins/content/pagenavigation/pagenavigation.php on line 190
Folks, this needs extensive testing in mono and multi language.
Should be fixed.
Suggest to also check
<a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid, $item->language)); ?>">
in beez (was catslug)
in fact, no incidence in that case. merging. Thanks.
Milestone |
Added: |
Status | Pending | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2014-12-09 09:26:29 |
BTW: actually we would have to change the methods to make the catid and language non-optional, but that would break backwards compatibility.