The Joomla! Forum ™



Forum rules


Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting, this means YOU.
Forum Post Assistant - If you are serious about wanting help, you will use this tool to help you post.



Post new topic Reply to topic  [ 2 posts ] 
Author Message
PostPosted: Tue Feb 28, 2012 4:25 pm 
Joomla! Fledgling
Joomla! Fledgling

Joined: Tue Feb 28, 2012 3:48 pm
Posts: 4
Hello,
I am using 2.5.1 now.
When edit article using TinyMCE from the control panel, insert article link using "Article" button located under text-input-area.
I expect below:
.....theme/topic/person.html
but result now:
.....component/content/article.html?id=30
Global SEFsettings ON ON ON OFF.
Maybe it is caused by missing 'catid=**' in html source url.
It isn't happen at ver. 1.7.3.
Is it problem only for me? Does anyone know the way of fix?
:'(


Top
 Profile  
 
PostPosted: Wed Mar 07, 2012 8:59 am 
Joomla! Fledgling
Joomla! Fledgling

Joined: Tue Feb 28, 2012 3:48 pm
Posts: 4
Finally I found the point of the problem.

When you are going to insert the article link by pushing button "Article" in tinyMCE editor, joomla displays modal-window to select the article.
In ver.250 updated from ver.173, "catid"infomation disappear from the html-source of article link because of changing of core program below.

joomla/administrator/composents/com_content/views/articles/tmpl/modal.php

--- ver.1.7.3 (line 91)
<td>
<a class="pointer" onclick="if (window.parent) window.parent.<?php echo $this->escape($function);?>('<?php echo $item->id; ?>', '<?php echo $this->escape(addslashes($item->title)); ?>', '<?php echo $this->escape($item->catid); ?>');">
<?php echo $this->escape($item->title); ?></a>
</td>
---

--- ver.2.5.2 (line 96)
<td>
<a class="pointer" onclick="if (window.parent) window.parent.<?php echo $this->escape($function);?>('<?php echo $item->id; ?>', '<?php echo $this->escape(addslashes($item->title)); ?>', '<?php echo $this->escape($item->catid); ?>', null, '<?php echo $this->escape(ContentHelperRoute::getArticleRoute($item->id)); ?>');">
<?php echo $this->escape($item->title); ?></a>
</td>
---

Stay default, ContentHelperRoute which is located in "joomla/compenents/com_content/helpers/route.php" doesn't return infomation of " catid=* ". Sometimes it causes 404 not found.

The created article link is displayed at frontend article, as below:
http://localhost/joomla/component/conte ... html?id=26

I fixed the problem by adding ",$item->catid" to the ContenHelperRoute value as below:
--- After change ver.2.5.2 (line 96)
<td>
<a class="pointer" onclick="if (window.parent) window.parent.<?php echo $this->escape($function);?>('<?php echo $item->id; ?>', '<?php echo $this->escape(addslashes($item->title)); ?>', '<?php echo $this->escape($item->catid); ?>', null, '<?php echo $this->escape(ContentHelperRoute::getArticleRoute($item->id,$item->catid)); ?>');">
<?php echo $this->escape($item->title); ?></a>
</td>
---

The created article link is displayed at frontend article, SEO friendly, maybe without "Article" header as below:

http://localhost/joomla/books/forchild/ ... houte.html


If you would like to remove '26-'part, you need to create menu item of the single article.
It is another problem and you can find the topic related this searching the global question thread by the words "remove 'Articles' header".

I hope the core programing team create patch for this problem.
Since I am not good at English and the programing, I have little confidence.

--Maybe related thread
viewtopic.php?f=615&t=663176


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 



Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group