Dinimiciúil leathanaigh a chur le coimeádán Zend_Navigation ag runtime

De réir Watkin Lloyd Steven , Déardaoin 7 Eanáir, 2010 22:50

I leanúint ar mo phost seo caite faoi Zend_Navigation, iarrataí Bealach ar sitemap.xml le rialtóir saincheaptha / gníomh an bpost seo, tá thart ar chur dymnamically leathanaigh le coimeádán Zend_Navigation ag / script runtime fhorghníomhú.

A fad go maith agus go maith ina sonrófar na leathanaigh i do i INIxml comhad ach ag pointe éigin go bhfuil tú ag dul a bheith ag athrú leathanaigh i do shuíomh gur mian leat mar chuid de, léarscáil an tSuímh menu, nó a bheith san áireamh i do Cosán an tSuímh. Dá bhrí sin, an méid is gá dúinn a dhéanamh ná leathanaigh a chur ar ár coimeádán Zend_Navigation ag runtime. Ba mhaith samplaí seo a chur i chur míreanna nuachta, blog post, nó tuairimí leathanach, etc

Sa sampla seo, tá mé ag dul go dtí roinnt poist nuachta a chur le mo INI statically sainithe config. Chun a fháil ar mo leathanach bhfoirmíochtaí nuacht phost mé úsáid d'aicme a tuairisceáin eagar san fhormáid seo a leanas:

  $ PagesToAdd = eagar (
   0 =>
     eagar (
       'Lipéad' scéal => 'nuacht Falsa # 5 ...',
       'Modúl' => 'www',
       'Bealach' => 'www-innéacs',
       'Ghníomhaíocht' 'amharc' =>,
       'Rialtóir' 'Nuacht' =>,
       'Paraiméadair' => eagar (
           'Id' => "5-Falsa-nuacht-scéal - 5 ')
     ),
   1 =>
     eagar (/ * leathanach níos sonraí * /),
  ); 

Mar beidh tú faoi deara go bhfuil an fheidhm ar ais le sraith ina bhfuil le fáil arrays a chur suas ar an cumraíochta arrays do Zend_Navigation_Page_Mvc. Dá bhrí sin, is féidir ag looping thar an leathanaigh eagar Zend_Navigation nua a chruthú as an eagar cumraíochta. An chéad rud eile a dhéanamh mar chuid de na lúibe a chur leis an leathanaigh sa suíomh ceart (mar mhalairt féidir leathanaigh seo a leanas ar an mórchóir trí úsáid a bhaint as - addPages> () modh).

Chun seo a dhéanamh, a aimsiú ar an leathanach mian leat a chur leis an bhfo-leathanaigh, agus go simplí ar na leathanaigh seo a chur leis. Sa chás seo tá mé an cód a úsáidtear chun teacht ar mo leathanach seo a leanas:

  $ Coimeádán-> findOneBy ('lipéad', 'An Nuacht is Déanaí') -> addPage ($ leathanach seo); 

Mo initialisation nascleanúint tríd is tríd sna bootstrap Breathnaíonn dá bhrí sin, mar seo:

  / **
      * A úsáidtear le haghaidh láimhseáil barrleibhéil navigation
      *
      Zend_Navigation * ais @
      * /
     _initNavigation feidhm chosanta ()
     {
         $ Seo>-bootstrap ('leagan');
         $ Leagan amach = $ seo getResource-> ('leagan');
         $ Dearcadh = $ getView Leagan amach an-> ();
         $ Cumraíochta = Zend_Config_Ini nua (
             APPLICATION_PATH.  '/ Configs / navigation.ini', APPLICATION_ENV);

         $ Coimeádán = Zend_Navigation nua ($ default cumraíochta->);
         / / Add Anois deireanach ar an 25 tuairiscí nuachta
         $ Nuacht = Nuacht nua ();
         $ Leathanaigh = $ getNavigationEntries nuacht-> ();
         foreach ($ leathanaigh MAR $ leathanach seo) {
        	 $ Page = Zend_Navigation_Page_Mvc nua ($ leathanach seo);
        	 $ Coimeádán-> findOneBy ('lipéad', 'An Nuacht is Déanaí') -> addPage ($ leathanach seo);
         }
         $ Amharc-> nascleanúint ($ coimeádán);
     } 

rud a chaithfear a chur leis go bhfuil ar de chineál éigin caching (ag baint úsáide as Zend_Cache dócha;)) ar shlí eile é seo ag dul a bheith costasach go leor le gach ualach leathanach.

Freagra amháin do "chur dinimiciúil leathanaigh le coimeádán Zend_Navigation ag runtime"

  1. An tUasal Man deir:

    Sin díreach cad a bhí mé ag lorg - go raibh maith agat as sampla soiléir i ndáiríre. Gártha. G

Leave a Reply













Lánléargas Téama Themocracy

5 cuairteoirí ar líne anois
4 aíonna, 1 bots, 0 baill
Tá 14 ag 07:34 UTC: Max cuairteoirí an lae inniu
An mhí seo: 26 ag 2011/07/05 12:35 UTC
I mbliana: 130 ag 28-03-2011 22:40 UTC
Gach uair: 130 ag 28-03-2011 22:40 UTC