PHPでXMLを生成し、XSLTに変数を渡して、1枚のXMLファイルで複数の情報の見せ方をする。というのをやってみたいと思います。
基本設計は以下のとおりです。

すべて一枚のファイルから生成されるので、実際には空間的階層構造というのは存在しませんが、概念的には以下のようになります。

利点としてはすべてのリソースの一元管理です。データベースでやれば? みたいなはなしは無視します。XMLでやりたいからです。
SEOに不利になるおそれもありますが、コンテンツが増えれば、ルートとなるXMLファイルをトレースし、各ページ毎にXMLを生成すればよいかと。
XMLの設計は以下の様になります
<global>
<variable-xsl></variable-xsl>
<category-num-array></category-num-array>
<variable-node-array></variable-node-array>
<keywords>
<keyword></keyword>
<keyword></keyword>
<keyword></keyword>
</keywords>
<category id=“”>
<title<家具</title>
<unit>
<product-name></product-name>
<size></size>
<maker></maker>
<name></name>
<read></read>
<description></description>
<price></price>
<rating></rating>
<images>
<image></image>
<image></image>
<image></image>
</images>
<amazon-link>
<![CDATA[]]>
</amazon-link>
</unit>
</category>
</global>
variable-xslはxslのパスを指定する変数です。category-num-arrayはカテゴリを指定する変数です。variable-node-arrayはアクセスするノードの配列を指定する変数です。
変数はGETで受け取ったものを、PHPで書き出し、
url?xslpath=Path&category=num&array=num
といった形になります。
PHPで書き出したXMLのノードバリューを受け取ってxsl:variableへセットします。
セットしたxsl:variableをXPathとXSLTのパスへセットします。

実践的なテクニックが詰まった、豊富なサンプル群を機能別に分類、網羅したリファレンスです。即効性の高いテクニックと知識がすぐに引けます。もちろんサンプルはダウンロードで入手可能です。XSLT、DTD、DOM、XPathのリファレンスなど掲載されています。