J'ai eu un code qui fonctionne pour le composant addsmanager mais ils font quelques changements et maintenant ne fonctionnent plus. ancien code est ceProblèmes de routeur Joomla
function getAdsmanagerRouteContent($id)
{
$db =JFactory::getDBO();
$sql = "SELECT category,ad_manufacturers,ad_modelauto,ad_jetmodels,ad_model FROM #__adsmanager_ads WHERE id = ".(int)$id;
$db->setQuery($sql);
$result = $db->loadObject();
$url = TText::_($result->ad_manufacturers);
if ($result->ad_modelauto != "") {
$url .= "-".TText::_($result->ad_modelauto);
}
if ($result->ad_jetmodels != "") {
$url .= "-".TText::_($result->ad_jetmodels);
}
if ($result->ad_model != "") {
$url .= "-".TText::_($result->ad_model);
}
$url = TTools::stringURLSafe($url);
$url = JString::substr($url ,0,30);
return $url ;
}
Ils ont ce code maintenant
function getAdsmanagerRouteContent($id)
{
$db =JFactory::getDBO();
$sql = "SELECT ad_headline FROM #__adsmanager_ads WHERE id = ".(int)$id;
$db->setQuery($sql);
$result = $db->loadResult();
$result= TTools::stringURLSafe($result);
$result = JString::substr($result,0,30);
return $result;
}
Wich je l'ai modifié comme celui-ci
function getAdsmanagerRouteModel($id)
{
$db =JFactory::getDBO();
$sql = "SELECT ad_model,ad_motomodel FROM #__adsmanager_ads WHERE id = ".(int)$id;
$db->setQuery($sql);
$result = $db->loadResult();
if ($result->ad_model != "") {
$result .= "-".TText::_($result->ad_model);
}
if ($result->ad_motomodel != "") {
$result .= "-".TText::_($result->ad_motomodel);
}
$result= TTools::stringURLSafe($result);
$result = JString::substr($result,0,30);
return $result;
}
Le ad_model est chargé, mais si au lieu ad_model est ad_motomodel ce ISN t chargé. Est-ce un moyen de faire fonctionner ce code? Je ne suis pas si bon à PHP.
Je l'assortit mais ne work.Is le premier exemple. –