How does pre-made templates work in a web app - templates

Please I need an enlightenment, wanna know how premade templates work in a web app, for instance I could go to optinmonster or survey monkey choose a template and perhaps modify it then use it... how does it work? how was the template created in the first place and how is it reusable? (Many Thanks)
I tried looking for resources as to how this works, but couldn't find any, pre-made templates is quite a trend, I want to use it in my app, but I don't even have a tiny bit idea of how I can achieve this!

Related

scroll websites with django

I'm currently working on a simple scroll website with nothing really difficult (I could almost use plain html/css/javascript but it's a bit of practicing and I will maybe add a blog). And as it is simple I was wondering how to do it properly with Django.
So here is my question, I have a homepage template that is actually the website and I don't really get how I split my different part in different apps.
For exemple I have a contact form, do I need to split it in another app and then include it in the basic template ? I want to add a galery with image in a database, do I create an app for that ?
And the other question that goes along is how do I code an app that is not returning httpresponse but just html to put it in another template and do I still need views ? I would like to do a bit like a standard form in django where you do :
form.as_p or form.as_table
so maybe:
galery.as_slideshow
So my questions are quite novice and open but someone could give me some reading to get going, I would be really happy !
This is a question a lot of people struggle with and it seems like there are a lot of varying opinions out there.
I've found that the best way to really determine the appropriate answer for each case is to really distill the feature into individual requirements and group them by feature sets while keeping an eye out for additional uses outside of the project actively being worked on.
There is nothing which says you can't build your project to include a single app containing all of the modules you would need. Doing so seems like it would make your development easier initially right? So, the question to ask then is "What if I want to reuse (insert feature set here) in another unrelated project a year from now after I've already forgotten about the weird stuff I did to make it work originally?". Asking yourself that question forces you to think about your features in a much broader context and I think 99% of the time you will realize that a "Contact Form" requirement can actually become quite complex and really should be split up into at least one separate app (i.e. User Creation, Profile Management, Email Subscription, etc...)
Here is a link to a video about this very topic which I found to be useful in figuring out my way through this question:
https://www.youtube.com/watch?v=A-S0tqpPga4
I know this is not really a hard-line answer to your question but I hope it helps point you in the right direction.

Use django-contrib-comments (the app) in new Django projects?

From the documentation: "Django’s comment framework has been deprecated and is no longer supported. Most users will be better served with a custom solution, or a hosted product like Disqus. The code formerly known as django.contrib.comments is still available in an external repository."
Is the move to django-contrib-comments only a fallback for existing projects that use django.contrib.comments? Should I use django-contrib-comments in new projects and why (not)?
I have been developing comments for our site using django.contrib.comments and found it to be quite a simple module and nothing else. If you are building a "just" commenting app to engage people, disqus might be a nice option. For instance, if you are building something like what stackoverflow is doing, you need to do by yourself.
For that, you can pretty well use django.contrib.comments and built your rest of the code on the top of it. I have been doing this and the following are points I would like to note
Very good chance that you are going to write all Views again for Ajax support or any other custom support
The app does not authenticate users. So, you might need to tweak this too
Add some special fields in comments, remove some provided
You might want to provide users to delete comments.. The built-in delete is just a flag where its marked "deleted" but not deleted exactly..
Regarding administration of commments, there might be lot you are going to improve.
It goes on, when you start doing it, you continue to tweak almost everything and make fit for your site. Probably if your tweaks seems to look too huge, I guess, start from scratch or take only parts of that django.contrib.comments where ever needed..
The Google Groups Django developers has the proposal:
"... if you don't really care much about how comments work but just want something easy, then Disqus (and its competitors) are easier to use and have much better features (spam prevents, moderation, etc.). If you want something complex and specific, on the other hand, you're better off writing something from scratch."
And the django-contrib-comments (the new home) is intended as a boneyard.

Can I use my own website template on ExpressionEngine / ModX?

I'm new to ExpressionEngine and ModX, well I've barely started reading up on it and I need some encouragement before I dig dipper into learning either of them.
I've know they're both CMS utilities which allow you to create websites and manage them as wordpress would but I'd like to know if instead of building it completely from the ground up, if one can simply use a template, like one of those free HTML templates or a premium template and use one of those two CMS utilities to manage/update the content of the site.
I've looked around for some tutorials but the ones I've found only teach how to create a site from the ground up and I don't mind reading and learning as long as someone can tell me if it's possible to do what I mentioned before.
Thanks.
Yes, you can with MODx. You can use any HTML, css, javascript you want, no restrictions.
I don't know about ExpressEngine.
Yes you can use whatever HTML you like with ExpressionEngine, whether it's code you write yourself or whether it comes from a template.

Beginning Joomla Development - Templates and Modules?

I am planning to begin my Joomla development adventures, so I have been digging up some resources on Joomla beginner such as:
Joomla 2.5 Beginner Guide
I think I have grasped the fundamental concept, though I have a doubt that if anyone doesn't mind clearing up for me.
If I have my own template ( I am planning to use my own Twitter Bootstrap template ), and I am planning to convert it to Joomla, and inside that template there are already samples for some modules such as front page slider, testimonials, partner links, etc, from what I understood these have to go as modules, since Joomla allows one component, and many modules in a page (hence a index page might have Welcome message as component, and sliding banner, testimonials as modules).
So my question is do I have to write these testimonials, page slider modules on my own? Since I already have the samples (css and html) and I know how they will be positioned. Wouldn't it be a bit of overkill to write modules for each? What if at later stage I am making another website, and I have another template?
Also, from examples I have seen, Joomla template have only one html template (index.php) which defines all the positions. If I want to define two possible layout for one template, is that possible? Or it has to go in different templates, and I assign them separately in my Template Manager.
Ok firstly, as for the Joomla version, you have 2 choices.
Joomla 2.5 as it's the recommended long term version.
Joomla 3.0, the new short term release which is completely based on Bootstrap, therefore it might be easier to adapt it to make it look like your template.
usually I would recommend Joomla 2.5 but in your case I think Joomla 3.0 might be the best way to go.
As for the modules, you don't necessarily have to write them yourself. You can download all these sort of things from the Joomla Extensions Directory. If you are worried about positioning of modules, then simply ensure that the template has the module positions in the correct place. Using the Joomla 3.0 template and adapting it to look like your template will be much easier when it comes to modules, as it already has a lot or pre-defined positions. If you feel the need to add more, you can do so. See links below:
Adding you own module positions in Joomla 1.5/2.5
Adding you own module positions in Joomla 3.0
I hope this helps you a little bit on your Joomla adventure and good luck.
Almost forgot, please also make sure you keep your Joomla version up to date unlike a lot of the people that post questions on here :) I posted an answer as to why it's important here
You absolutely right about Joomla allowing 1 component and many modules! Your also fine to convert your template into a Joomla template. Although note as Joomla 3.0 uses bootstrap (but is still very new and having many new features added to it - even though its technically stable) and thus it might be easier for you to use that. You can easily include bootstrap etc through that framework as well. Link here for how to do that
See the link here about module and module positions in templates. Whilst the numbers at the top say this is for 1.0,1.5 and 2.5. The bit under the 2.5 header also applies to Joomla 3.0!
In terms of different layouts for the template generally its good practice to have two separate templates if the layout changes are significant. However if the layouts differences are small, there is nothing wrong with adding in a Form Field and creating two template styles in the backend and just choosing the layout with a form field for each style!
If you want to use your customized modules I'm afraid yes you do have to do this. However there are module and component writers out there which can make the basics up for you so you can almost copy and paste your code straight into one file (with a few changes here and there). You can also use the Joomla Extension directory though - you may even find something you like more!
In terms of using the modules/components on another site this is actually much easier. Once created you can just go into the Joomla backend and install your extension again and tweak it how you want after that with either FormFields or in template overrides!
Any more questions feel free to ask!

Beginner: Do I have to use templates when implementing my own designs using CMS such as Joomla?

Brand new to CMS:
With Joomla or other CMS, If I want to use my own design, do I have to make it a template first using proprietary code of some sort = ie using some Joomla templating language - or is using my own design with Joomla simple and independent?
I am not sure the role "templates" play with Joomla and other CMS. I gather they can be used as a complete "pre-made" design where you just tweak it, but are they necessary as a base of some sort to using my own designs? I am proficient with HTML and CSS. I also have been playing around with various Jquery Plugin's for my UI.
Ideally I would like to create any design I can think of with any layout I create and use CMS simply for its database and plugins etc such as a blog or calender back end. I might use it for more features as I learn about them. Do I need to use a "template" or create a "template" to do this?
Thanks!
{edit}
You have to create a template (or change an existing one), how else will the CMS know where to add the information into as the template is a HTML, CSS and Javascript Page group devoid of information and some HTML Tags replaced with CMS Specific tags, which tells the CMS where to add the information. It also include certain files telling the CMS the Name, and othe information of the template.
The First step in creating a template is to have a design.
Do your design in HTML and CSS. (Preferably using the CMS Template folder/directory structure.)
For Joomla use the information in this post: How should I go about writing a Joomla! template?
In Joomla jQuery have to be used in compatibility mode.
The CMS will supply the information, you supply the design and tell the CMS
{/edit}
The Template is the design container, whether you create one from scratch or reuse a current template. I initially used one of the pre-installed templates (together with the documentation) to learn some of the complexities of designing the template. (ex. structure, and what is possible.)
Please also look at my answer to this question How should I go about writing a Joomla! template? as it is a pretty good beginners guideline for template designers in Joomla (Even if I have to say it myself) with a couple of other resources linked in as well.
A Joomla template is nothing but HTML layout stylised using CSS. So to create your own templates you need a good grasp on HTML and CSS.
Joomla, by default provides a couple of templates to start with.
If you are just beginning, creating your own template is not where you want to start...learn more about setting up Joomla. You have enough problems there :)
Joomla! 1.5: A User's Guide is a great beginner book. It takes you through learning Joomla, what templates are, how to make them, and even walks you through setting up WAMP so you can experiment on your local machine.
The templates only affect the styling of your site. If you are starting out, I would work on getting your content in place first and wait on templates until later on.
My experience has been revamping my two websites to use WordPress, then moving to ModX, then moving back to HTML. I believe that you don't need a template but it will make some things easier as it bundles a lot of stuff you'd otherwise have to do manually. --At least for WordPress. I'm not even sure we found a good ModX template but adapted [poorly] a WordPress one. ModX is a good but little known CMS.
With one of my sites I found that it was impossible for WordPress to handle the images, thus I began working with a plug-in developer to create a custom plug-in. He took about a year and it still wasn't useable. Also I hired some consultants along the way. Their biggest contribution was "to complexify things" so I couldn't make any changes myself without going back to them & paying hundreds of $ to change a phone # for example.
I chucked all that and redid everything in HTML5 with Javascript, css and a little php. People here on S.Overflow actually helped me with the coding. I have a 3rd simple site that I may go back to WordPress for but only to use some particular functions which might be a pain to program otherwise.
Here is one of my 2 HTML sites:
coinsandhistory.com