问题
I have developed on simple plugin in Joomla 1.6 I stuck at : How to get article title and article url.
I am getting no output if tried to print below statement:
echo $article->title;
echo $article->id;
I have written this in php file, not used MVC architecture. Is there any other settings need to do in Joomla admin side ?
Please suggest your pointers for extracting article title and article url.
Thanks in advance!
Pravin
回答1:
i tried :
public function onContentPrepare($context,&$article, &$params, $limitstart) {
echo JRequest::getVar('id');
}
Still I am not getting the id. Is this right?
The article is loaded in your second argument ($article
). Being on this event (onContentPrepare
), the only property you can access is $article->text
.
For suiting your purpose (getting the article id and title) you will want to use another event, called "onContentBeforeDisplay
".
public function onContentBeforeDisplay($context, &$article, &$params, $limitstart)
Here you have (again) the article passed through the second argument, but now you have access to properties like $article->id
, $article->title
and many others.
For future references on content events, take a look at the file "plugins\content\example\example.php"
回答2:
In order to get the article ID you have to write the following:
echo JRequest::getVar('id');
For the title, you just take the id you got, load the article object
$blabla = $article->load(ID);
echo $blabla->get('title');
回答3:
It seems JRequest
is deprecated in 2.5 & 3.x as indicated in the Deprecated Elements list.
I would rather use the following:
$article_id = JFactory::getApplication()->input->get('id');
回答4:
You can use for getting active article title like this
$menu =& Jsite::getMenu(); echo $menu->getActive()->title;
may this help.
回答5:
To get Joomla article id use this...
<?php echo JRequest::getVar('Itemid'); ?>
In the previous answer someone used id
instead of Itemid
. Hope this helps!
来源:https://stackoverflow.com/questions/6056886/joomla-plugin-how-to-get-article-title-and-article-id