Domanda

Utilizzo Silverstripe per visualizzare gli articoli del prodotto e a volte un articolo del prodotto appartiene a due diverse categorie / pagine.È possibile assegnare una pagina a due genitori?In caso contrario è possibile utilizzare un collegamento per l'articolo del prodotto e collegarlo a due diverse categorie / pagine?È qualcosa del genere:

categoria / pagina: colazione

sottopagine: ---------------------- pane

------------------------------------ cereali

categoria / pagina: pranzo

sottopagine: ----------------------- pane

------------------------------------- pasta

È possibile creare una pagina chiamata bread nella sezione admin di Silverstripe ma sarà in due pagine (es. colazione e pranzo).

Se non è possibile assegnare una pagina a due genitori, posso utilizzare un collegamento per il pane di pagina a due pagine (colazione e pranzo)?Come ci vado?Eventuali tutorial o moduli?

Qualsiasi aiuto è apprezzato.

Grazie, Sam :)

È stato utile?

Soluzione

Se ti ho capito bene, vuoi avere pagine con N (1 .. *) genitori. Tuttavia le pagine hanno esattamente un genitore (eccetto la pagina principale). Dai un'occhiata al codice sottostante: tutte le pagine ereditano da sapphire/core/model/SiteTree.php. In $extensions puoi vedere il collegamento a sapphire/core/model/Hierarchy.php dove hai il has_one definito per la pagina genitore. Sebbene tu possa estendere SiteTree, il CMS non è in grado di gestirlo, quindi dovresti anche rielaborare parte del CMS. Non credo che sia quello che vuoi.

Penso che quello che stai cercando siano DataObject come pagine. Dai un'occhiata a http:// www.ssbits.com/tutorials/2010/dataobjects-as-pages-part-1-keeping-it-simple/ che descrive questo. Dovrai aggiungere relazioni many_many e tutto il resto di cui hai bisogno sulle tue "pagine", ma avrai tutta la flessibilità che desideri.

Sentiti libero di pubblicare eventuali domande di follow-up.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top