将新图像字段添加到Joomla 1.7 com_内容
我正在尝试对Joomla 1.7的com_内容组件进行一些更改 关于Joomla 1.7的特定主题的文档并不多 也许你能帮我解决这个问题 我想为com_内容中的额外图像创建一个单独的字段,特别是特色视图 在管理员部分,我设法添加了这个字段——只是在html中,然后添加到xml文件中,最后添加到DB中 现在,我正试图在我的自定义html视图中为特色文章显示该记录 我只使用了简单的代码将新图像字段添加到Joomla 1.7 com_内容,joomla,joomla-extensions,joomla1.6,Joomla,Joomla Extensions,Joomla1.6,我正在尝试对Joomla 1.7的com_内容组件进行一些更改 关于Joomla 1.7的特定主题的文档并不多 也许你能帮我解决这个问题 我想为com_内容中的额外图像创建一个单独的字段,特别是特色视图 在管理员部分,我设法添加了这个字段——只是在html中,然后添加到xml文件中,最后添加到DB中 现在,我正试图在我的自定义html视图中为特色文章显示该记录 我只使用了简单的代码echo$this->item->addimage但不幸的是,它没有显示 有什么办法可以做到这一点吗 谢谢 还有一件
echo$this->item->addimage代码>但不幸的是,它没有显示
有什么办法可以做到这一点吗
谢谢
还有一件事,据我所知,组件开发结构,数据库注册等,在Joomla1.7中已经改变了。任何有用的链接都能很好地解释吗?很好。如果你确信你所做的事情的实施是有效的。例如,您添加的字段中的嵌入图像或URL链接存储在数据库中,请查看frontpage文件/components/com\u content/views/featured/tmpl/default\u item.php
您应该将$this->item->addimage变量放在那里,如下所示:
<img src="<?php echo $this->item->addimage; ?>" />
项目->添加图像;?>" />
如果您存储URL链接,或
<img src="image/png;base64,<?php echo $this->item->addimage; ?>" />
项目->添加图像;?>“/>
如果您将图像存储为原始base64编码数据
编辑:
如果你从前端添加文章,这应该可以解决你的问题(如果是后端,请告诉我)
首先在jos_content表中创建一个新列,如下所示:
“addimage”varchar(255)默认为空
然后修改以下文件:
。/com\u content/views/featured/tmpl/default\u image.php[行:29]
29:#
30:#
32:
33:项目->添加图像;?>“alt=”ADDIMAGE“/>
34:
36:#
。/com\u content/models/articles.php[行:160]
160:#$this->getState(
161:#“列表.选择”,
162:“a.id、a.title、a.alias、a.title\u alias、a.introtext、a.addimage”。
163:“a.签出,a.签出时间”。
。/com\u content/models/forms/article.xml[添加某处]
。/com\u content/views/form/tmpl/edit.php[行:82]
82:#
83:#
85:
86:
87:
88:
90:#
com_内容已经不再是在joomla中创建可变内容的方式了,它仍然是自mambo时代以来不灵活的代码。
你应该尝试像K2、Flexicont或我最喜欢的ZOO这样的解决方案。它们很容易学习,你可以用它们做很多很酷的事情。额外的领域?没问题,Joomla 1.7/2.5已经有了一些领域。
破解核心总是不好的。主要是因为你失去了更新路径。Hi Mikey,修改核心com_内容并不是解决这一问题的最佳方法。你有没有考虑过一个插件,可以让你将图像附加到文章中?我已经创建了两个扩展,为1.5版本提供了非常类似的功能,代码主要是transferable到1.7。您愿意尝试将其作为解决方案吗?这样就不会是“核心黑客”了"这意味着将来升级到您的CMS不会破坏您的修改。@udjamaflip谢谢您的回复,但我想现在进行核心更改对我来说是一个正确的选择。如果这是您所担心的,那么它将与您当前的操作方式相同。我不相信核心修改永远是答案。作为udjamaflip said,有一个插件可以做同样的事情-我强烈建议你这样做。当你以后需要升级时(为了安全起见,你会/应该升级!),它会让你省去几个小时的头疼@Hanny-插件名是什么?只是看看,也许我会喜欢这个解决方案:)它根本不是从数据库中获取的。我想我应该在模型中进行更改,但不幸的是,我没有在SELECT中找到正确的位置。如果您在../Models/forms/article.xml中添加了适当的字段条目和数据库中的列,请查看文件../Models/article.php及其函数&getItem。在SQL查询中,select子句中有一个列列表。只需向其中添加一个.addimage,您就可以使用$this->item->addimage。它会出现在特色文章中吗?它在文章中是可用的,我想在功能视图(frontpage)中使用它,好的,那么你的frontpage使用什么视图,或者我使用的功能视图(default_item.php)的完整链接是什么(未路由)。你所说的不路由链接是什么意思?这绝对是一条路要走。当存在完全满足您需要的扩展时,对核心进行黑客攻击是毫无意义的。为了实现您想要的目标,您需要做的更改将是广泛的,并且可能没有K2或Zoo那样能够很好地实现,因为K2或Zoo将图像与开箱即用的文章相关联。