Home / Forum / objekt nach url finden

objekt nach url finden

Um Zugang zu den Foren zu erhalten, müssen Sie angemeldet sein

Autor Nachricht

Andreas Adelsberger

Andreas Adelsberger

Registriert seit: 01.06.2006

Beiträge: 23

Mittwoch, 20. September 2006 08:32:12

hi, mit welcher klasse kann ich das objekt anhand eines teils einer url finden?

www.test.com/viruelle_url/virtuelle_url2/

vielen dank!

Thomas Nunninger

Thomas  Nunninger

Registriert seit: 10.01.2006

Beiträge: 52

Mittwoch, 20. September 2006 10:23:08

Hi,

hast du dir mal http://ez.no/doc/ez_publish/techn...modules/content/fetch_functions/node angesehen?

Viele Grüße und einen schönen Tag

Thomas

Andreas Adelsberger

Andreas Adelsberger

Registriert seit: 01.06.2006

Beiträge: 23

Mittwoch, 20. September 2006 11:51:47

hi, ja klar, ich schreibe ne eigene extension und muss in php auf die url zugreifen.
...falls ich nix finde, nehme ich halt ne $_SERVER['PHP_SELF'] und mach nen epxlode nach "/"...ich dachte mir nur, dass es vielleicht schon ne klasse dafür gibt. bin am rumprobieren mit eZUrl und eZUrlAlias. jemand ne idee?

Thomas Nunninger

Thomas  Nunninger

Registriert seit: 10.01.2006

Beiträge: 52

Mittwoch, 20. September 2006 12:15:34

... du suchst die URL zu einem Objekt, nicht umgekehrt. Bzw. vielleicht kann man nicht mal mehr von einem content_objekt sprechen? Schau mal in index.php. Da findet sich folgender Code:

...
$GLOBALS['eZGlobalRequestURI'] = eZSys::serverVariable( 'REQUEST_URI' );

// Initialize basic settings, such as vhless dirs and separators

eZSys::init( 'index.php', $ini->variable( 'SiteAccessSettings', 'ForceVirtualHost' ) == 'true' );

eZSys::initIni( $ini );

eZDebug::addTimingPoint( "Script start" );

include_once( "lib/ezutils/classes/ezuri.php" );

$uri =& eZURI::instance( eZSys::requestURI() );
$GLOBALS['eZRequestedURI'] =& $uri;
include_once( "pre_check.php" );
...


Da sollten doch schon verschiedene Ideen drinstecken.

Wenn du speziell ein weiteres view für das content-Modul schreiben willst, dann schau mal in kernel/classes/view.php, welche $Params dort gesetzt sind.

Viele Grüße und viel Erfolg

Thomas

Andreas Adelsberger

Andreas Adelsberger

Registriert seit: 01.06.2006

Beiträge: 23

Donnerstag, 21. September 2006 07:18:18

dank deiner hilfe hab ich jetzt die $GLOBALS['eZRequestedURI']['OriginalURI'].

der string besteht aus /folder/nochnfolder/nerNode_id, wobei folder und nochn folder aber keine direkten parents von "nerNode_id" sind sonder ne reverseRelatedObject beziehung haben. langer rede kurzer sinn. wie bekomme ich aus den strings "folder" bzw. "nochnfolder" deren node_ids? ich hoffe, ich hab mich jetzt verständlich ausgedrückt

Thomas Nunninger

Thomas  Nunninger

Registriert seit: 10.01.2006

Beiträge: 52

Donnerstag, 21. September 2006 10:30:36

Hi,

probier's mal mit kernel/classes/ezcontentobjecttreenode.php

/*!
     \static
     \return An array with content node objects that is present in the node path \a $nodePath.
     \param $withLastNode If \c true the last node in the path is included in the list.
                          The last node is the node which the path was fetched from.
     \param $asObjects If \c true then return PHP objects, if not return raw row data.
    */
    function fetchNodesByPathString( $nodePath, $withLastNode = false, $asObjects = true )


Viel Erfolg und einen schönen Tag

Thomas

Um Zugang zu den Foren zu erhalten, müssen Sie angemeldet sein