Wiki source code of Attachments
Version 17.1 by Caleb James DeLisle on 2011/04/11
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
2 | {{toc/}} | ||
3 | {{/box}} | ||
4 | |||
5 | A page can contain attachments which can then later be referenced from within a page. For example this is very useful for attaching images and displaying them in the page's content. | ||
6 | |||
7 | = Attaching a file = | ||
8 | |||
9 | There are 3 possibilities to attach a file: | ||
10 | |||
11 | == Using the top level menu == | ||
12 | |||
13 | Starting with XWiki 2.6, you can add an attachment using the new Add menu: | ||
14 | |||
15 | [[image:AddAttachmentsColibri.png]] | ||
16 | //Screenshot of the Colibri skin// | ||
17 | |||
18 | [[image:ViewAttachmentsColibri.png]] | ||
19 | //Screenshot of the Colibri skin// | ||
20 | |||
21 | View the page on which you wish to attach a file and then select the "View > Attachments" option in the top level menu: | ||
22 | |||
23 | [[image:ViewAttachments.png]] | ||
24 | //Screenshot of the Toucan Skin// | ||
25 | |||
26 | You'll see a list of the current attachments and a possibility to upload more files: | ||
27 | |||
28 | [[image:AttachmentBottomToucan.PNG]] | ||
29 | //Screenshot of the Toucan Skin// | ||
30 | |||
31 | == Using the attachment panel at the bottom of the page == | ||
32 | |||
33 | View the page on which you wish to attach a file and then click on "Attachments" at the bottom of the page. | ||
34 | |||
35 | image:AttachmentBottomToucan.PNG | ||
36 | //Screenshot of the Toucan Skin// | ||
37 | |||
38 | image:AttachmentBottomColibri.PNG | ||
39 | //Screenshot of the Colibri Skin// | ||
40 | |||
41 | == Using the WYSIWYG editor == | ||
42 | |||
43 | Edit the page on which you wish to attach a file using the WYSIWYG editor and click on "Link > Attached file..." in the toolbar. You can also click on "Image > Insert image" and you'll get a similar popup window as shown below: | ||
44 | |||
45 | image:AttachmentWysiwygToucan.PNG | ||
46 | |||
47 | Note that you can create a link to the attachment/image directly in that same popup window. | ||
48 | |||
49 | = Linking to an attached file/image = | ||
50 | |||
51 | If you're using the Wiki editor, you can use the [[Wiki Syntax>>platform:Main.XWikiSyntax]] to display an image inline or link to an attachment. | ||
52 | |||
53 | If you're using the WYSIWYG editor, then use the "Link > Attached file..." or "Image > Insert image" buttons as shown above. | ||
54 | |||
55 | = Linking to an external file/image = | ||
56 | |||
57 | If your file is on a remote server and you wish to link to it from your wiki, simply use the URL of the link as the content of your wiki link. For example, using the wiki editor you'd write: | ||
58 | |||
59 | * **XWiki Syntax 1.0**: {{code language="none"}}[http://some_remote_server/path/to/file>text to display]{{/code}} | ||
60 | * **XWiki Syntax 2.0**: {{code language="none"}}[[text to display>>http://some_remote_server/path/to/file]]{{/code}} | ||
61 | |||
62 | For displaying an image located on a remote server, use the following HTML code snippet: | ||
63 | |||
64 | * **XWiki Syntax 1.0**: {{code language="xml"}}<img src="http://some_remote_server/path/to/image"/>{{/code}} | ||
65 | * **XWiki Syntax 2.0**: {{code language="none"}}image:http://some_remote_server/path/to/image{{/code}} | ||
66 | |||
67 | See the [[XWiki Syntax Guide>>platform:Main.XWikiSyntax]] for more details. | ||
68 | |||
69 | = Attachment Storage = | ||
70 | XWiki offers plugin attachment storage mechanisms so you can store your attachments in the database or directly in the filesystem. | ||
71 | |||
72 | No matter what type of attachment store you use, the meta-data for the attachment will be saved in the [[xwikiattachment>>platform:DevGuide.DsXWikiAttachment]] table for faster loads. | ||
73 | |||
74 | == Database Attachment Store (Default) == | ||
75 | This attachment storage mechanism stores your attachments in database entries in the [[xwikiattachment_content>>platform:DevGuide.DsXWikiAttachmentContent]], [[xwikiattachment_archive>>platform:DevGuide.XWikiAttachmentArchive]], and [[xwikiattrecyclebin>>platform:DevGuide.DsXwikiRecycleBin]] tables. This system allows for easy backup of your attachments by dumping the database and keeps all of your data together but attachment size is memory constrained since the attachment content and archive must all be held in memory. As a general rule, attachments larger than 30MB are not possible. | ||
76 | |||
77 | == Filesystem Attachment Store (Since XWiki Enterprise 3.0M2) == | ||
78 | |||
79 | {{warning}} | ||
80 | The Filesystem Attachment Store is still in beta, it has passed all of our tests with flying colors but we need your help to make absolutely sure that everything is right before turning it on by default. | ||
81 | {{/warning}} | ||
82 | |||
83 | The Filesystem attachment store saves your attachments in files in a directory tree, this means you will have one more thing to do when you back up your data but it also means you can save larger (over one gigabyte) files. Filesystem attachment store implements a two stage commit mechanism to maintain integrity even if the database fails to commit the attachment meta-data. | ||
84 | |||
85 | === Directory Structure === | ||
86 | |||
87 | [[image:FilesystemAttachmentStoreDirtree.png||height=300px]] | ||
88 | |||
89 | The Filesystem Attachment Store puts your attachments into a directory tree on the hard disk, the directory structure is designed to be intuitive to navigate but you should **never add or remove anything**. Each attachment is accompanied by a piece of meta-data in the database and modifying the content in the filesystem store manually will lead to meta-data with no content or content with no meta-data. | ||
90 | |||
91 | === New users === | ||
92 | If you are a new XWiki user, all you need to do for enabling Filesystem Attachment Store is to change some settings in the [[xwiki.cfg file>>platform:AdminGuide.Configuration#HSamplexwiki.cfg]]. | ||
93 | These settings should read as follows: | ||
94 | |||
95 | {{code language="none"}} | ||
96 | xwiki.store.attachment.hint = file | ||
97 | xwiki.store.attachment.versioning.hint = file | ||
98 | xwiki.store.attachment.recyclebin.hint = file | ||
99 | {{/code}} | ||
100 | |||
101 | Also make sure they are not commented out. | ||
102 | |||
103 | === Users who already have a running wiki and want to switch to Filesystem Attachment Store === | ||
104 | If you already have a wiki and want to take advantage of the Filesystem Attachment Store, you should use the [[extensions:Extension.Filesystem Attachment Porter]] to move your existing attachments onto the filesystem. | ||
105 | |||
106 | === Other considerations === | ||
107 | * If you are running a cluster you will need for each node to have a synchronized storage directory, you can use NFS or another means to mount the disk on each node in the cluster. |