Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 16. Dezember 2011 10:49

dalton
arbeitet mit CMSMS
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re:

Hallo,

die Detailansicht einer Firma in meinem Fall eines Jobs werden mit dieser URL angezeigt: "companies/2/15/Bauingenieur/".
Jetzt wollte ich aber companies durch jobs ersetzen also damit die Pretty Url so aussieht: "jobs/2/15/Bauingenieur/".

Die URL konnte ich schon im "CompanyDirectory.module.php" ändern

public function get_pretty_url($id,$action,$returnid='',$params=array(),$inline=false)
{
  $url = '';
  switch( $action )
    {
    case 'detail': // synonym
    case 'details':
      if( !isset($params['companyid']) ) return;
      if( !cge_tmpdata::exists('companydir_'.(int)$params['companyid']) ) return;
      $rec = cge_tmpdata::get('companydir_'.(int)$params['companyid']);

      if( is_array($rec) && isset($rec['id']) )
        {
          $rec = cge_array::to_object($rec);
        }

      if( !is_object($rec) || !isset($rec->id) || $rec->id != (int)$params['companyid'] ) return;

      if( isset($rec->url) && $rec->url != '' )
        {
          // woot, we have a url.
          $url = $rec->url;
        }
      else
        {
          // old uglier urls
          $url = "jobs/{$rec->id}/$returnid/".munge_string_to_url($rec->company_name);
          if( isset($params['detailtemplate']) )
            {
              $url .= '/d,'.$params['detailtemplate'];
            }
        }
      break;


    default:
      if( isset($params['categoryid']) )
        {
          $url = "jobs/bycategory/".(int)$params['categoryid']."/{$returnid}";
        }
      break;
    }

  return $url;
}

Somit wird auch auf der Webseite z.B. "jobs/2/15/Bauingenieur/" als Detail URL angezeigt.
Nur leider funktioniert der Link jetzt nicht mehr also ich komme auf eine 404 Seite. "Not Found The requested URL was not found on this server."

Sobald ich wieder "companies/2/15/Bauingenieur/" als URL eingebe funktioniert es.

Was muss ich noch ändern damit ich mit "jobs/2/15/Bauingenieur/" auf die Detailseite komme?

Besten Dank für eure Hilfe.

Offline

#2 16. Dezember 2011 12:47

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.741
Webseite

Re:

Hmm, mich wundert, dass man nicht jede beliebige URL einstellen kann, da CompanyDirectory ein Fork des News-Moduls ist  roll ... scheinbar hat man diese Option (noch) nicht übernommen.


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#3 19. Dezember 2011 09:58

dalton
arbeitet mit CMSMS
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re:

Ja leider trotzdem muest ich das rausbekommen, keiner ne Idee was ich da noch ändern muss?

Offline

#4 19. Dezember 2011 10:16

nockenfell
Moderator
Ort: Lenzburg, Schweiz
Registriert: 09. November 2010
Beiträge: 2.807
Webseite

Re:

Schau dir mal die Datei CompanyDirectory.module.php an. Auf Zeile 229ff werden die Routen registriert. Wenn du hier [cC]ompanies durch [jJ]obs ersetzt, könnte es funktionieren.

$this->RegisterRoute('/[jJ]obs\/(?P<companyid>[0-9]+)$/');

Beitrag geändert von nockenfell (19. Dezember 2011 10:17)


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox, Revisions

Offline

#5 19. Dezember 2011 11:34

dalton
arbeitet mit CMSMS
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re:

Ahhh super geil Danke viel mal funktioniert mit dieser änderung smile.

Offline

Fußzeile des Forums

Powered by FluxBB