0

在一个典型的 WordPress 项目中,我猜有 3 方。第 1 方是提供 psd/pdf 或 html 的图形设计师,第 2 方(开发人员)可能会使用一些自定义帖子创建主题,因此第 3 方(客户端和内容编辑器)可以更新网站而不会弄乱设计和不了解 HTML、JavaScript、Gimp 或 PHP。

这将与网站的主题或 php 页面中的特定页面联系起来,如果需要进行一些小的设计更改,则需要通过编辑 php 文件来完成。

我在考虑以下主题设计:

(假设只有内容的网站没有复杂的销售统计等)

而不是“编程” page.php 以适应图形设计并引入特定(自定义)帖子和其他数据,我会让 page.php 引入子内容。这样图形设计师无需编程即可创建页面。

当需要提供图像时,wordpress 可以针对不同的屏幕尺寸进行预缩放/裁剪。

整个页面应该由设计者从编辑器而不是编辑器/客户端而不是在 page.php 中创建:

<html {{lang}}>
  <title>{{title}}</title>
...
{{main-slider}}

JS 和 css 通过自定义字段添加,因此可以合并到一个文件中。

主滑块帖子如下所示:

<div id="main-slider">{{main-slider-content}}</div>

可以提供 JS 和 css 来推翻页面 css 或 js 并将合并到一个文件中。

编辑可以通过程序员提供的自定义帖子提供的main-slider-content内容,该帖子将一直握住编辑的手并确保一切顺利。

其中一些字段可以使用页面的自定义字段值进行设置(如果缺少则恢复为默认值),有些字段将被帖子覆盖(如语言或标题)。

将由该主题生成的网站类型供想要一些网络存在的小企业主使用。

我对设计有一些疑问,希望对 wordpress 有更多经验的人能对此有所了解。

  1. 当编辑器/客户端编辑自定义帖子(例如某些滑块内容)时,他们无法预览该项目,因为该内容基本上用于每个页面。即使我找到了一种方法来列出使用滑块的页面并显示该页面,它在发布之前不会显示新内容。预览页面似乎实现起来有点复杂。

  2. 生成页面需要更长的时间,因为在解析内容后需要从数据库中获取内容和子内容。我之前曾尝试使用 DOMDocument 来执行此操作并使用过,<div data-custom-content="main-slider"></div>但这太慢了,所以我将尝试使用正则表达式。

  3. 因为内容不会发生太大变化,我认为 APC 可能会在第一次请求后缓存页面并从那里提供服务。仅在更新某些内容时才删除缓存。在 VPS 上,当站点长时间处于非活动状态(这很常见)时,缓存可能(可能会)被丢弃。这意味着当人们尝试查看页面时,请求需要很长时间来处理。

任何对此有经验或有用提示的人

[更新]

我看到特定的设计和 html 模板仍然会相互依赖。我现在正在考虑尝试 Twig。好处是可重用的组件是可以添加到项目中的类,并且完整的内容在 wordpress 编辑器中控制,没有编程经验的人仍然可以管理内容。

但是,当页面中所需的数据要更改时,将需要程序员。

4

1 回答 1

0

这就是高级自定义字段灵活内容系统所做的事情,您为示例设置样式的方式看起来很像 Smarty,这是一个曾经非常流行的模板系统,并且仍然被一些系统(如 Prestashop)使用。

以我的经验,这种消除中间人的想法是行不通的。您要么需要一个非常广泛(因此臃肿)的初始主题系统来适应不同的项目,要么您需要一个开发人员稍后将自定义的基本主题系统 - 在这种情况下,您可以实现的最佳效果是将开发人员的角色转移到不同的阶段的项目。

总的来说,我认为这种想法的最佳范围是让设计师学习更多的代码。

于 2013-10-16T15:51:00.870 回答