5

Unfortunately, there wasn't a good answer in getting this to work with Matrix. Everything I tried still resulted in a page load time of 14.6 - 17.2 seconds. I worked with EllisLab all day Friday from like 2-9. We spent the day debugging templates, analyzing output, checking for red flags, etc.. I completely rebuilt the template using the native Grid field ...


5

A stash list is simply a serialized variable. Setting and getting a list is the same process as setting/getting a single variable, except the list has some additional processing to separate out the elements, serialize/unserialize, sort and paginate. In practice if you are not saving the variables with save="yes" then there is little appreciable difference in ...


4

Do you mean that a single entry could have a single entry relating itself to over 2,000 other entries, or just that there are 2,000+ other entries to choose from? If the latter, the answer is Yes, Playa is quite capable of dealing with large numbers of entries. Simply set a Limit on the Playa field to something like 100 entries, and then use the Search bar ...


4

"Template parsing time" is only the time EE spent to render the page, but not the time creating connection to DB, runnning SQL queries, making system calls, etc. Look at the SQL queries panel to see how many time is spent on each query. It should be a good start to understand why a page is slow.


4

There's a boatload of great resources on this topic. Here are a few recommendations to get you started: Install the EE Debug Toolbar http://devot-ee.com/add-ons/ee-debug-toolbar Adam's suggestion of enabling template debugging is a good one. This add-on is a great way to uncover potential issues. Be on the lookout for high query counts and process ...


3

Sounds like a poorly coded template... First, you should aim to refactor it using the multi_add_to_cart_form instead of the simple add_to_cart_form: http://cartthrob.com/docs/tags_detail/multi_add_to_cart_form/index.html This will give you a single form for all 6 products so should reduce CT's load by 6X. You should then look into other optimisations and ...


3

From looking at the CI_Encrypt source code, I noticed that _xor_encrypt is only used when the PHP mcrypt module is not installed. I installed the PHP mcrypt module and added it to php.ini, which seems to have substantially reduced the time required to run this function. Note: I'm still having some slowness due to this module (much less than before), ...


3

For the {exp:stash:get} tag save is only used with dynamic="yes" when retrieving dynamic values from $_POST, $_GET or segment arrays. For your menu it only makes sense to stash the parts of your menu as separate lists if you are re-using those values elsewhere. Otherwise, just wrap the tags that generate the menu with a {exp:stash:set} with the output ...


3

Yes, simple conditionals are parsed in that stage. But also, module and plugin files are "scanned". The first and third party directories are read for the presence of module and plugin files and stored for reference. If you have a lot of add-ons in the 3rd party folder (having them installed is irrelevant here), it might take longer, especially if the server ...


3

Here is what worked. Discussion follows below the code. {exp:playa:children field="static_playa_related_posts" entry_id="{entry_id}" var_prefix="child" limit="8" } <div class="related blurb"> {exp:lg_replace:haystack needles="{child:mtrx_images backspace="1"}image_{row_count}|{/child:mtrx_images}"} <h4><a href="{child:...


3

You didn't provide what the numbers were without Matrix or P&T Field Pack. But it also looks like you're posting the progression data. Generally speaking, calls to extensions and add-ons will jump the memory usage and progress time. But I wouldn't consider that a large jump, by any means. A page using almost nothing can take up 8MB of memory to load. I'...


3

It's rather awkward that hook is being called every time. Low Search uses the hook to update collections when a channel field is deleted; it's the only hook that can be used to for that action. However, the same hook appears to be called for other reasons too, but LS won't take any action there. You can disable LS for that hook only by setting the enabled ...


3

So my experimentation here brought me to Stash. Much more succinct now and gives me everything I need in just 66 queries before caching :) {exp:channel:entries dynamic="no" channel="articles"} {categories} {exp:stash:append_list name="news_{category_id}"} {stash:item_title}{title} - {entry_date {gv_date_short}}{/stash:item_title} {/...


3

Concerning a statement from EllisLab, they posted a blog-entry on 13th April, 2016 telling that EE2 and EE3 are PHP 7-compatible: https://ellislab.com/blog/entry/time-to-upgrade-php


2

You need to be aware sometimes that when using the API, you're going to take a whole lot of potential baggage with you - a lot of that baggage may not be from first party. There are several extension hooks being called when you save an entry. I've been bitten for example by Solspace Tag doing a whole bunch of cleanup/recounts after ANY entry is created or ...


2

status="not closed" will be more efficient. When the Channel module is building its SQL query, it checks to see if there's more than one status being asked for. If it's one status, it uses WHERE status =. If it's more than one status, then it'll use WHERE status IN. = is more efficient than IN.


2

Several things to look at: If you are using EE caching on templates (page or tag), try disabling all caching. EE clears the cache when entries are saves so it's possible there is a hangup with the clearing. Make sure your cache directory is set to 777. Take a look at the Network tab in Firefox to see what you can see. You're looking for any errors or any ...


2

One thing worth looking at is how well the {exp:channel:entries} loop you describes performs in a template with nothing else--no embeds, plugins, etc., vs in the context of the actual page on your site. It's important to be sure that your general template / page architecture isn't putting too heavy a load on EE / your server. In other words, in addition to ...


2

Yeah, you've got a mess on your hands. Try this no add-on method. If it doesn't help you out, notacouch's suggestion to use IfElse should be helpful. {if entry_id == "20" && cf_product_options:total_rows > "0"} <hr class="soften"> <h2>Configuration Options</h2> <table class="table table-striped table-bordered ...


2

Sorry to throw a cat amongst the pigeons but stash is very much a purist approach. Sure there are advantages of it but it takes a multi designed and structured site to a whole new level of complexity. For me and now... Low Variables will do for the performance hit of embeds.


2

Also, look in the debugging and watch for a jump in execution time. You will see pairs of numbers in the brackets that are the execution time and memory, and anything that is really slowing things down will show up as a jump in time. For example: (0.454163 / 21.26MB) Calling Extension Class/Method: Pt_field_pack_ext/channel_entries_tagdata (2.519405 / 21....


2

At least for Favorites, the add-on uses a hook, channel_entries_tagdata, which is a hook present in the EE Channel:Entries module. Any add-on that uses this hook will be called when the EE Channel:Entries module is used. This includes when {exp:channel:entries} is used, but can include other tags where the Channel:Entries library is being used, eg. {exp:...


2

The snippets are not actually "loading" - they are simply bits of text being stored in memory (much like global variables). They aren't actually processed until they're called. So they're not an overhead problem. You'll see these being "loaded" each time you run the template engine - which means the primary template, and then each embed.


2

I just gave it a shot and it looked like the install worked fine, but the control panel loaded up with a bunch of errors. It looked like they could likely have been suppressed by turning off E_NOTICE or changing E_STRICT in error reporting since they didn't look like errors that would stop anything from working.


2

Been running EE3 (3.3.3) with php7, and it runs smooth as a baby's butt. There are a whole lot of problems with add-ons tho I've realised. Solstice TAG throws a nasty error making it impossible to add new entries. DataGrab is not working (Well, the UI is, but no imports are made, and no import-setups can be saved). Don't know about any other add-ons (...


1

The following article suggests that the Codeigniter add_cipher_noise method might fall in the category "don’t come up with your own way to solve a (possible) vulnerability". I doubt this will be fixed. The article suggests using hmac over the IV. I don't know if you could shoehorn in using the PHP internal hash_hmac() function instead of the custom ...


1

Did you try the following: enable / disable Gzip (under Admin -> System Administration -> Output and Debugging Preferences) Are you using AutoMin? If so try to enable / disable "Enable Caching" Does your server has hardware caching, if so. disable software Caching... Some servers only allow caching or other settings be set trough .htaccess


1

I'd guess it's not EE. Check the Network tab in FireBug or whatever browser dev tool you use. Check apache, mysql and php error logs too. Another good test is to reduce the code... Remove all and put pieces back in and test until you isolate the problem code.


1

I have a bunch of ideas for things for you to try to learn more about what's going on, but I wanted to suggest the most obvious, first: Are you up against the memory limits on your EE 2.x server? Is it possible that this page is causing the server to use swap (to disk) rather than processing fully in memory? In the graph you've posted, it looks like the ...


1

If that is really the case I'm surprised any of those conditions are even working. Programmatically speaking those are assignments, not conditions, which in EE templating terms... is neither, unless they let that slide as conditions then that'd be interesting. Once that is fixed, if those conditions are really the issue (even if they aren't!) I would try ...


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