我一直在寻找几个小时,但我找不到任何关于此...基本上我想为word 2007创建一个模板或插件,允许有人为CMS创建新页面。我的想法与博客文章模板类似。我知道如何创建基本模板,但我找不到使用Word中的发布按钮发布创建文档的方法。
提前thnx答案 0 :(得分:6)
我理解你想要实现的目标,但 Word是错误的起点。我将从一个更基本的文本编辑器开始。
答案 1 :(得分:5)
词是可怕的,可怕的,可怕的。您的网站将定义清晰的样式,但Word将输出与您网站的CSS定义不匹配的令人讨厌的HTML。
因此,您最好的办法是将Word文件放入网站,并让代码以编程方式对其进行分析并将其转换为网站有效的HTML。在Java中,您可以使用Apache POI,但这仍然非常原始。在以微软为中心的世界中,可能会轻松得多。
在我看来,更好的方法是强迫人们学习Markdown,BBCode或HTML,或者在CMS中使用样式化HTML编辑器 - 剪切并粘贴纯文本,然后使用CMS定义的样式进行样式设置。
答案 2 :(得分:3)
在使用Word 2007时,可以将文档导出为XML,然后使用XSLT生成HTML。
如果您的CMS具有API或导入工具,则可以将Word的输出转换为适合该接口。
您可以编写Word宏来向Word添加发布按钮/菜单选项,以生成正确的输出。
答案 3 :(得分:3)
这不是一个坏主意,因为一切都与最终用户相关。如果Word生成错误的HTML,您应该在将其发布到CMS之前使其语义正确。
我从来没有这样做过,但我确信通过“Word 2007 Addin”-template(假设是Office 2007)可以使用.NET。
祝你好运!答案 4 :(得分:1)
如果将SharePoint 2007用作CMS,则可以执行所需操作。您可以在SharePoint 2007上设置博客并从Word发布到博客。如果您在客户端使用Office 2007,那么您将获得一些漂亮的按钮,如“发布到我的博客”等。
如果您无法使用SharePoint或正在谈论现有的CMS,那么您将遇到很多障碍。这是一项重大任务,而不是你可以从Stack Overflow中得到一个简单的答案。
答案 5 :(得分:1)
您是否考虑过使用免费提供的Javascript WYSIWYG编辑器,例如TinyMCE http://tinymce.moxiecode.com/?配置所有选项后,它具有令人印象深刻的功能,界面与Word非常相似。我意识到这并没有直接回答你的问题,但正如其他人所指出的那样,从Word开始会很困难。
答案 6 :(得分:1)
我一直在为一个自定义CMS系统编写Word插件的团队。它是用VB6编写的,能够获取Word文档并将基本格式信息 - 列表,粗体,斜体甚至表格转换为HTML,并将其上传到服务器。但它没有创建新页面或管理网站中的网站。
根据我的经验,我肯定会避免选择Word作为CMS的编辑器。最大的问题是每次要更新插件时,都必须将其重新分发给使用它的公司或公司。你可以这样做是一个IE active-x控件,但只是通过Javascript编辑器让用户无法使用一组有限的样式选项。
Word确实有一个强大的API来操作你的内容,但我们需要在Word中禁用这么多选项以避免不需要的字体等等,它最终会比Word更像Wordpad。
如果这是一个绿地项目并且你有时间,我会建议在Javascript编辑器上使用Silverlight 4.0。版本4.0内置了richtextbox控件,另外还有优秀的Vectorlight控件。
答案 7 :(得分:1)
可能会帮助您,umbraco CMS允许使用Microsoft Word进行编辑。
答案 8 :(得分:0)
出于某种原因,这是Excel喜欢但不是Word的功能。 保存时,Excel可以自动发布文档的HTML文件版本 不幸的是,Word似乎只能在使用Sharepoint时实现此功能,这是一种耻辱,因为它非常有用。
除了创建自己的加载项之外,您可以做的是在模板中添加一些代码,以便在用户保存文档时创建文档的HTML副本。
.dotm
文件)。project
列表中双击您的文档以打开其代码隐藏文件。向其中添加以下代码,将ActiveDocument.SaveAs
路径修改为更适合您的路径,例如您的CMS公开CMS的共享网络文件夹。
Sub FileSave()
' First Save the main document
ActiveDocument.Save
' Now we create a new document based on the current one
Selection.WholeStory
Selection.Copy
Documents.Add
Selection.PasteAndFormat wdPasteDefault
' Save it as HTML and close it
ActiveDocument.SaveAs "c:\temp\mydoc.html", fileformat:=wdFormatHTML
ActiveDocument.Close
End Sub
这会将原始文件复制到一个空白的新文件中,该文件将保存为HTML并在返回原始文件之前关闭。
如果您要使用与Documents.Add
不同的模板,则可以检查normal
的部分选项。
安全强>
因为此模板包含宏,所以您必须将其与Word期望的其他模板一起安装 如果不这样做,那么您将收到安全警告 为避免错误,您可以将模板所在的路径添加到Word的选项>下的受信任位置列表中。信托中心>信任中心设置>受信任的地点。