Hot answers tagged

4

Simply put, if you value your time even a little bit, I would use DataGrab rather than rolling your own import / export routines. Datagrab is simple and it works. The 'updating existing entries' option in datagrab works OK - but is not perfect: it depends on your data quality and which field you set as the reference etc. As ever with these sorts of things,...


3

You're essentially using the embed as a snippet, so you could do this: {!-- viewmodels/categories.html - include the code but don't parse --} {stash:embed:viewmodels:categories process="start" parse="no"} <category_sport_name_ms> {exp:stash:get_list name="export_categories" match="#^sport$#" against="type"} <str><![CDATA[{name}]]></str&...


3

Looks like you have working code to generate XML for multiple orders, and generating XML for a single order is easy by just including the order_hash or order_id parameter. The only problem then is how to move these files into an FTP directory for your CRM. To do this you could either set up a nightly script to check for new orders and save their XML to a ...


3

You could have an admin-only page where you list orders using store:orders, and have each link to the order detail via its order_hash. {exp:store:orders} {if count == "1"}<ul>{/if} <li><a href="{path="orders/view/{order_hash}">Order #{order_id}</a></li> {if count == total_results}</ul>{/if} {/exp:store:orders} Then ...


2

DataGrab is the gold standard and was built for this. You can import XML at regularly scheduled intervals using Cron or via HTTP. Otherwise you'll have to build a custom add-on.


2

Ok so this has been resolved now. With credit to @Michael Boyink who suggested the following; I had been creating the templates using FTP. However when the templates were created in the Control Panel Template Manager using XML as a template type, the XML gets populated with channel data, just as I had hoped. Relief!!, this one could have stumped me for ...


2

If you want just the child elements of latest_price, you need to set it as the root of the loop. {exp:ajw_feedparser url="feed name" cache_refresh="10" limit="8" debug="true" itempath="/quote_feed/latest_price" } <p>{mid_price}</p> {/exp:ajw_feedparser}


2

Can’t see any problem off hand, but I’d try some of this: According to the docs, the backspace parameter counts as four characters, so change the backspace value to 4. Removing the <br> Removing the backspace parameter Ensure that category group is indeed assigned to the ‘trips’ channel Try putting group 6 after group 7 and see if the same thing ...


2

Ok so this was ridiculous easy to fix. What we did was move the XML from it's static file and inserted it into its own template within our active template group and it worked. So if you're having this problem just template the XML and go nuts. All we had to change in our JS here was var url = "OUR URL"; to var url = "{path='<our template group>/&...


1

EE lets you assign arbitrary field names to your content - so there is no 'default' field name for this. EE uses standard field names for some meta-data (e.g. {entry_id} is always the index number for an entry etc.), but not for content. The use of standard field names probably explains why your script works at all, but without modifying it to reflect ...


1

The ExpressionEngine framework probably doesn't have a pointer reference to the namespace variable $EE in whatever script you're executing... to be honest, I'm guessing you copied a script example from somewhere on the net. Globally, ExpressionEngine is instantiated as a class at ee(). Even in (later versions, 2.5.5 and up I believe) ExpressionEngine 2.x, ...


1

It is in general not a great idea to use PHP straight in the template, but that's a story for another day. It would be best to use Expresso Store's developer hooks like the "store_order_complete_end" hook to create and process the XML file on success. Going with your example: Check the string you are building up in particular at the tag. ".$instruction."{...


1

All pages are generated by templates. Take a look at the templates section of control panel.


1

I think it's to do with the {DATE_ATOM} variable including the seconds which I think gets updated when editing an entry thereby triggering it to be displayed again. If you use {gmt_date format="%Y-%m-%dT%H:%i%Q"} (which I use in my RSS templates) or possibly {entry_date format="%Y-%m-%dT%H:%i%Q"} if gmt_date isn't available for ATOM instead I think you ...


1

At a quick guess, I'd try the following (backup and do it all on local ideally) Change the formatting on those original fields from xhtml to 'none'. On your target install, also set the field formatting from xhtml to 'none'. After your import, update the fields to be xhtml formatted. It's not going to help your titles though, titles are put through a ...


1

As of this writing, Importer does not read XML node attributes, such as lang="es" for example. Therefore, Importer will read only the first node of a series of nodes named exactly the same, <description> in this case. I recommend submitting this as a Feature Request under the specific add-on category. It'll also give other users the option to vote up ...


Only top voted, non community-wiki answers of a minimum length are eligible