15/11/2012, 00:13:07
mm, ça marche pas pour un fichier source php. J'ai appliqué cette méthode mais c'est toujours le fichier action.dosearch.php du module search qui est appelée, pas celle sous module_custom/Search. Je vais quand même garde le principe pour stocker une copie de mon nouveau fichier ainsi que du fichier correspondant de la version, suffixé par le n° de version cmsms par sécurité.
Cela étant, et pour ceux que ça intéresse, j'ai trouvé un moyen temporaire pour résoudre le problème suivant : lorsque le search trouve des résultats dans un module "cherchable", comment faire pour que, lorsqu'on clique sur le lien de résultat de recherche, la page s'affiche dans la page détail correspondant au module ?
Une modification de "detailpage" dans le formulaire de recherche ne suffit pas, puisqu'on indique une seule et même page détail, qui sera utilisée quel que soit le module.
Soit la config suivante :
le blog a une page de détail spécifique, de même que les news ont la leur.
Il faut donc pouvoir accéder à cette page pour l'indiquer lors de la création du lien de résultat de recherche, dans le fichier action.dosearch.php, dans le bloc qui suit la ligne 296
A étendre pour chaque module susceptible d'accepter le search et possédant un champ pour une page détail par défaut...
Cela étant, et pour ceux que ça intéresse, j'ai trouvé un moyen temporaire pour résoudre le problème suivant : lorsque le search trouve des résultats dans un module "cherchable", comment faire pour que, lorsqu'on clique sur le lien de résultat de recherche, la page s'affiche dans la page détail correspondant au module ?
Une modification de "detailpage" dans le formulaire de recherche ne suffit pas, puisqu'on indique une seule et même page détail, qui sera utilisée quel que soit le module.
Soit la config suivante :
le blog a une page de détail spécifique, de même que les news ont la leur.
Il faut donc pouvoir accéder à cette page pour l'indiquer lors de la création du lien de résultat de recherche, dans le fichier action.dosearch.php, dans le bloc qui suit la ligne 296
Code :
[== PHP ==]
if ($moduleobj != FALSE)
{
// DEB MODIF
// détermination de la page détail suivant le module
if ($modulename == 'CGBlog') {
$thepageid = $moduleobj->GetPreference('default_detailpage');
} elseif ($modulename == 'News') {
$thepageid = $moduleobj->GetPreference('detail_returnid');
}
// FIN MODIF
if (method_exists($moduleobj, 'SearchResultWithParams' ))
A étendre pour chaque module susceptible d'accepter le search et possédant un champ pour une page détail par défaut...