Search

Basically my major stumbling block with Symphony at this point is lack of filtering support for dynamic data sources. There is a nice Parametrisator extension but it only deals with output params. Why isn't there any support for input parameters (filtering) for dynamic data sources? Are there any extensions that deal with that?

There is, in a way — the XPath you specify when configuring the data source. This is a way to filter out elements you don't want. As far as I know there are no extensions to achieve this, but am I right in saying you are looking for a way to dynamically express this XPath query?

Could you perhaps provide one or two specific examples of when you'd need this?

Most likely, what I want requires some code modification in the portion of code from datasource.dynamic_xml.php (or Grab function). I want that the dynamic data source would be called for as many times as we have entries in the primary data source (based on a section). Let's say there are three entries in the primary data source DS1 (say data1, data2 and data3) the dynamic source DS2 based on URL=site.com/param=data would be called three times, returning XML for data1, data2, then data3 and all the results would be combined in one XML tree. As an example, if you have say Author-id in the DS1 and you have a DS2 based on a dynamic link site.com/?get-author=id. You want to build a page where all the authors will be presented with all their information. Currently, if I specify Author-id to be an output param for DS1 (which will create $ds-ds1), now if in DS2 i put a URL like site.com/?get-author={$ds-ds1} that will expand into site.com/?get-author=data1,data2,data3 when the DS2 gets to be executed. So instead of being called 3 times it's called once with a wrong parameter.

I guess we can't call it filtering, since filtering presumes that we reduce the output data. In this case we "multiply" the amount of output data in our dynamic xml source. So far I can't find any provision for that kind of data massaging in the current framework.

Nick, could you tell how to "dynamically express this XPath query"

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details