About Stacks Guru

Stacks Guru is born from the need to search the vast number of videos out there on stacks built for Stacks Pro and the Stacks 5 plugin for Rapidweaver.

We have scraped over 500 videos to get the transcripts for each in order to make the spoken word searchable.

Please use this free tool to help you learn and discover the awesome power that Stacks and the stacks made for Stacks have to offer.

Stacks Guru

Video Reference

Total CMS 3 Beta 7 Overview thumbnail

Total CMS 3 Beta 7 Overview

08/16/2024
his video reviews the new features that were shipped in Total CMS 3 Beta 7.

Transcript

00:09 hey guys so in this video I just wanted
00:10 to quickly uh ship an video about all
00:14 the various updates that are coming into
00:17 total CMS beta 7 okay um I'm not going
00:20 to dive into some of all the the code
00:22 there are some new macros check those
00:23 out in the release notes uh but here
00:26 we're just going to look at some of the
00:27 new stuff available in the dashboard
00:30 so first you notice that the homepage is
00:33 kind of redone it has a little bit more
00:34 content now we have the video for beta
60:38 this particular video will actually be
00:40 also on this page um when I ship this
00:44 okay um and you'll notice that a lot of
00:46 the pages now have a little bit more
00:47 content um just to give us a little bit
00:50 more um you know stuff some of the icons
00:53 have been updated as
00:55 well um and now in the utilities
00:58 actually some of these utilities these
01:00 actually work um so first off we have
01:03 the project setup and what this is
01:06 useful for is let's say if you're
01:08 launching a new project and um if you do
01:11 have a new project um this collections
01:13 view will actually be empty by default
01:16 and so what this project setup will do
01:19 is when you click on default setup you
01:21 can click on that and what it will do is
01:23 it will actually create all of the
01:25 default collections for you
01:27 automatically um it doesn't create any
01:29 objects in there but at least creates
01:30 all of the collections for you um so
01:33 that's a nice little automation uh next
01:35 is we have the cash cleaner this is if
01:38 um in production if you on after you
01:41 publish and everything is online um some
01:44 of the content some of the twig uh the
01:46 content that's generated by total CMS
01:48 does get cashed for performance so if
01:50 you ever see that you're not seeing the
01:52 data that you would think um there
01:54 probably going to be in some rare cases
01:56 um especially because if you publish uh
01:59 do a republish all the Clash will the
02:01 cach will always be cleared when you do
02:03 a republish all but this button allows
02:05 you to uh just click on that and it will
02:08 quickly clear all of the server cache uh
02:10 for total
02:12 CMS next is if we skip all the way down
02:14 to server Checker um this is a nice
02:17 little um info about your server has
02:19 some things about uh the operating
02:21 system and the your some of your
02:24 configuration about your web server it
02:25 does some checks to make sure that you
02:27 know permissions and the required
02:29 software install
02:30 some optional software and then some
02:32 configuration values within total CS so
02:34 this a great little information and um
02:38 if any of these are have errors uh you
02:41 might have some issues with parts of the
02:43 CMS um and it will actually display the
02:45 error here as
02:47 well next up is the log analyzer and
02:51 this is a really cool utility for
02:53 analyzing your CMS logs okay so here
02:56 we'll notice that uh you'll have a list
02:59 of all your your logs uh you can click
03:01 on that and it will show you all of the
03:03 errors so this particular error in this
03:05 log has happened six times um and then
03:08 this is the actual raw log file um and
03:11 yeah you might have more depending on it
03:13 creates a log per day um it does store
03:17 up to 30 log files um before it starts
03:21 deleting those so yeah uh and every time
03:24 you just click on the log it
03:26 automatically shows up here and all this
03:28 data will get refreshed so you can see
03:30 exactly what's going on in the CMS uh
03:32 next thing is if we go into the
03:34 collections view you can actually add a
03:36 new collection now there was broken in
03:39 beta 6 um beta 6 had the ability to
03:41 create custom Collections and custom
03:43 schemas but I broke the new collection
03:45 form so um yeah that kind of killed the
03:49 the glory on that feature update but now
03:51 it's available so uh we can now add new
03:53 collections as well as um new schemas
03:56 right so you can go ahead and add your
03:57 own custom schemas as well as your
04:00 custom
04:01 collections excellent um if you go into
04:05 a uh collection now you'll notice that
04:08 there is a new utility called rebuild
04:11 index and what this does is if you click
04:14 on it what it does is it will actually
04:16 completely delete the in the existing
04:18 index for a Blog and create a completely
04:21 fresh one why would you want to do this
04:23 well um if you are adding new fields to
04:26 a collection or a schema or you are
04:29 Maybe be um editing it so that uh a new
04:32 field is a part of the index or you
04:34 remove fields from the index um this
04:37 feature just gives us the ability to
04:38 manually regenerate that um without
04:41 having to actually go in and modify any
04:43 objects or anything like that so it's
04:44 just a quick little utility um to
04:46 rebuild this
04:48 index lastly inside of the um
04:52 schemas uh this is kind of a nicity if
04:55 we go into a custom schema
04:57 here and if you know uh for each field
05:00 we can define something called a factory
05:02 and before we had to actually kind of
05:04 know what to type in here right um it is
05:07 documented um but now I have this nice
05:10 little um you know tool tip that gives
05:12 us a little bit of help so I want to do
05:15 like um you know image I can see all the
05:18 various options for images right and
05:20 then I can go here and then I can modify
05:22 the parameters in here right so really
05:25 cool little um little utility here um
05:27 that's been added to the factory and
05:30 again this is for um when you're
05:32 creating or editing your schemas um it
05:34 just makes it a lot nicer to um kind of
05:38 have an idea of what you can do here
05:40 versus having to always look at the
05:43 documentation now um while we're in this
05:45 interface I want to talk about a
05:47 breaking change that occurred um if we
05:50 look at the uh the new out of thebox uh
05:54 schema for blog um it has been modified
05:57 you'll notice that there are several
05:58 fields that have been removed extra
06:00 content extra content 2 um archive and
06:06 labels another uh thing that has
06:09 happened is the gallery has been removed
06:11 from the index okay now the reason for
06:14 this is that um those fields came from
06:16 Total cms1 and I just felt like they
06:19 were too much they I added them because
06:22 we wanted to abuse blog in total cms1 um
06:25 but now that we have the ability to have
06:27 custom collections um we need to pair
06:29 the blog schema down a little bit now I
06:32 don't want to break backwards
06:34 compatibility so um we do have the
06:37 ability to actually um change this okay
06:41 now you can to change it there is a a
06:44 new schema called blog Le Legacy that
06:46 you cannot see here but it does exist
06:49 and if let's see if we go to my blog
06:52 collection here okay um one thing you'll
06:55 notice is the gallery field does not
06:58 exist here um also so I think archived
07:00 doesn't exist right and those are a part
07:04 of the index in in the old version and
07:07 if I go ahead and edit my this blog
07:09 collection you'll see that it is set to
07:11 this schema of blog now if you have an
07:14 existing
07:15 blog and um those and you utilizing
07:20 those fields here's the fix okay so
07:23 you're going to edit the collection like
07:24 I've done here and what you're going to
07:26 do is you're going to delete this
07:27 collection don't be scared
07:30 um this isn't going to delete all of
07:32 your data it's just going to delete the
07:33 collection metadata okay so what we're
07:36 going to do is we're going to say okay
07:37 we're going to delete this so my blog
07:40 collection is gone right but don't worry
07:42 uh what we can do now is we're going to
07:44 click um new
07:46 collection and then what I'm going to do
07:49 is I'm going to um give it a name so I'm
07:51 going to give it blog make sure that the
07:53 ID is the same exact ID that it was
07:57 before um then in the select schema what
08:00 we're going to do is we're going to
08:01 select blog
08:04 Legacy uh and then type in your
08:06 description hopefully you also make sure
08:08 you save the URL um that you had in
08:11 there before and uh in this particular
08:14 project I didn't actually have a URL set
08:16 but if you have one make sure you copy
08:18 so you can paste that in here and then
08:20 let's click
08:22 save excellent we have our blog uh
08:26 collection again and it is set to the
08:28 Legacy scha now let's go back into that
08:31 blog what you notice is now we now have
08:34 access to the gallery and all the older
08:36 fields that were removed
08:40 previously okay so here we are in stacks
08:43 and this beta 7 has two huge updates um
08:48 for the stacks uh
08:50 ecosystem and the first one is um by
08:54 popular demand a feature that um I know
08:57 a lot of you have been waiting for is
08:59 actually filtering and sorting inside of
09:03 a loop okay so for example here um I
09:07 have an example in
09:09 here uh you'll notice that I've modified
09:12 the demo project to
09:14 contain um some more Fields so we have a
09:18 start if something is featured we also I
09:20 also added tags into here okay um and if
09:24 you notice these actually are sorted by
09:26 featured and date okay um and there's
09:29 also some filtering going on as well now
09:31 when you open up your
09:34 existing um Stacks projects you will
09:36 notice an issue with the loop
09:39 Stacks um by default the filter and the
09:41 sort will be turned off and you will not
09:44 see your content here okay um so what
09:48 you need to do is you will need to turn
09:50 on the filter stack and um instead of
09:54 this Loop filter being here you'll
09:55 actually see your old content what
09:57 you're going to do is you're going to
09:58 take that old content and drag it into
10:00 the Drop Zone that's down here now I
10:02 should have recorded this uh before this
10:04 happened okay but um yeah essentially
10:06 you're going to see your block grid
10:08 content or whatever you have up in here
10:10 you're just going to take that and drag
10:12 it into the Drop Zone area that's down
10:14 here okay and at that point if you want
10:16 to add new filters you just go ahead and
10:18 click on the plus button and you can add
10:19 as many filters as you want okay now
10:22 let's uh review these new uh filter and
10:25 sorting settings so inside blog or or
10:28 The Loop blog um let's turn on both
10:30 filter and sorting and as you saw you
10:32 can add as many of these as you like
10:35 okay and um let's have a look now this
10:37 is very similar to the feeds sorting and
10:40 filtering um it takes it to another
10:43 level a little bit though so for each
10:46 filter you can have as again as many
10:48 filters as you want and let's say here I
10:51 have uh property tags um and then we
10:54 have contains we have all kinds of stuff
10:56 in here okay um that we can then do um
11:00 Logic on right so for example let's say
11:03 I wanted to do um featured okay and I'm
11:07 going to do
11:08 featured is
11:10 true okay and let's turn off that so if
11:13 I do featured is true and let's preview
11:16 this page what it will do is it's only
11:18 going to show us the featured posts it's
11:21 all the posts With The Star by the way I
11:23 added a star in here so that's a a nice
11:26 little thing where uh we can do a static
11:28 filter
11:29 okay now um before I added this one um
11:33 let's look at what I had in there
11:35 before and what this does is this gives
11:38 us another option if you notice we have
11:40 filter by URL in turn turned on and you
11:43 also give it a filter by URL
11:45 key um so what this allows us to do it
11:47 allows us to um filter B based on a URL
11:52 now if I were to have have something in
11:55 the value that would be a default filter
11:57 without anything passed to the URL L if
12:00 you leave the value blank this means
12:02 that only filtering via the URL is
12:05 supported for this filter so by default
12:07 it's not going to have any filters it'll
12:09 display everything um but then it allows
12:12 me to add a tag um key to the URL so
12:16 that I can then filter let's have a look
12:18 at
12:19 that so here we are let's look at um we
12:23 can do something uh called here let's do
12:26 this one so I'm going to copy that tag
12:29 and basically what I'm going to do here
12:30 is I'm just going to do question mark
12:32 tag equals and I use Tag because that's
12:35 the uh what I set inside the URL key you
12:38 can put it whatever you like in
12:40 there um and I'm just going to paste
12:42 that in now if I hit enter what this
12:45 does is it it's now filtered there's
12:47 only one stack that has that right but
12:50 um actually let's change it up a little
12:51 bit um let's go ahead and do anything
12:54 that has
12:56 ET okay now um if you look um you'll
13:01 notice that this tag has ET this has ET
13:04 but this one also has ET but it's at the
13:06 end right so uh if we were to look at
13:09 the stacks
13:13 again what you'll see is that the
13:15 condition here is
13:17 contains so uh because this tag contains
13:22 ET then um it is displayed so if we
13:26 wanted it to be an exact match we could
13:28 then say condition is equal
13:32 to now let's preview
13:35 this let's refresh this
13:38 now and now um if we look I still have
13:41 the tag equals ET but this time because
13:44 I change my logic to be equal to instead
13:47 of just contains it only shows me the
13:50 posts that exactly have the ET
13:55 tag now other things here um we have an
13:57 invert filter logic so that um whatever
13:59 logic you build here you can actually
14:01 invert that logic um just by checking
14:04 this
14:05 box so essentially this particular logic
14:07 would now say uh any tag that is not
14:10 equal to whatever I pass view the URL
14:12 right so it's an inversion of this
14:16 logic um and we have used variables
14:18 similar to what we have um in a lot of
14:21 the other Stacks uh within total CMS um
14:24 if you use variables here essentially um
14:28 the tag or the property or the value
14:31 field um whatever you type in here will
14:33 be actually referencing a variable
14:35 instead of the static text okay kind of
14:38 an advanced feature but definitely very
14:40 powerful um if it's something you need
14:43 um where this could be powerful is let's
14:46 say that um we're on a blog post page we
14:50 wanted to create a uh a filter that
14:53 showed or a loop that showed related
14:56 blog posts right and so what you could
14:59 do
15:01 that is we can say
15:04 um let's say we have uh I want to filter
15:07 by author right and I want to show um
15:11 anything that is if I go value then I
15:14 can do let's pretend I'm on a post page
15:16 this is not but I could just do
15:19 post. author here right and then what
15:22 this is going to do it's going to filter
15:24 everything here because post. author is
15:27 referencing the blog post that's on the
15:29 page I set the value to reference a
15:31 variable so we are going to filter
15:34 everything in this list for authors that
15:36 are equal to the author of the blog post
15:39 we're on pretty cool very powerful stuff
15:43 here okay let's look at the sort and
15:45 sort is pretty simple right we have the
15:48 ability you can Define what field you
15:50 want to sort by um you can then set it
15:53 to be reverse sort natural sort natural
15:56 sort is useful if you have numbers
15:58 traditional 1 2 3 4 5 6 7 8 9 10 um if
16:02 you don't use natural sort um you're
16:04 you'll notice that the sort order is
16:06 going to be 1 10 11 12 and then 2 3 4 5
16:10 right so um numbers aren't sorted as you
16:13 would imagine them to um by default um
16:17 so we have a natural sort now if you
16:19 don't need that particular feature don't
16:22 turn on natural sort it is I mean
16:25 minutely more resource intensive um it's
16:28 probably nothing noticeable but it is
16:30 okay so um it's not quite as fast as
16:32 default sort so if you really don't need
16:34 that feature don't turn that on and then
16:36 obviously we have Shuffle now you'll
16:37 notice if you turn on shuffle it removes
16:39 all the settings because we don't need
16:41 to sort by anything it just shuffles the
16:43 properties okay and uh similarly to the
16:46 other ones you can actually use a
16:47 variable here as well um so you can just
16:50 turn on this and then whatever you put
16:52 in here in the property field will be a
16:55 variable as you see in this example um I
16:58 have multiple sorts so first we're
16:59 sorting by date then we are sorting by
17:02 featured now in in this um example here
17:07 you'll notice that I'm featured and then
17:09 I have it set to reverse because by
17:10 default featured actually when you sort
17:12 by featured it puts it at the bottom so
17:14 we want to reverse that so the feature
17:16 goes towards the top and that's just the
17:19 way that how the Sorting function works
17:21 with the data um stored as
17:25 featured also check out the rest of this
17:27 um this Loop post here you'll notice
17:29 that I added some things like this
17:31 conditional so that if if it's featured
17:33 add a little SVG Star and then down here
17:35 I add another little Loop where I Loop
17:37 through all the tags and I add in a
17:39 little label right so kind of an
17:41 interesting implementation
17:43 here oh another thing that we added to
17:45 Loops is uh when nothing is found okay
17:49 so um let's go ahead
17:52 and let's look at this and let's filter
17:54 by um tag equals Joe
17:59 and what we'll notice is since no blog
18:01 posts have tag equal Joe um we then get
18:05 displayed the no blog posts were found
18:07 message now uh that message you can add
18:09 in whatever Stacks you want in there um
18:12 I just have a simple header uh to keep
18:14 it simple but yeah you can add whatever
18:16 you want and then that content will only
18:19 be displayed when um the filtering or
18:21 sorting of the loop actually returns
18:25 zero
18:27 results um lastly uh we have the ability
18:30 to limit okay so um if I want to limit
18:33 by a certain number um we can do that
18:35 right so I want to limit it by three and
18:38 you can also do pages okay and what that
18:40 says is um because let's say I have um
18:44 100 blog posts and I want to limit it by
18:47 10 okay the initial page is going to be
18:49 show 1 through 10 and if I do page two
18:53 that's going to show numbers 11 through
18:56 20 so on and so forth what's cool is you
18:59 can actually pass that data via the URL
19:01 as well let's show you an
19:06 example so we're going to set this back
19:08 to the default of limit by three and uh
19:11 page one let's preview that in the
19:14 browser okay so here we have that inside
19:16 the browser and you'll notice as as we
19:18 set it configured we only display three
19:21 posts right and um if I go ahead and add
19:25 remember we added the the page URL key
19:28 to be a p so I'm going to do p equals
19:31 and I'm going to put the number two here
19:33 so this is going to give me page
19:35 two and we'll notice is that actually
19:37 loads three more posts and this is
19:40 technically post numbers four five and
19:41 six right um so if we were to divvy up
19:44 all of our posts into Pages where
19:46 there's three per page again this is
19:48 page number two so this gives us the
19:51 beginnings of a pagination um obviously
19:54 we're going to build upon this in the
19:55 future um but here's a start where um we
19:59 can actually kind of manually create
20:00 some pagination in our
20:04 Pages now if you don't want the
20:05 pagination feature at all you just
20:07 simply need to turn that off and then
20:09 all this will do is limit right so this
20:11 is going to limit um you know to display
20:14 only a certain number of
20:16 posts okay the last feature that I want
20:18 to show off inside Stacks is um a game
20:22 changer um now in beta 6 if you attended
20:25 that uh that hangout and or watched the
20:27 three-hour long video
20:29 um I I recommend doing that totally
20:31 worth it you're going to learn a lot
20:34 okay um but if we go ahead and let's go
20:36 into
20:37 preview if you remember um
20:41 before um a you can now add um the
20:44 dashboard to a menu super easy it's just
20:46 a macro check out the release notes for
20:48 that um and we're going to go to the uh
20:50 the embedded dashboard here okay oops uh
20:53 we're going to go to actually the
20:55 dashboard link okay and if you remember
20:58 um what I said before is the dashboard
21:03 doesn't work well in preview well that's
21:05 no longer the case now um so you can
21:08 actually go ahead and you have full
21:10 functionality with the dashboard all
21:13 inside of stacks super cool um
21:17 everything works so all the docs work um
21:21 all the collections you can add a new
21:23 collection so you can really manage your
21:25 data here okay so um this is important
21:28 because
21:29 inside of preview it's like its own
21:31 Standalone instance of total CMS it
21:33 doesn't reflect what's on the server um
21:36 so you can go ahead and let's click on
21:38 blog well notice that I do have blog
21:39 posts right um these particular ones
21:42 were created with the factory right so
21:45 if I go ahead and click on that and go
21:46 into well what happened to edit mode
21:49 here oh oops I shouldn't have done
21:52 that let's go back to the link uh go
21:55 into collections go into my blog
22:00 interesting preview kind of was a little
22:02 funky there um it does work let's go in
22:05 the browser so if you probably open it
22:06 in the browser uh go on the link works a
22:09 little bit better in the browser I I
22:11 admit I didn't really play with it much
22:12 in preview directly but if you preview
22:15 in the browser you can see that is
22:16 definitely running inside preview um and
22:20 now we can actually go ahead and play
22:22 around with things so we can go to a
22:24 Blog I can go I can go into the factory
22:27 I can generate object or maybe go into
22:29 the feed I have no objects in the feed
22:31 right so let's go into the
22:33 factory and um let's generate um a few
22:38 objects three is not much let's go ahead
22:40 and create another three okay and if we
22:43 go back to our
22:44 feed we'll see that boom I now have
22:47 created six objects which is cool and um
22:52 if I go back into preview and go to my
22:55 feed my feeds page and preview this
22:59 right we'll notice that in my feeds page
23:01 I actually have data now um prior it was
23:04 empty and that's because I was able to
23:06 go into the dashboard and preview and
23:08 generate these objects with dummy data
23:10 that I can then muck with my layouts and
23:13 play around with things so that um yeah
23:16 we can actually you know build and
23:18 design things with actual data which is
23:21 nice um and having all the data local
23:24 inside of stacks makes preview super
23:27 fast so that's why this is such a
23:32 GameChanger well everybody that is um
23:35 everything we have for beta 7 I hope you
23:37 enjoy it I can't wait to see your
23:39 feedback and what you're building with
23:40 total CMS 3 bye
Search the page
0