Je voudrais insérer un article dans mon composant, est-ce que quelqu'un a un exemple sur la façon de faire cela?Joomla insérer l'article dans le composant
L'article serait sélectionné à partir du backend.
Je voudrais insérer un article dans mon composant, est-ce que quelqu'un a un exemple sur la façon de faire cela?Joomla insérer l'article dans le composant
L'article serait sélectionné à partir du backend.
Dans le Back-End, vous sélectionnez l'article, l'ID de l'article sera stocké dans une base de données dans les paramètres de composant (config.xml
) ou dans un tableau de paramètres de composants personnalisés.
En vous composant personnalisé
#__content
table Numéro d'articlePar exemple
//
// Function for your model
//
/**
*
* @return object
*
* Object will have following structure
*
* Field Type
* ----------------------------------
* id "int(11) unsigned"
* title varchar(255)
* alias varchar(255)
* title_alias varchar(255)
* introtext mediumtext
* fulltext mediumtext
* state tinyint(3)
* sectionid "int(11) unsigned"
* mask "int(11) unsigned"
* catid "int(11) unsigned"
* created datetime
* created_by "int(11) unsigned"
* created_by_alias varchar(255)
* modified datetime
* modified_by "int(11) unsigned"
* checked_out "int(11) unsigned"
* checked_out_time datetime
* publish_up datetime
* publish_down datetime
* images text
* urls text
* attribs text
* version "int(11) unsigned"
* parentid "int(11) unsigned"
* ordering int(11)
* metakey text
* metadesc text
* access "int(11) unsigned"
* hits "int(11) unsigned"
* metadata text
*/
public function getMyArticle() {
// Get Component parameters (config.xml)
$params = JComponentHelper::getParams('com_mycomponent');
// Get Specific parameter
$myArticleId = (int) $params->get('articleId', 0);
// Make sure parameter is set and is greater than zero
if ($myArticleId > 0) {
// Build Query
$query = "SELECT * FROM #__content WHERE id = $myArticleId";
// Load query into an object
$db = JFactory::getDBO();
$db->setQuery($query);
return $db->loadObject();
}
//
return null;
}
Pour faire pop-up sélectionnez dans l'arrière, modifier config.xml
de votre composant
ajouter addpath
aux <params>
éléments
<!-- Add the path to content elements -->
<params addpath="/administrator/components/com_content/elements">
<!-- Add Select Article param -->
<param name="articleId" type="article" default="0" label="Select Article" description="" />
Vous devez également ajouter le bouton config
à la barre d'outils de la composante Vue par défaut
// Add this code in the display() method of the view
// @todo change com_mycomponent to your component's name
JToolBarHelper::preferences('com_mycomponent')
Merci! :) cela fonctionne mais va un peu plus loin comment faire popup sélectionner une forme pour choisir l'article dans le backend? – miojamo
voir 2ème partie de la réponse – Alex
C'est un bon exemple mais je voudrais l'avoir sur la même page de paramètres n'utilisant pas de paramètres et de préférences. Juste une forme simple avec le bouton – miojamo