How can develop module in Sitecore? - sitecore

I have started Sitecore learning few months ago.That time first question come in my mind is that how can I develop module? but can not able to find documentation. Can anybody provide me documentation how can I develop custom module?

If you mean you would like to create a module for the Sitecore marketplace, as others have done, then the process is fairly simple.
Write your code (ASCX, ASPX, CS, JS, etc.)
Create your Sitecore items (Layouts, renderings/sublayouts, custom buttons, etc.)
Create your configuration files (if necessary) for the App_Config\Include folder.
Build your solution and test it in a Sitecore instance locally.
Package the published files and item together using the Sitecore packaging utility.
Contribute your module on the marketplace and upload the package for review.
What you are hoping to achieve here is that another person could grab your package, install it on their system, and be able to use it without needing to recompile your source code.

If you want to develop a module, come up with the idea and then build it.
You can then submit it to the Sitecore a Marketplace under the contribute section.
https://marketplace.sitecore.net/Contribute.aspx?sc_lang=en
Typically you'll submit a package to this section and documentation on how to setup and use the module.
Sitecore will then test the module and inform you whether it is suitable for the marketplace. Your module will then be published on the marketplace ready for others to download.
When developing your module you should consider compatibility with Sitecore versions, and you should also test it thoroughly.
Here's some more info on best practices when building modules:
https://kb.sitecore.net/articles/831724

Related

Change Redmine Source code - Plugin or Migration

I would like to generate new pages in Redmine, with new Controllers, views and models. I would like to know if the only way to do this is by writing my own plugins?
There may be times where I will have to use a Jquery dialog. Does this also require to code a custom plugin.
Generally, you can change Redmine in one of two ways:
You can develop a plugin which can extend or overwrite functionality in Redmine core.
You can patch Redmine itself and add any changes directly to the Redmine codebase.
Generally, the first approach of developing a plugin should be preferred. This is because it allows you to update Redmine later with minimal issues. If you change the Redmine codebase itself, it becomes very hard to update it later while keeping your changes and ensuring they still work.
There is a huge amount of existing Redmine plugins (of varying quality). Generally, it is a good idea to search a bit for related plugins and read their source code to get a feeling how plugins work.

TeamCity integration with Sitecore CMS

Is there any out-of-the-box feature available to integrate Sitecore CMS with TeamCity? I checked the list of runners available, but I don't seem to find any.
My customer has a ASP.NET project and uses Sitecore CMS for the website. I am trying to build a pipe to automatically trigger a build at a certain time of the week and deploy to Sitecore. Any help is appreciated.
Deploying Sitecore is much like deploying any standard .NET web application, except for the content.
I've written a blog post on automating your deployments with TeamCity and Team Development for Sitecore (TDS). You can ignore the TDS-specific information if you are looking just to push the code. However, if you plan on deploying content items immediately, TDS is helpful for that.
There is also a post by Jason Bert that covers using OctoDeploy with TeamCity and TDS for continuous deployment.
You may want to just start by setting up a standard .NET MSBuild step and then deploying the build of the code out to your site. That will get you started and then you can begin to tweak from there and choose which other tools will fit your needs.

Deploying a Firebreath plugin on a webpage without manual installation

Recently I have been experimenting with Firebreath and developed a plugin in order to showcase my c++ projects on my portfolio website. I would like to make it easy for users to look at the projects without downloading files if they are new on my website.
The only issue I have at this point is that when users visit my page, they will receive a message indicating the plugin is missing. I would like to have an option for the users to automatically install my plugin without having to manually download and run it.
The plugin is mainly targetted at Windows users, since the applications are as well. I intend to support Google Chrome, Firefox, Internet Explorer. Currently I am using a MSI installer to install the plugin.
I have found a question similar to this, but I still needed to save the MSI installer and run it.
My question is: What would be the best way to implement this?
There isn't any way to "automatically" do what you want to do. The closest that I have heard of would be to use a java applet that would download and install the plugin for them. This can be pretty reliable on Mac but far less reliable on windows (for a number of reasons, among which the fact that many windows users don't have java installed and that Chrome blocks java applets by default without intervention by the user).
Other options include:
Creating a CAB file installer (only works on IE)
Creating a XPI firefox extension that packages the plugin (requires restarting the browser, only works on firefox)
Creating a CRX chrome extension that packages the plugin (only works on Chrome)
Microsoft ClickOnce used to work pretty well for one click installs of MSI files from a web page, but recently I think it doesn't work on many (if any) browsers; haven't seen it used in awhile, anyway.
There is no "automatic" way to install plugins; that would be considered a severe security issue. This is probably the #1 reason that plugins are as uncommon as they are.
do what adobe does,
create a tiny activeX application downloader, sign the activeX from with cheap SSL
when a user, enters your site, he will automatically be downloading this tiny ActiveX, after installation complete, inside the tiny ActiveX, have some type of batch script to download the EXE from remote server and silently install it.
adobe does this, on every reboot in boot.ini or startups
very easy

Intranet opensource in Django?

I'm looking for some open source, free to change and use Intranet written on Python+Django.
Just want to find some foundation to build site on top of it.
If you're looking for a prebuilt site, have a look at Django-CMS, a Content Management System. If what you need is very simple, and you have a large amount of trust in your Users, you can probably get away using the admin contrib package that comes with Django.
For deployment, you're looking at setting up an Apache web server on an internal server somewhere, installing mod_wsgi, and deploying that way. There are many tutorials on how to do this.
Can you please what are features that are needed on your intranet. As Josh suggested, the Django-CMS will do good in most of the cases.

What steps do I take to integrate an (outdated) but working django application into my project?

I would like to integrate an existing application someone has on github into my site. What steps do I need to take to integrate it?
Would most people just download this entire thing and throw it inside of the project root, add it to the INSTALLED_APPS and modify urls.py? I would imagine there are some extra steps I'd have to take to get it to work.
In addition, since it was written in Jan 09-esque, and I'm using the latest 1.2 release I would probably have to modify and add some form csrf checking?
There are no generic instructions for integrating existing application into your django project because every application is different.
Generally most of the popular apps provide README/INSTALL docs which guides you through installation and How to use app. An app without documentation & tests is risky to use unless you are ready to own it and take pain of going through source code and figuring it out.
Also I don't think the application you posted above can be integrated into your project without modifying the code. It's a project by itself and can be used in standalone mode. (Well that's what I think after looking at source code)