Ning Developer Network

Ning Developer Admin

Accessing Your File System

Meta

Source Code Access Required No
Skills Required WebDav, An understanding of file systems
Verified with Versions 3.3.4

You probably know by now about the concept of Ning:  The ability for anyone -- even people who don't consider themselves programmers -- to create a social network easily and effectively. 

But for everyone out there who is comfortable at looking under the proverbial hood and checking out the code that powers your network, you'll be pleasantly surprised about the amount of versatility that people can do with their social networks.  (We sure hope so, anyway.)  This is a basic guide on how file systems work on Ning.

Here's a quick overview:

  • All code is stored on the Ning servers.  While anyone can use WebDAV to access their network, you'll need to request access to the source code of your network in order to edit your PHP source code.
  • You can add or modify CSS and Javascript through some hacks, either via the Tracking Box or through the user interface itself.
  • If you request source code, note that you will not get any automatic code updates to your network on Ning.  You'll need to merge these changes in after each release.
  • We don't use a relational database; we use something called the Ning Content Store instead.  You can read an overview of it here or in more detail here.

Accessing Your File System

You can edit the contents in your social network directory two ways: WebDav.  You'll still be able to view and modify particular files on your network even if you haven't specifically , including CSS and XML configuration files.

You can get access to the files that actually power your social network by requesting your source code.  Because the process to decentralize a network is by hand, it might take a couple of days or so.   Once your network is successfully decentralized, you'll have access to the directories where the PHP lies to actually store your social network.  Because of the possibility that any changes you make to your code may introduce conflicts with network source code upgrades, you will no longer automatically receive bug fixes or new features.  That said, we have a beta Merge tool that will merge the newest version of Ning's social network code to your code, and an RSS feed that will always have our newest versions of our source code if you wish to do it manually.

  • WebDav

    Usage Instructions

    WebDav (aka Davitron) is the new cutting edge way to access your file system. It mounts your social network as a shared drive right on your computer! It's still in beta, but for many purposes, such as merging your code, it's the best way to go.

    Here are some important things to know about WebDav on Ning

    • This is the fastest way to move either large files or a great number of files between your computer and your social network's file system on Ning.
    • We'd recommend that you copy files to your local computer, edit them locally, and upload them for best performance and to prevent any file locking issues.

Getting to Know Your File System

We won't detail every single file here, but here's a table of important files once you WebDav in your file directories.  Note that if you already have access to your source code, you'll have some additional directories available for you:

Pathname Only available on networks running their own source code Notes
/custom*.css
No
This is automatically generated and numbered when you use the user interface. (Multiple numbered versions exist to get around caching issues.)
/theme*.css
No
This is automatically generated and numbered when you use the user interface.  (Multiple numbered versions exist to get around caching issues.)
/instances/[activity | admin | events | feed | forum | gadgets | groups | html | main | music | notes | page | photo | profiles | video]/widget-configuration.xml
No
The widget-configuration.xml file is an XML file containing different parameters of that particular section of your social network ("widget").  It'll try to create a corresponding tab in your network as well.
/instances/main/pageEnd.php
No
This file is automatically generated if you've already put Javscript in your Tracking code box. 
/xn_private/
No
Contains configurations specific to your social network.
/xn_private/xn_volatile/error.log
No
A standard PHP error and warning log. 
/lib
Yes
Contains important PHP libraries that the social network uses.
/widgets/[activity | admin | events | feed | forum | gadgets | groups | html | main | music | notes | page | photo | profiles | video]/ Yes
The brains behind each particular widget, based loosely on the Model-View-Controller framework, so it contains multiple directories. 
/xn_resources/widgets
Yes
A directory containing resources for various user interfaces to help build your network.  Depending on the widget, it can contain CSS, JS, SWF, JAR files or images. 
/xn_resources/instances
No
Contains XML and images relevant

Any changes you make to anything in these folders will be reverted if you ever return to standard code, available by filling out this form.  Any changes outside of these folders, including data and advanced appearance settings, will not be impacted by returning to standard code.

Now What?

So there you have it - a really basic overview of the files involved that configure and power your social network.   If you already have access to your source code, you may want to create your first Hello World Application to get an idea of how we create our application frameworks, but even if you don't have access there are still plenty of tutorials you can go through to see the various ways of making your network unique.

Last updated by Devin Oct 2.

We're Hiring

We are looking for talented and passionate individuals to join our growing team.

Visit our engineering jobs and see if Ning is right for you.

© 2008   Created by Ning Developer Admin

Badges  |  Report an Issue  |  Privacy  |  Terms of Service