- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Concrete5 是否有类似于 Drupal 的 CCK 和 Views 的东西?如何在 Concrete5 中创建新的自定义内容类型(如目录或产品)?
最佳答案
Concrete5 更侧重于页面而不是数据(因为它的重点是易于编辑,并且大多数人的网站心理模型是一堆页面,而不是基于输入变量等动态填充内容的单个模板。等等。)。
因此,您将每个页面视为“记录”。 Concrete5 有“页面类型”的概念,通常等同于“主题模板”,但也起到通过属性定义一组数据的作用。
所以...您为数据类型(假设是产品)创建页面类型,并为产品元数据(名称、价格等)创建自定义属性。然后要将产品添加到系统,您只需添加一个新页面并选择“产品”页面类型。此页面既用作该产品的“查看”页面,也用作其数据的 anchor (在创建或编辑页面时在“属性”对话框中)。现在,您不再使用“查看”查询来显示数据列表,而是使用“页面列表”块并告诉它只显示“产品”页面类型的页面。要自定义页面列表的输出,您可以为它创建一个自定义模板——除其他外,您可以在其中输出页面的自定义属性(名称、价格等)——通过调用:echo $ cobj->getCollectionAttributeValue('myattributename');)
尽管如此,有一个插件可用(虽然它不是免费的),它更像 CCK/Views:http://www.concrete5.org/marketplace/addons/data-display/
当然,如果这实际上是用于产品目录,您可能想要使用电子商务插件(也不是免费的,但在为向您付款的客户构建网站时非常值得)——抱歉,由于 StackOverflow,无法发布链接垃圾邮件过滤器,但在crete5 市场中很容易找到。
如果您有一个非常复杂和广泛的数据库要显示在网站上,那么 Concrete5 可能不是完成这项工作的最佳工具。但是对于更简单的以内容为中心的站点(例如,艺术家作品集、唱片公司、几十人以下的员工列表),我发现它比更多以数据库为中心的 CMS(例如 Drupal)更容易设置和维护(特别是如果交给非技术客户来管理)。
关于drupal - Concrete5 是否有类似于 Drupal 的 CCK 和 Views 的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4085382/
我有一个非常简单的类,如下所示: abstract class Person { private $id; private $createdOn; // ... More pr
我需要在扩展AbstractClass的每个ConcreteClass中定义常量值。由于某种原因,对象最终会具有重复的字段,一组字段等于零,下一组字段具有正确的值。 某些接口(interface) p
在阅读 this article 中的工厂时,我遇到了这两个术语 AbstractFactory 和 ConcreteFactory。 在阅读 StackOverflow 时,我发现了一些很好的答案(
public class GenericClass { class MyClass { } public GenericClass(final T[] param) {
我在同一代码中遇到了另一个问题......我收到此错误: initialization method -initWithCharactersNoCopy:length:freeWhenDone: ca
我在研究 concolic testing 的概念时遇到了术语“具体和符号执行” . (那里提到的文章“CUTE:C 的混合单元测试引擎”在其摘要部分使用了该术语。) "The approach us
我在运行 Streaming API 时遇到了 tweepy 问题,但我的问题不仅仅与 tweepy 直接相关。 我遇到了多个异常,我认为我可以暂时“捕获/通过”,作为临时解决方案,直到找出问题所在。
我想将表单结果写入另一个数据库。 在 Concrete 5.6 中,您可以即时切换到另一个数据库。我无法找出它在 Concrete 5.7 中的工作原理。 5.6 方式 $db = Loader::d
我该怎么做才能防止编译器抛出以下警告 Missing concrete implementation of setter 'MyClass.field' and getter 'MyClass.fie
我们是 Glass mapper 的新手,想在我们的 Sitecore 项目中使用它。在查看教程时,我们注意到没有关于如何设置 Sitecore 允许的深度继承的深入示例。浏览网页时,我们注意到有人将
在自定义 Concrete5 代码 (5.7+) 中执行服务器端重定向的正确方法是什么? 最佳答案 我发现这是最好的方法: (new RedirectResponse('/URL-HERE'))->s
我正在开发一个建筑项目的库存控制系统。保管人负责添加新库存并将其分配给员工或从员工退还。这些项目(以及它们的属性)将有很大的不同。例如钢铁制品,服装,工厂/机械,工具等 我的问题是要使用Class/C
我有类Bar(可能还有许多其他类),它扩展了抽象类AbstractFoo。将 Bar 实例转换为 FooDTO 时,会检测具体类。 但是,当将 Bar 实例集合转换为 FooDTO 列表时,具体的类信
我有一个接口(interface)和一个定义如下的类 public interface IShape { } public class Square : IShape { } 我知道我可以在结构图中为
我正在this中学习工厂模式关联。在编写了一个普通的工厂之后,作者继续设计一个工厂,我们不必修改工厂的代码来添加新的具体实现。 (假设有一个 Product 接口(interface),工厂提供它的实
我有一个“提供者工厂”,它创建具体提供者的实现。要创建正确的实现,除其他参数外,它还需要 typeId。问题是为了将正确的 typeId 传递给工厂,我需要验证并在必要时更改它。为了做到这一点,除其他
在使用模型继承时,我试图找到 django 模型对象的实际类。 一些描述问题的代码: class Base(models.model): def basemethod(self):
我使用 vim 并尝试使用“Vundle”。它有助于像在 Ruby on Rails 中一样安装插件: Bundle 'scrooloose/nerdtree' Bundle 'scrooloose/
我对使用具体类和接口(interface)的影响有一些疑问。 说一些代码块(称之为chunkCode)使用具体类A。如果出现以下情况,我是否必须重新编译 chunkCode: 我向 A 添加了一些新的
所以我遇到了一个问题,我正在尝试实现父级的父级的具体版本,如下所示。 public abstract class Collection { ... } public abstract class
我是一名优秀的程序员,十分优秀!